A feedback layer for honest teams

Where your users talk to you, and you talk back.

A React feedback widget and dashboard that closes the loop. Users leave a rating, a vote, or a bug report — and hear back when you ship. No trackers, no cookies, no third-party scripts. Just a direct line.

Start for free

Free tier · No credit card · React SDK · try the demo

Five minutes

One provider, one component. That is the whole API.

app.tsxTypeScript
import { GotchaProvider, Gotcha } from 'gotcha-feedback';

<GotchaProvider apiKey="your-api-key">
  <App />
</GotchaProvider>

<Gotcha elementId="checkout" mode="nps" />
<Gotcha elementId="search" mode="vote" />
<Gotcha elementId="app" enableBugFlag enableScreenshot />
The Loop

Your users ask. You ship. They hear back.

Most feedback tools stop at capture. Gotcha is built around what happens next — the conversation that turns a submission into a relationship.

01

A user says something

They tap the button in your product. Rate, vote, report a bug, answer a poll. One click. Their feedback is tied to the exact screen they were on.

02

You see the theme, not the noise

The dashboard surfaces patterns — what people keep asking for, what keeps breaking, where the friction lives. You read a synthesis, not a spreadsheet.

03

You triage and ship

Move feedback from new to planned to building to shipped. It reads like a changelog your users can follow. Public roadmap if you want one.

04

They hear back

When you ship their request, they get a note. Not a newsletter. A personal line: you asked for this, we built it, here it is. That is the loop.

What you see on a Tuesday morning
“Users are asking for recurring reminders — fourteen mentions this week, up from three last month.”
Synthesised theme · 14 submissions

Want to see a real one? Our own roadmap is built with Gotcha — no cookies, no third-party scripts, no marketing chrome.

See the Gotcha roadmap
Privacy posture

Feedback without surveillance.

Most “lightweight” SDKs smuggle in trackers. We audited ours so you can audit ours. Here’s what the button does not do.

Notrackers
The SDK talks to one origin — ours. No Segment, no PostHog, no Google, no Sentry. Nothing piggybacks.
Nocookies
We set none. Not for auth, not for tracking, not for sessions. Your cookie banner does not need a new row.
Nofingerprinting
No canvas hashing, no font probing, no audio context. No passive signal gathering while the button sits there.
Nothird-party fonts
The signature glyph is embedded inline. Everything else uses your system font. Google never sees a request.

What we do collect, only when someone submits: page URL, browser, viewport, language, timezone. Recent JS errors are opt-in and off by default — you choose what travels with a bug report. Nothing ships pre-emptively. If your user never submits, we never hear from their browser. Audit the SDK on npm.

Open the line.

Five minutes to install. No credit card. Free on every plan until your users keep talking back.

npm install gotcha-feedback