Blog Customer FeedbackWhat Is a Bug Report & How to Write a Good One? (+ Best Tools)

What Is a Bug Report & How to Write a Good One? (+ Best Tools)

What are bug reports, and how do you write good ones? This guide will teach you everything about bugs, including the best practices and tools to collect them with. Let's get into it!

Customer Feedback
Last updated on
Complete guide on bug reports.

Bugs are inevitable in software development. It’s relatively easy for users to spot them on a daily basis, whether they are intentional features or accidental errors from the developers. 🐛

According to research, 78% of people notice bugs in their apps regularly. More importantly, 88% said they would quit using the app if they experienced a bug!

This guide will cover everything you need to know about bugs and teach you how to write effective bug reports. Whether you're a developer or a user, understanding how to document bugs properly can improve product quality and user satisfaction.


What is a bug?

A bug is an unintentional error that negatively affects the user experience and triggers a complaint from the user.

The term “bug” originated in 1945 as a result of an unusual occurrence. The technical team at Harvard University found an actual dead bug in their Mark II computer! The bug was trapped in a relay, causing an error in the computer’s calculations.

The first bug reported in Harvard University was an actual dead bug in their Mark II computer.
The bug was eventually taped to the logbook - a literal example of bug reporting! (Source: National Geographic)

It’s also worth noting the difference between features and bugs, as they are often confused. For example, users can mistake a feature for a bug, but it's a conscious design decision from the product team. The bottom line is that bugs disrupt the user experience, while features should enhance it.

Regardless of the type of bug, the best way you can inform developers is through a bug report.


What is a bug report?

A bug report is a concise document detailing the nature of the bug and its level of urgency.

Bug reports are crucial to product management and development. Every startup needs a proper bug-reporting system to track and fix bugs effectively.

Why are bug reports important?

Bug reports are valuable for providing detailed insights into the errors in your product and help improve the experience.

They aim to address issues with a clear, concise description of the error. An ideal report should give you an instant idea of the problem, its severity, and how to reproduce it.

Let’s take a look at a couple of examples to better understand what goes into a bug report.

Examples of bug reports

Example 1: Mobile app login issue

  • Title: Crash on login after latest update
  • Environment:
    - Device:
    iPhone 12
    - OS: iOS 14.7.1
    - App Version: 2.3.4
  • Steps to Reproduce:
    1. Open the app.
    2. Navigate to the login screen.
    3. Enter valid login credentials.
    4. Tap on the "Login" button.
  • Expected Result:
    The user should be successfully logged in and redirected to the home screen.
  • Actual Result:
    The app crashes immediately after tapping the "Login" button.
  • Screenshots/Media:
    - Attached video of the app crashing upon login.
    - Attached crash log file.
  • Additional Information:
    This issue started occurring after the latest app update. It affects all users with iPhone 12 running iOS 14.7.1. Before this update, the login process worked without any issues.

Example 2: Web app “Add to Cart” error

  • Title: "Add to Cart" button not responsive on Chrome
  • Environment:
    - Browser:
    Google Chrome
    - Browser Version: 92.0.4515.107
    - Operating System: Windows 10
  • Steps to Reproduce:
    1. Go to the homepage of the e-commerce site.
    2. Navigate to any product page.
    3. Click the "Add to Cart" button.
  • Expected Result:
    The product should be added to the cart, and a confirmation message should appear.
  • Actual Result:
    The "Add to Cart" button does not respond to clicks. No product is added to the cart, and no confirmation message appears.
  • Screenshots/Media:
    Screenshot showing the product page with the unresponsive "Add to Cart" button.
  • Additional Information:
    The issue only occurs in Google Chrome. The button works as expected in Firefox and Safari. No JavaScript errors are visible in the browser console.

As you can see, bug reports aim to inform developers in a brief yet clear manner. They include just enough information to guide the developers’ next steps without overwhelming them.

This information includes the environment, steps to replicate, expected/actual result, and any additional context. It plays a huge role in tracking the bug and resolving it in an effective way.


How to write a good bug report

Writing a good bug report is crucial for efficient product management. A well-crafted bug report saves time and helps developers understand the issue right away.

Here are some best practices for writing an effective bug report:

1. Clear and descriptive title

Start with a specific title that provides a brief description of the problem.

Avoid vague titles like "Bug in the app." Instead, use specific titles like "App crashes on login after the latest update."

A good title sets the stage for the entire bug report. It immediately informs the developer about the nature of the issue. Think of it as a headline that captures the essence of the problem. 

2. Environment

Include details about the environment where the bug occurred. This helps developers replicate the issue. Mention the device, operating system, browser, and app version.

For example, "iPhone 12, iOS 14.7.1, App Version 2.3.4."

The environment section is crucial for understanding the context of the bug. Different environments can produce different software behaviors. 

A bug that appears on a specific version of an OS might not exist on another. Providing these details helps developers recreate the exact conditions under which the bug occurred, making it easier to identify and fix the problem.

Featurebase helps you collect this information from users through different required fields. For example, you can require users to select their OS or app version in their submission.

Featurebase's bug-reporting form with required fields.
Custom fields require users to include necessary information when reporting a bug. (Tool: Featurebase).

Similarly, custom fields can also prompt users to mention what steps they’ve already taken to solve the problem. So, you can create a great bug report template that allows your users to provide as much useful information as possible.

3. Steps to reproduce

The developer needs to know the path you followed before encountering the bug. Here, you will provide step-by-step instructions for reproducing the error. The steps must be precise and include all the relevant actions and inputs.

This section provides a clear, sequential guide for developers to follow, ensuring they can experience the bug firsthand. The more detailed and specific you are, the easier it will be for the development team to replicate and diagnose the problem.

For instance, if you’re reporting a bug with the funds transfer function of a mobile banking app, your steps might look like this:

  1. Open the banking app.
  2. Navigate to the "Transfers" section.
  3. Select "Send Money."
  4. Enter the recipient's account details.
  5. Input the amount to transfer.
  6. Tap the "Submit" button.

By providing a step-by-step path to the bug, you remove all guesswork for the developer. The team can follow your exact path and see the bug for themselves without wasting any time.

Create a custom placeholder for your bug-reporting form.
Create a custom placeholder for your bug-reporting form to guide users.

4. Expected vs. actual results

Start by explaining what you expected to happen. This sets a benchmark for the intended behavior. 

For example, if you're reporting an issue with a shopping cart feature, you might expect that "Items added to the cart should appear in the cart summary and be saved for checkout."

Next, describe what actually happened. Include specific details and any error messages that appeared. This helps developers understand the nature and severity of the bug. 

For instance, "When items are added to the cart, they do not appear in the cart summary. Instead, an error message says, 'Failed to add item to cart.'"

By clearly stating both the expected and actual outcomes, you paint a complete picture of the problem. This helps developers quickly grasp the issue's context and severity.

5. Include screenshots or media

Attach screenshots or videos showing the bug. Visual evidence helps developers understand the issue. A crash log or error message screenshot in your bug report can also be very helpful.

Including visual aids like screenshots or videos significantly enhances a bug report's clarity.

They provide immediate context and help developers see exactly what problem you're experiencing. This visual proof can often highlight issues that are difficult to describe with words alone.

With Featurebase, you can make it super easy for users with a neat in-app bug-reporting widget.

Featurebase's in-app bug reporting widget.
Bug reporting widget with screenshot option.

It has a screenshot engine that allows users to capture and edit screenshots without ever leaving your product.

Example of the screenshot engine with different editing features.
Example of the screenshot engine with different editing features.

6. Provide additional context

Add any extra information that might be relevant. This could include recent changes, similar issues, or how often the bug occurs. 

For example, "This issue started after the latest update and affects all users with iPhone 12 running iOS 14.7.1."

Sometimes, users forget to add the necessary context, or you want to understand their issue a bit more deeply. In this case, Featurebase can help you follow up with them using comments that also notify them via email.

Example comment section of a bug report in Featurebase.
Comments on Featurebase let you respond to users and ask questions.

Benefits of a good bug report

A good bug report offers the following benefits for both developers and users:

  • Efficient problem resolution: Clear bug reports help developers understand and fix issues much faster.
  • Improved product quality: Detailed feedback leads to a more reliable and convenient product for the user.
  • Better communication: Structured reports reduce back-and-forth questions between users and developers.
  • Enhanced user satisfaction: Quickly addressing bugs improves the overall user experience.
  • Resource optimization: Clear reports save time and resources for Product Owners, who would otherwise have to rewrite the tickets for Developers.
  • Data-driven decisions: Well-documented bugs provide valuable insights into improving the product in ways that actually impact user experience.
  • Reduced frustration: Both users and developers benefit from a smoother, more efficient bug-fixing process.

Examples of good vs. bad bug reports

Now that we understand what goes into a bug report and its benefits, let’s examine two different examples. 

We will start with an example of a bug report that engineers love before looking at an example that just doesn’t cut it.

A good bug report example

Title: Error Message Displayed When Saving Profile Changes in Firefox 124.0 on Windows 11

Description: Users receive an error message when attempting to save profile changes on the account settings page. This issue occurs specifically in Firefox 124.0 on Windows 11.

Steps to Reproduce:

  1. Log in to your account on the website.
  2. Navigate to the "Account Settings" page.
  3. Make any change to the profile information (e.g., update email address).
  4. Click the "Save Changes" button.

Expected Result:Profile changes should be saved successfully, and a confirmation message should appear.

Actual Result:An error message "Failed to save changes" appears, and no changes are saved.

Environment:

  • Browser: Firefox Version 124.0
  • OS: Windows 11 Version 22H2
  • Date/Time: May 20, 2024, ~10 AM PST

Attachments:

  • Screenshot of the error message displayed when attempting to save changes.
  • Network log showing the failed API request.
Why it’s good:

This report provides a clear, descriptive title and includes detailed steps to reproduce the bug.

It specifies the expected and actual results, along with relevant environmental information. The attachments offer additional context, making it easier for developers to diagnose and fix the issue.

A bad bug report example

Title: Profile Page Issue

Description: There is a problem with the profile page. I can’t save changes to my profile, very frustrating!

Why it’s bad:

This bug report is brief to a fault—it lacks valuable information that would help the developer! The title isn’t descriptive, and the description lacks substance. There’s no context as to how the error occurs.

Moreover, it says nothing about the environment or steps to reproduce. As a result, developers would have no idea how to start investigating the issue.

Top 7 bug reporting tools 

A bug-reporting system helps you collect software bugs from your users. It lets you track issues effectively and keep the product functioning at a high level for everyone.

We have handpicked the 7 best modern bug-tracking software on the market and analyzed their pros, cons, and pricing, so you don't have to.

1. Featurebase

Featurebase's product illustration.
Featurebase's feedback portal.

🥇 Featurebase is one of the best bug-tracking tools on the market. It has a neat interface and many rich features, including in-app widgets, roadmaps, and a changelog, to get the most out of your feedback.

It comes with affordable pricing and a Free plan allowing unlimited feedback. You can set it up in minutes and always get quick help through live chat. ⚡️

Featurebase's key features:

  • In-app widgets with a screenshot engine (see live demo)
  • Voting boards, changelog, and a roadmap
  • Sort bug reports by monetary value
  • Custom fields for extra information (MacOS / Windows, etc)
  • Many integrations (Jira, Linear, Intercom, etc.)
  • In-app surveys
  • Prioritization frameworks
  • Automated notification emails for users
  • User segmentation
  • Custom domain
  • Single Sign-On
  • API
  • Over 6 + languages, including Spanish, German, French, etc.

Advantages of Featurebase:

  • Intuitive interface - a neat and easy-to-use design for you and your users with gamified features like leaderboards to incentivize feedback
  • AI duplicate post-detection - users & admins will see relevant similar bug reports to reduce duplicates
  • AI-powered search - always find that idea that you were looking for, even if you don't remember the exact wording
  • Lots of customizations - have your boards look exactly the way you want by changing the colors, theme, text, and much more
  • Replies and @ mentioning - intuitive comment section for lengthy discussions

How much does Featurebase cost?

  • Free Plan - unlimited posts, all basic features like a feedback board, roadmap, and changelog to take your product to the next level
  • Growth Plan ($40/month) - 4 managers, all integrations and widgets, custom domain, and seamless user login
  • Premium Plan ($124/month) - 8 managers, API, SSO, and user segmentation

All plans let you collect unlimited feedback, and you can try the paid ones with a 10-day free trial. See pricing here →

Featurebase reviews:

  • Product Hunt - 4.9/5
Conclusion

Featurebase is the best affordable bug reporting tool with powerful in-app widgets. It offers many advanced features including screenshotting and prioritizing bugs by monetary value.

In addition to bug reporting, Featurebase comes with voting boards, roadmaps, and changelogs to help you keep all your feedback in one place.

Featurebase has a Free Plan that allows unlimited bug reports and feedback. You can automatically migrate over from any tool, so there's no downside to trying it.

Learn more here →

2. BugHerd

Bug Herd's roadmap view of feedback.
BugHerd's roadmap view.

BugHerd is a client-feedback tool for web agencies and SaaS startups. It helps teams collect and manage website and product feedback from clients to make better decisions.

BugHerd's key features:

  • Screenshot feedback
  • Integrations with Jira, Asana, Trello
  • Video feedback

Advantages of BugHerd:

  • Annotating screenshots
  • Each screenshot has info like browser, Operating System, and more
  • Manage all your tasks on a kanban view right inside BugHerd

Drawbacks of BugHerd:

  • Confusing & outdated UI
  • Occasionally, the feedback widget disappears, and you'll have to reload the page in order to get it working again.
  • There are cheaper options out there

How much does BugHerd cost?

BugHerd offers 5 pricing tiers that all have unlimited projects & end-users:

  • Standard ($39/mo) - 5 members, 10 GB storage, screenshots with a browser extension, public feedback widget, basic integrations like Slack & Zapier
  • Studio ($69/mo) - 10 members, 25 GB storage, video feedback
  • Premium ($129/mo) - 25 members, 50 GB storage, public feedback board, screenshots without the browser extension, custom branding, all integrations including Jira, Clickup, and more
  • Premium ($229/mo) - 50 members, 150 GB storage, no new features
  • Enterprise (contact sales) - custom nr of members, unlimited storage, SSO, dedicated success manager

You can try out all plans with a 14-day free trial. Choosing yearly billing will offer 2 months free.

BugHerd reviews:

  • G2 - 4.8/5
  • TrustRadius - 8.5/10
Conclusion

BugHerd is a bug reporting tool that is best suited for agencies. They take great screenshots and the annotation features are well thought-out.

Their pricing is quite decent, but the interface looks a bit outdate and confusing.

Check out the best BugHerd alternatives for bug tracking →

3. UserBack

UserBack's product illustration.
UserBack's feedback board

Userback is a bug-tracking tool that fits folks with many products or companies they want to manage into a single tool. In addition to regular posts, it also supports session replays and video feedback.

UserBack's key features:

  • Feedback portal and roadmaps
  • Widgets for feedback capturing
  • Bug & issue tracking

Advantages of Userback:

  • Session replays
  • Screenshot/video recording widget
  • Browser extension for internal feedback collection

Drawbacks of Userback:

  • Bad duplicate post-detection system
  • No changelog for closing the feedback loop
  • Lacks customizations (+ no dark mode)
  • No follow-up questions like "How important is this for you?" for extra insights
  • No built-in prioritization frameworks for product managers

How much does Userback cost?

Userback's pricing is best for larger teams with different products:

  • Startup plan - $59/month, allowing 10 admins and 5 projects.
  • Company plan - $119/month, allowing 15 admins and 15 projects.
  • Premium plan - $217/month, allowing 25 admins and 27 projects.

Note: 'Projects' are your companies or products, which you'd have to have a lot to get the most out of your money.

Userback reviews:

  • G2. - 4.8/5
  • Capterra - 4.8/5
  • GetApp - 4.8/5
Conclusion

Userback is the best choice for large teams with many different products. As a plus, the session replay feature makes it stand out from the others.

It's a good tool to capture user feedback, but if you're a smaller company, other deals will make more sense as you'd be paying for empty admin seats.

Check out the best UserBack alternatives here →

4. UserSnap

illustration of UserSnaps feedback boards.
UserSnap's feedback board

UserSnap is an enterprise product feedback tool with a large learning curve. Some of the core features include bug reporting, video feedback, two-way integrations & customer surveys.

It has lots of widgets for all types of feedback. Examples include NPS scores, feature announcements & feature satisfaction surveys.

UserSnap's key features:

  • Feedback boards and bug reporting
  • Surveys
  • Different widgets (e.g. NPR, feature announcement, feature satisfaction surveys)
  • Many integrations like Jira Server, Salesforce, HubSpot
  • User segmentation

Advantages of UserSnap:

  • SOC2 certification for enterprises
  • Lots of customization possibilities

Drawbacks of UserSnap:

  • No roadmaps
  • Costs a lot
  • The design is a bit outdated, which means widgets don't always look the best
  • Very complex and confusing

How much does UserSnap cost?

UserSnap has four tiers of pricing that go up pretty high compared to UserBack.

  1. Startup (€69/month) - 5 projects, 10 team members, screen capturing, surveys, 50+ integrations.
  2. Company (€129/month) - 15 projects, 15 team members, error log recording, data export features.
  3. Premium (€249/month) - 25 projects, 25 members, app surveys, API access.
  4. Enterprise (€949/month) - Unlimited projects/members, advanced security, full API, and strategy consultation.
Conclusion

UserSnap is a versatile & enterprise-focused bug reporting tool. They have lots of widgets, large integrations, and a SOC2 compliance.

For pricing, UserSnap is a very costly tool. Their highest plan comes in at $949/month or $11,388/year.

If you want something more affordable, check out these top UserSnap alternatives →

5. Canny.io

Canny's product illustration.
Canny's feedback board

Canny.io is a popular feedback tool that targets enterprises. It offers reporting widgets, voting boards, and roadmaps. However, their paid plans cost a lot, and the free plan has a strict limit on monthly posts.

Canny's key features:

  • Feedback boards, roadmaps, changelog
  • Prioritization frameworks
  • Feedback widget
  • Automated email notifications
  • Duplicate post-detection
  • Custom domain

Advantages of Canny:

  • SOC2 compliance for enterprises
  • Modern & intuitive design

Drawbacks of Canny:

  • Very expensive pricing 
  • No changelog popups
  • No bulk editing
  • No prioritization matrices
  • No follow-up questions like "How important is this for you?" for extra insights
  • Customers complain about not being listened to
  • Supports only English

How much does Canny cost?

  • Free plan - limits active posts to only 100 a month. For very small companies only
  • $99/month (Starter Plan) - custom domain, roadmap, 2 integrations. Very limited in features, equal to competitors' free plans
  • $399/month (Growth) - for 5 admins, user segmentation, private boards, and more
  • Business (talk to sales) - unlimited boards, pay by invoice, SOC2, etc.

Canny Pricing 2024: Is It Worth It →

Canny reviews:

  • G2 - 4.5/5 (complaints)
  • Capterra - 4.8/5
  • GetApp - 4.7/5
Conclusion

Canny is a reasonable enterprise solution for tracking customer feedback. They are SOC2 certified, support paying by invoice & have advanced moderation features. 

They offer a free plan that limits you to 100 posts. Furthermore, the most useful features are on the $399/mo plan, so it can get even quite expensive.

Check out these affordable Canny alternatives →

6. Ruttl

Ruttl's landing page showing their website feedback capabilities.

Ruttl is a website feedback tool for startups. It helps teams collect and manage user feedback to make better product decisions.

It's a budget choice with many limitations and can be expensive for larger teams. It offers feedback boards, roadmaps, and prioritization frameworks.

Ruttl's key features:

  • Bug reporting widget
  • Roadmaps
  • Prioritization frameworks
  • Customer chat

Advantages of Ruttl:

  • Video feedback
  • SAML support

Drawbacks of Ruttl:

  • Many users have reported Ruttl to be buggy. When testing it personally, my screenshots would sometimes just not be taken, and even when they were, they were very different from what was on my screen at the time I took them.
  • No duplicate feedback management
  • No public feedback board
  • No changelog for closing the feedback loop

How much does Ruttl cost?

Ruttl offers 3 pricing tiers:

  • Free - 1 admin, max 5 users, 1 project, unlimited guests, 1 min of video comments, 5 GB workspace storage, basic integrations
  • Pro ($4/user/mo) - 1 admin, max 50 users, unlimited projects, 10 mins of video comments, 50 GB workspace storage, Clickup & Zapier integrations, dedicated success manager
  • Team ($12/user/mo) - multiple admins, no user limit, 10 mins of video comments, 100 GB workspace storage

It doesn't seem too expensive at first. However, if you take into account the 'per user a month' pricing and compare its functionality to alternatives, it's quite a lot.

Ruttl reviews:

  • G2 - 4.9/5
  • Capterra - 4.9/5
  • GetApp - 4.6/5
Conclusion

Ruttl is an okay website bug reporting feedback tool for some. However the lack of voting boards and changelog make it unideal for those looking to also keep their users updated about the progress of their requests.

The pricing isn't that high, but compared to other tools in this list, you'll find a better value elsewhere.

Check out these top Ruttl alternatives →

2. Frill

Frill product illustration.
Frill's voting board.

Frill is a straightforward feature tracking tool with simple voting boards and a widget. They have a pretty user interface but could improve their feedback management side.

The pricing and dashboard make it a more suitable option for smaller teams that don't get much feedback.

Frill's key features:

  • Feedback boards, roadmaps, changelogs
  • Bug reporting widget & changelog popups
  • Custom domain

Advantages of Frill:

  • Minimalistic & straightforward UI
  • Translations into any language

Drawbacks of Frill:

  • Poor dashboard view for managing & moderating customer feedback
  • No user segmentation
  • No sorting feedback by customer revenue
  • No changelog emails
  • No duplicate post-detection system
  • No built-in prioritization frameworks

How much does Frill cost?

Frill offers 4 plans to choose between. You can try out each one with a 14-day free trial.

  • Startup ($25/month) - 50 active ideas at a time
  • Business ($49/month) - removes the feedback limit
  • Growth ($149/month) - unlimited feedback, white labeling, privacy features
  • Enterprise (starting at $349/month) - SOC2 and a dedicated support manager

Frill reviews:

  • G2 - 4.8/5
  • Capterra - 4.6/5
  • GetApp - 4.6/5
Conclusion

If you're looking for a simple bug reporting tool, Frill is a nice option. It offers a changelog, widgets, and a custom domain.

The first plan costs $25/mo and is suited for smaller teams that don't get more than 50 ideas in a month. The next plans are still quite affordable, but a bit pricey compared to others.

Check out the best Frill alternatives →

Conclusion

Regardless of the nature of the bug, a good bug report is crucial to a product’s long-term success.

If you’re a customer, it ensures that the product team understands your error well and determines a good fix for it. As a developer, a good report gets you to the root cause of the error in an instant, streamlining the bug resolution process for you.

As an all-in-one bug-tracking tool, Featurebase is perfect for collecting, managing, and communicating bugs. Its neat interface, combined with features like screenshotting and private boards, makes bug tracking super intuitive for your users.

The best part is that you can test the waters with a Free Plan that lets you collect unlimited bug reports.

Level up your bug-tracking process with Featurebase today →