A customer submits a report: "The search bar doesn't find results when I use special characters." Is that a bug or a feature request?
If special characters were never supported, it's a feature request. If they used to work and now they don't, it's a bug. If the documentation says they should work but they don't, it's also a bug.
The distinction seems pedantic, but it matters for how you prioritize, assign, and communicate about the issue. Bugs need to be fixed. Feature requests need to be evaluated. Mixing them up creates confusion for your team and frustration for your customers.
This guide defines the line between bugs and feature requests, walks through the grey areas where most teams get confused, and gives you a framework for classifying edge cases.
Bug: The product does not behave as expected based on its documentation, stated behavior, or previously working functionality. Something is broken.
Feature Request: The product behaves as designed, but the user wants it to behave differently. They're asking for something new or an enhancement to existing behavior.
The key distinction is expectation vs reality:
| Expected Behavior Defined? | Product Matches Expected Behavior? | Classification | |
|---|---|---|---|
| Scenario A | Yes (documented) | No (broken) | Bug |
| Scenario B | Yes (documented) | Yes (works correctly) | Feature Request |
| Scenario C | No (undocumented) | N/A | Grey Area |
Scenario C is where things get interesting.
In practice, the line between "broken" and "not built yet" is blurry. Here are the most common grey areas and how to think about each one.
A user reports: "The dashboard takes 12 seconds to load."
Bug or feature request? It depends.
Rule of thumb: Regressions are always bugs. Unmet expectations without a prior standard are feature requests.
A user reports: "I can enter a negative number in the quantity field, and the system accepts it."
Bug or feature request?
Rule of thumb: If any reasonable person would expect the validation to exist, it's a bug. If it requires domain-specific knowledge to know the validation is missing, it's a feature request.
A user reports: "I can't figure out how to export data. It took me 20 minutes to find the button buried in the settings menu."
Bug or feature request?
This is almost always a feature request (specifically, a UX improvement request). The feature works; it's just hard to find or use. However, if the export button was recently moved and the change wasn't communicated, you could argue it's a regression in usability.
Rule of thumb: If the functionality works but the experience is poor, it's a feature request. If a recent change made it significantly worse, treat it with the urgency of a bug.
A user reports: "The drag-and-drop board works perfectly on desktop but doesn't work at all on my phone."
Bug or feature request?
Rule of thumb: Check what you've promised. If your marketing, documentation, or app store listing implies mobile support, broken mobile functionality is a bug.
A user reports: "When I filter by date range, the totals at the bottom don't update to reflect the filtered data."
Bug or feature request?
This is almost certainly a bug. If the totals exist and the filter exists, a reasonable user expects the totals to respect the filter. This falls into the "implicit expected behavior" category.
A user reports: "The Slack integration stopped sending notifications yesterday."
Bug or feature request?
If the integration used to work and stopped, it's a bug. This is true even if the root cause is on the third party's side. From the user's perspective, your product broke. You need to investigate and fix it.
Getting the classification right affects three things:
Bugs and feature requests follow different priority tracks:
If you misclassify a bug as a feature request, it sits in a prioritization queue while users suffer. If you misclassify a feature request as a bug, your engineering team drops what they're doing to "fix" something that was never broken.
Bugs typically go to the engineering team that owns the affected area. Feature requests go through product management for evaluation before any engineering work happens. Misclassification means the wrong team is looking at it.
How you respond to the user depends on the classification:
Sending a bug response for a feature request creates false urgency. Sending a feature request response for a real bug makes the user feel dismissed.
When you're unsure whether something is a bug or a feature request, walk through these questions:
Step 1: Has this behavior changed recently?
Step 2: Is there documentation or marketing material that describes the expected behavior?
Step 3: Would a reasonable person expect this to work?
Step 4: Are you unsure even after Steps 1-3?
Your feedback tool needs to accommodate both bugs and feature requests. There are two common approaches:
Create one board for bug reports and another for feature requests. This keeps the two streams cleanly separated and makes it easy to route items to the right team.
Pros: Clean separation. Bug board goes to engineering; feature board goes to product.
Cons: Users have to decide which board to submit to (and they'll often choose wrong). You end up moving items between boards.
Use one board for all feedback and tag items as "Bug" or "Feature Request" (or "Enhancement," "UX Issue," etc.). Your team handles classification during triage.
Pros: Lower friction for users. They submit in one place and your team sorts it out.
Cons: Requires regular triage to keep things organized.
Our recommendation: Use a single board with categories or tags. It's less friction for users, and your team should be reviewing submissions regularly anyway. During triage, classify items, merge duplicates, and route to the appropriate team.
In ProductLift, you can use categories or tags to separate bugs from feature requests on the same board. Users submit feedback without worrying about classification, and your team applies the right label during review. This keeps the user experience simple while giving your team the structure they need. See our comparison of feature request tools for more options that support this workflow.
Customers will report bugs as feature requests and feature requests as bugs. Here's how to handle both gracefully.
Hi [Name],
Thanks for reporting this. After investigating, we've confirmed that [behavior] is actually working as currently designed. I understand it's not the behavior you expected, and that's valid feedback.
I've converted your report into a feature request on our feedback board so other users can vote on it. If there's enough demand, our product team will evaluate it for a future release.
You can track and vote on it here: [link to feedback item]
Hi [Name],
Thanks for submitting this. After looking into it, we've identified that this is actually a bug. [Behavior] should not be happening. Our engineering team has been notified and is working on a fix.
We'll update you once it's resolved. Sorry for the inconvenience, and thanks for catching this.
In both cases, the key is to acknowledge the user's effort, explain the reclassification without being condescending, and tell them what happens next.
You can reduce misclassification by making your feedback submission form slightly smarter:
Walk through a simple checklist: Has the behavior changed recently? Does documentation describe the expected behavior? Would a reasonable person expect it to work? If you're still unsure after these steps, treat it as a bug and investigate. False negatives (ignoring real bugs) are more costly than false positives.
Your triage team (usually product or support) makes the initial call during regular review sessions. For ambiguous cases, loop in engineering to confirm whether the behavior is intentional. The key is to have a consistent process rather than ad-hoc decisions.
Yes, using a single board with tags or categories reduces friction for users. They submit in one place without worrying about classification. Your team then applies the right label during triage and routes items accordingly.
Yes. Critical bugs that block users need immediate attention, often within hours. Feature requests follow a prioritization process and compete for roadmap space over weeks or months. Medium and low-severity bugs fall somewhere in between.
If the current design causes widespread confusion or frustration, treat the UX issue with bug-level urgency even though it's technically a feature request. User expectations matter. If many users hit the same friction point, the design needs fixing.
Listen to their reasoning and ask clarifying questions. They may have context you don't (like a regression you missed). If you still classify it differently, explain your reasoning clearly and tell them what happens next. Transparency reduces frustration even when you disagree.
The bug vs feature request distinction is simple in theory and messy in practice. Regressions are bugs. New behaviors are feature requests. Everything in between requires judgment.
The most important thing isn't getting the classification perfect every time. It's having a consistent process for triaging, classifying, and communicating about both types of feedback.
When in doubt, investigate first and classify second. A bug treated as a feature request causes more damage than a feature request treated as a bug.
If you're looking for a tool that handles both bugs and feature requests in one place, ProductLift lets you collect all feedback on a single board with categories and tags to keep things organized. Your users submit naturally, and your team adds structure during triage.
Join over 3,051 product managers and see how easy it is to build products people love.
Did you know 80% of software features are rarely or never used? That's a lot of wasted effort.
SaaS software companies spend billions on unused features. In 2025, it was $29.5 billion.
We saw this problem and decided to do something about it. Product teams needed a better way to decide what to build.
That's why we created ProductLift - to put all feedback in one place, helping teams easily see what features matter most.
In the last five years, we've helped over 3,051 product teams (like yours) double feature adoption and halve the costs. I'd love for you to give it a try.
Founder & Digital Consultant
Learn when to promote feature requests to your roadmap, how to merge duplicates, notify voters, and keep credibility through the full lifecycle.
Learn 7 tactful ways to decline feature requests while keeping customers engaged. Includes response templates and expectation management tips.
Learn how to prioritize feature requests using RICE, ICE, MoSCoW, and Impact-Effort. Combine scoring models with revenue data to build what matters.
Copy these 5 proven feature request templates for any team size. From basic forms to enterprise formats, find the right structure for product feedback.
Learn 10 proven feature voting best practices to collect better feedback, prioritize by revenue impact, and build what customers want.