Skip to content
UpVoicedRequest early access

Blog

How to manage feature requests: a process and a template

Feature requests are useful when they describe a problem and land in one place. This guide gives you a request template, a triage routine, the statuses to use and wording for "not now" and "no".

A feature request is a user telling you the product got in their way. Handled well, requests show you which problems matter to which customers. Handled badly, they become a backlog of duplicates that nobody answers, and the people who wrote them stop bothering.

This guide gives you a lightweight process: one place to collect requests, a template that captures the problem, a triage routine, statuses that mean something, and wording for the two hardest answers, “not now” and “no”.

What a good feature request contains

Most requests arrive as a solution: “Add a calendar view.” The solution may be right, but you cannot judge it without the problem behind it. A good request answers four questions:

  1. What were you trying to do? The task, in the person’s own words.
  2. What happened instead? Where the product stopped them, or what they do today as a workaround.
  3. How often does it come up? Daily friction and a once-a-year task deserve different priorities.
  4. Who is affected? Just them, their team, every customer in their industry?

A title in the user’s own words helps the next person with the same problem find it and vote instead of posting again.

A feature request template

Use this as the form behind your “Suggest a feature” button, or paste it into your board’s posting guidelines:

**Title:** [In your words: what do you want to be able to do?]

**What were you trying to do?**
[The task or goal, e.g. "send meeting notes to a client".]

**What happens today?**
[Where the product gets in the way, and any workaround you use.]

**How often does this come up?**
[Every day / every week / a few times a year]

**Who else is affected?**
[Just me / my team / everyone in my role]

Keep it short: each required field is one more thing to fill in before someone can press Send. Developer tools work the same way. GitHub’s issue forms, for example, let a repository define input types, validations, default assignees and default labels for each form,Source [1] so that reports arrive with the details the team asked for.

One place for every request

Requests come in through support tickets, sales calls, emails and in-app forms. If each channel keeps its own list, the same request gets counted five times and answered zero times. Pick one board and route everything to it:

  • Users post and vote directly, on a public board or from a widget inside your product, where they can see existing requests before writing a new one.
  • Support and sales add the request on the customer’s behalf (or add a vote to an existing one), so that customer is told when it moves.
  • Your team posts what it hears in interviews and usage data, marked as such.
The UpVoiced widget open on a fictional customer app, listing Driftwood Notes ideas with their votes.
Requests collected inside the product: the UpVoiced widget open on a fictional customer app, where users vote on existing ideas before posting a new one.

Triage: once per request, on a schedule

Triage is a short, regular pass over new requests. Each request goes through it once:

Flowchart for triaging a new feature request: if it duplicates an existing request, merge it and keep the votes; if the problem is unclear, ask a question; otherwise give it a status: under review, planned or closed with a reason.
A triage routine that every new request goes through once.
  1. Is it already on the board? Merge it into the existing post. Keep the votes and followers of both, so nobody loses their place in line or their notification.
  2. Is the problem clear? If not, ask one question in a comment. “What do you do today instead?” usually gets you there.
  3. Give it a status. Under review if you will consider it, Planned if you have decided to do it, Closed with a reason if you will not.

Thirty minutes a week is enough for most small teams. The goal is that no request waits more than a week for its first status.

Statuses that mean something

A status is a promise to everyone following the request. Use a small set and define each one:

Status Means Tell followers?
Open Received, not yet reviewed No
Under review We are considering it Yes
Planned We have decided to build it Yes
In progress Someone is building it Yes
Shipped It is live Yes, with a link
Closed We will not build it, and here is why Yes, with the reason

Avoid statuses like “Maybe later” that never change. If a request is not planned, close it; you can always reopen it.

Prioritising without letting votes decide alone

Votes show demand among the people who found your board and voted. They are a useful signal and a poor sole criterion: they favour ideas that are easy to describe, and they do not count customers who never visit the board. When you review the most requested problems each month, look at four things together:

  • Demand: votes, and how many separate requests were merged into one post.
  • Who is asking: customers on which plans, in which segments, at which stage.
  • Fit: does it move the product where you want it to go?
  • Effort: a rough size is enough to compare options.

Write down why you chose what you chose. When someone asks why their request was not picked, you will have an answer that is not “we forgot”.

How to say “not now” and “no”

Two messages you will send often:

Not now: “We’ve reviewed this and won’t get to it in the next few months: we’re focused on offline access first. We’re keeping it open and will update this post if that changes.”

No: “We’ve decided not to build a built-in calendar. Most people asking wanted to see what’s due soon, so we’ve added a ‘Due this week’ filter. Thanks for explaining how you work; it shaped that decision.”

Both are better than silence, and both should go to everyone following the request. For message templates at every other status, see How to close the customer feedback loop.

Choosing a feature request tool

A spreadsheet works until people outside your team need to see or add to it. When you look at feature request tools, check that they:

  • let users vote on existing requests and show likely duplicates while they type;
  • let your team merge duplicates without losing votes or followers;
  • let support and sales add requests or votes on behalf of customers;
  • notify followers automatically when a request changes status;
  • connect requests to a public roadmap and to your changelog;
  • keep internal notes private.

Some tools add AI suggestions on top. Featurebase, for example, lists AI board and duplicate-post suggestions from its Growth plan.Source [2]

How UpVoiced handles feature requests

In UpVoiced, which we are building, users post and vote on your portal or from the in-app widget, and similar-post hints appear while they type, before a duplicate is created. Your team triages in a keyboard-first inbox with filters for board, status, tag and approval; merging moves votes to the post you keep. Statuses come with the defaults above (Open, Under review, Planned, In progress, Shipped, Closed), and every status change emails the people who voted, commented or followed.

The UpVoiced dashboard inbox for the fictional Driftwood Notes workspace: ideas with votes and statuses, ready to triage by keyboard.
Triage on UpVoiced: every request with its votes and status, filters for board, status and tag, and keyboard shortcuts (fictional Driftwood Notes workspace).

If you are moving from another tool, UpVoiced imports CSV exports from Canny, Featurebase and hearloop. UpVoiced is in development and not open for sign-ups yet; try the fictional demo or request early access. For the bigger picture, read our product feedback guide.

Questions

What is a feature request?

A user's request for something the product does not do yet. The most useful ones say what the person was trying to do and why the product got in the way.

What should a feature request template include?

What the person was trying to do, what they do today instead, how often it happens and who is affected. A title in their own words helps others find it and vote.

Should you build the most voted feature requests first?

Votes show demand among the people who voted, not your whole customer base. Use them together with who is asking, your product direction and the effort involved.

How do you say no to a feature request?

Close it with a short, honest reason and, when there is one, a workaround. People who followed the request should be told, so they stop waiting.

Try UpVoiced

UpVoiced is a feedback board, public roadmap and changelog that emails people when the idea they voted for ships. It is in development: look around the fictional demo, and request early access to hear when the first workspaces open. The free plan will need no credit card.

Sources

Each numbered fact comes from the page below, read on the date shown. Pages change; tell us if something here is out of date and we will correct it.

  1. GitHub Docs, “Syntax for issue forms”. docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms, retrieved .
  2. Featurebase: AI board and duplicate-post suggestions are listed from Growth. www.featurebase.app/pricing, retrieved .