Feedback widget for websites and web apps
Feedback that wires back to you.
One script. Visitors rate a page, share an idea or report a problem. You get the report with the errors, failed requests and last clicks already attached — and a one-click brief for your AI coding agent.
Start for free with one site. One script tag works on plain HTML, Next.js, React, WordPress, Webflow, Shopify.
- 15 KB
- gzipped, zero dependencies
- 0 cookies
- no visitor IDs, no IP stored
- 0 effect
- on Core Web Vitals, loads after your page is idle
- 771 tests
- every release, before it ships
Every report arrives with the evidence.
Visitors write one sentence. Backwire adds the rest: the page, the device, and a timeline of what happened just before — the last clicks, JavaScript errors, failed requests and console lines, in order. No screenshots to request, no “which browser were you on?” emails.
- Page trail: last 5 clicks, last 20 errors, last 20 failed requests, last 50 console lines
- Passwords, form values, request bodies and headers are never captured; tokens and emails are scrubbed twice
- Reply from the inbox; the reporter gets an email and a status page when it’s fixed
# Bug report from end user — Acme Store **Page:** https://app.example.com/checkout (Checkout) **Reported:** 2026-09-05T10:30:00+00:00 · **Rating:** 2/5 · **Report ID:** 0f3c9a2b ## User's description > Checkout button does nothing on mobile ## Environment - Browser: Safari 17.5 · iOS 17.5 · iPhone - Viewport: 390×844 @3x · Language: en-US · Timezone: Asia/Hong_Kong - Page timing: TTFB 120ms, DCL 800ms, load 1500ms ## JS errors before report (1) - [-3.2s] TypeError: Cannot read properties of undefined (reading 'id') (https://app.example.com/static/checkout.js:42:17) ## Failed network requests (1) - [-4.1s] POST https://api.example.com/v1/orders → 500 (840ms)
Copy as agent prompt.
Turn any report into a Markdown brief your agent can act on: what the visitor said, where it happened, the environment, the timeline, and a suggested first step. Paste it into Claude Code, Cursor, Codex or whatever you ship with.
- Deterministic format — same shape every time, so your agent learns it
- Download as .md or copy to clipboard from the inbox (press c)
- Coming: send straight to your agent over MCP, no copy needed
The excerpt is the renderer’s real output. Console lines, the click trail and a suggested first step follow.
Your visitors don’t report most problems. Backwire still sees them.
Most people who hit an error just leave. Backwire counts the errors and failed requests on every page whether or not anyone writes in, so you find the broken checkout on Monday morning — not from a one-star review three weeks later.
- Lowest-rated pages, and which campaigns bring problem reports
- Page analytics included: views, opens, submissions, speed, errors — cookieless
- Live view of the last 15 minutes: pages, referrers, countries, devices
Page insights, without cookies.
Every page measured on its own: views, how many visitors opened the widget and how many sent something, how fast the page loaded, and the errors it threw. Daily counts per page, not people, so there is nothing to add to your cookie banner.
- Page views, widget opens and feedback per page, by day
- Fast-load rate against Google’s “good” line, and the pages that miss it
- Where visitors came from: referring sites, campaigns, countries, devices
Quiet by design.
A 44-pixel pill in the corner. It never pulses, never badges, never opens by itself, never dims the page. Your accent colour is the only colour it adds. Hide it on the pages where it doesn’t belong, or drop the bubble entirely and open it from your own button.
- Icon, icon + label, edge tab, or no bubble at all
- Follows your site’s light or dark theme
- Show or hide by page, device or timing
Two minutes to your first report.
- 1
Paste one script.
Add the tag to your site. The install page confirms the moment it loads.
- 2
Visitors rate, suggest, or report.
One quiet bubble, two tabs, one text box. They can leave an email to hear when it’s fixed.
- 3
You fix it.
Read the report with the evidence attached, reply from the inbox, or copy the brief to your agent.
What Backwire collects, and what it never does.
Collects, only when a visitor sends a report
- The page path, browser type and viewport
- The errors, failed requests and console lines before the report
- An email or phone, only if the visitor chooses to leave one
Never
- Cookies, visitor IDs, fingerprinting or stored IP addresses
- Form values, passwords, request or response bodies, headers
- Session recordings
Simple pricing. The whole loop is free.
Install, collect, read the report, copy the prompt, fix — all on the free plan. Pro adds sites, branding, control and reach.
Free
One person, one site, the whole loop.
- 1 site
- Unlimited page views and reports
- Full report context: clicks, errors, failed requests
- Cookieless page analytics and live view
- Inbox with email replies and agent prompts
- Email notifications and daily digest
- 14-day data retention
- Remove the “Powered by Backwire” badgePro
Pro
For products with users.
- Everything in Free, plus
- 5 sites
- Remove the “Powered by Backwire” badge
- Custom brand colors, light and dark
- Widget translations in 33 languages
- Advanced display rules: page, device, timing
- Slack notifications, and email alerts you can switch off
- Webhooks and GitHub integration
- Weekly summary and unlimited JSON export
- 1-year data retention
Common questions
What happens to the widget if I stop paying?
Nothing. It keeps working on your site. Extra sites go read-only in the dashboard and branding settings revert to defaults. We never break a live site over a bill.
Do my visitors see a cookie banner because of Backwire?
No. Backwire sets no cookies and stores no visitor identifiers or IP addresses. Analytics are daily counts per page, not per person. You should still mention Backwire in your own privacy policy; we give you the wording.
Does it slow my site down?
The widget is 15 KB gzipped, has no dependencies, and loads after your page is idle. It has no measurable effect on Core Web Vitals.
What do you capture when someone reports a problem?
The page, browser type, viewport, and a timeline of the last clicks, JavaScript errors, failed requests and console lines. Never form values, passwords, request bodies or headers. Emails and tokens are scrubbed before they reach us.
Can I try Pro before paying?
There is no trial. Free has the whole loop, so run Backwire on one site for as long as you like and move to Pro when you need more sites, your brand on the widget, or the integrations.
Can I export my data?
Yes, as JSON, on every plan: once a day on Free, without limit on Pro.