Visual bug reporting for websites
Catch bugs.
Get clean tickets.
One script tag adds a feedback button to any site. Every report lands as an annotated screenshot with browser, viewport and console data attached — and syncs straight to your issue tracker.
- 2-minute install
- Widget ≤150 KB, async
- No card required
Two-way sync with the trackers you already use
The problem
“It looks weird on my screen” is not a bug report
You can’t reproduce what you can’t see. Bugpot turns vague emails into structured tickets — captured the moment the problem happens, on the device where it happens.
Before · what clients send
From: client@example.com · Re: Re: Fwd: website
“Hi — the button looks weird on my screen?? It worked last week. Can you fix before the meeting, it’s quite urgent. Attached a photo of my monitor.”
- Which button? Which page?
- Which browser, which device?
- Any console errors? No idea.
After · the same report, through Bugpot
Pay button clipped below 400px viewport
Open- Browser
- Safari 18.2 · iOS 18
- Viewport
- 390 × 844 @3x
- URL
- /checkout?step=payment
- Console
- 1 error captured
How it works
From script tag to triage in three steps
Install the widget
Paste one script tag into your site — or your client’s. It loads async and renders in a Shadow DOM, so nothing on the page breaks.
Clients click Feedback
They mark up a live screenshot with arrows and notes, pick an issue type, and hit send. Name and email included, nothing to install.
You triage & sync
Reports arrive with full environment data and console errors. Set status, assign, comment, and push to your tracker in one click.
The whole install
<script async src="https://app.bugpot.io/embed/loader.js?p=your_project_key"></script>The toolkit
Everything a bug needs to get fixed
After the report
Feedback becomes a queue you can clear
Every report lands as a ticket with a status, a priority and an owner. Filter by site, type or reporter; keep discussion on the ticket; watch resolution times fall on the analytics dashboard.
- Pay button clipped below 400pxHighOpen
- Hero image blurry on retinaMediumIn progress
- Typo in footer addressLowResolved
- Cookie banner overlaps navMediumOpen
Pricing
Plans that grow with the client list
Studio
£12 /month
For freelancers and small teams shipping client work.
- 25 websites
- Team members
- Custom feedback forms
- Custom issue types
- Workspace branding on the widget
- Email support
14-day free trial · cancel any time
Agency
£49 /month
For agencies running feedback across many client sites.
- Everything in Studio
- Unlimited websites
- Webhooks & API access
- Audit log with CSV export
- Analytics across all projects
- AI triage assistance
- Priority support
14-day free trial · cancel any time
How does the widget get onto my site?
You paste one script tag before the closing </body> tag. It loads asynchronously, renders inside a Shadow DOM so it can never clash with your CSS or JavaScript, and stays under 150 KB gzipped.
What arrives with each bug report?
An annotated screenshot of the exact page state, the page URL, browser and OS versions, viewport size and device pixel ratio, captured console errors, and any custom form fields you configure — plus the reporter's name and email.
Do my clients need an account to report bugs?
No. Guests report through the widget with just a name and email. Your team gets accounts for the triage inbox, statuses, priorities and comments.
Does it sync with my issue tracker?
Yes — Bugpot pushes reports to Jira, GitHub, GitLab, Linear and more, and keeps status in sync both ways, so you work where your team already lives.
Will the widget slow my site down?
The loader is async and deferred, so it never blocks your page render. The widget only initialises after your page finishes loading, and screenshot capture runs entirely in the browser.
Put a feedback button on your site today
Install in two minutes and triage the first report before the kettle boils. Two-way sync from day one.