Get started for free · No credit card required
Streamlined bug reports for builders shipping client work

Turn messy client feedback into clear product tasks.

From "it's broken" page, element & console error.From "which button?" exact selected element.From "nothing happens" console error, repro steps and task draft.

TellBack captures voice notes, screenshots, selected elements, clicks, browser details, and safe error context — then drafts the dev-ready task and coding-agent prompt.

No credit cardLive in ~2 minutesCancel anytime
SJMA+
Joined by Solo devs · Indie hackers · Vibe coders · Freelancers · Product teams★★★★★
// watch it translate — pick a feedback type
What comes in
WhatsApp
the pay button doesn't work 😩 tried twice
Screenshot
checkout.png · no url shown
Voice · 0:14
"…I'm on my Mac in Chrome, can you fix it?"
✗ no url · no element · no console · no repro
Slack
"pricing feels off… nothing to click?"
!
Behavior
rage_click ×5 on pricing card
No message at all
54s dwell on /pricing → exit
✗ user never said a word — normally invisible
Slack
"hero feels empty… move the button up?"
WhatsApp
also make it blue pls 🙏
Selected
button.primary-cta · no token
✗ vague intent, no tokens, no spec
What Tellback hands you
BUG · P1Gemini 2.5 · confidence: high

Pay button throws ReferenceError on /checkout

page/checkout
elementbutton#pay-btn.checkout-pay
stackReferenceError: process is not defined
browserChrome 124 · macOS 14.4
▸ Fix the checkout ReferenceError on button#pay-btn — remove process.env from client bundle…copy
UX · P1Gemini 2.5 · confidence: medium

Pricing CTA may not be discoverable on /pricing

signalrage_click ×5 + 54s dwell
elementdiv.pricing-card (non-interactive)
sourcefriction flag · "Silent Struggle"
page/pricing
▸ Make the full pricing card clickable or raise CTA visibility…copy
UI · P2Gemini 2.5 · confidence: medium

Reposition & restyle the hero CTA

elementbutton.primary-cta
intentmove up + use brand blue
page/
▸ Move .primary-cta closer to headline; use primary blue token; check mobile…copy
Exports prompts your coding agent already speaks
Cursor Claude Code Windsurf Copilot Bolt Lovable Replit + generic markdown
screenshots/voice notes/clickstream/rage clicks/dead clicks/console errors/network errors/selected element/device & viewport/screenshots/voice notes/clickstream/rage clicks/dead clicks/console errors/network errors/selected element/device & viewport/
Why builders switch

Close the loop between "it's broken" and "it's fixed."

Every messy report becomes a clean, contextual task — so you spend time shipping, not interrogating.

Hours → minutes

No more detective work

URL, element selector, browser, and console trace arrive attached. Stop asking "which browser were you on?"

Zero prompt-writing

Paste straight into your agent

Each task ships a markdown prompt with selectors, evidence, and acceptance criteria for Cursor, Claude Code, or Windsurf.

Faster sign-off

Clients review in the real app

Send one review link instead of chasing Looms. They click-to-comment in context; you close the project sooner.

Sound familiar? A client sends a voice note, a screenshot with no context, and "it's broken." You spend the next hour asking which browser, which page, which button.

There's a better way — and it takes one script to set up.

Before / after

The status quo vs. Tellback.

Same feedback. One path costs you a day. The other costs you a paste.

WhatsApp + screenshots + Looms
  • Feedback scattered across five apps
  • "Make it blue" with no page or element
  • No browser, viewport, or console trace
  • You hand-write the spec before any fix
  • Silent, confused users just churn
Tellback
  • One contextual inbox for every report
  • Exact element, page, and stable selector
  • Browser, viewport & console auto-attached
  • AI writes the first task draft for you
  • Rage/dead clicks surface silent struggles
★★★★★

"My client sent the same 'the button's broken' voice note I always get — but this time Tellback handed me the exact selector and the console error. I pasted the prompt into Cursor and the fix shipped before I finished my coffee."

MR
Marc R.
Freelance full-stack dev · agency owner
CursorNext.jsVerified Builder
How it works

Live in ~2 minutes.

One async script for any Next.js, React, or static app. Non-blocking, style-isolated, and safe if our backend ever hiccups.

01

Paste one script tag

Add the lightweight widget with your public site key. Gated by allowed-origin rules.

02

Flip on Feedback Mode or share a review link

The widget appears only when you enable it — or for clients on your private review link.

03

Feedback lands with full context

Testers highlight elements, type, or record voice. Tellback logs the session and friction signals.

04

Copy the AI task into your agent

Structured cards land in your Project Inbox. Copy or download the markdown prompt and ship.

SCRIPT EMBED · ASYNC · NON-BLOCKINGwidget.js
<script
  async
  src="https://tellback.io/widget.js"
  data-tellback-site="YOUR_SITE_ID">
</script>

⚠️ Replace YOUR_SITE_ID with the public site key from your dashboard. It's a public key — never a secret — and only accepts traffic from your allowed origins.

Capabilities

Everything the AI needs, captured for you.

Event-first, not video-first — and privacy-safe by default. Passwords, card fields, tokens, and hidden inputs are never recorded.

In-product widget

Lightweight, style-isolated, whitelisted to your domains. "Powered by Tellback" on free.

Screenshot capture

Auto-captures the viewport with the selected element highlighted on submit.

Voice notes → spec

Record, preview, re-record. Transcribed and turned into implementation-ready items.

Element picker

Binds the exact stable selector — data-testid, id, aria, semantic path.

Clickstream timeline

Page views, SPA routes, clicks, scroll depth — the path to the problem.

Rage & dead clicks

Detects friction even when the user never says a word — "Silent Struggle" cards.

Console & network errors

Uncaught exceptions and failed requests bound to the moment they happened.

Privacy-safe by default

Passwords, card numbers, CVCs, tokens, auth headers, cookies & hidden inputs are masked. Skip any subtree with data-tellback-ignore.

Coding-agent prompts

Export markdown for Cursor, Claude Code, Windsurf, or generic — one task or a whole session.

Four feedback modes

Collect nothing, page views only, hidden sessions, or full feedback — per site.

Stop translating feedback.
Start shipping fixes.

One script, full context, AI task specs. Join the builders already shipping faster.

No credit card2-minute setupCancel anytime
FAQ

Questions, answered.

What is Tellback?

A feedback-intelligence layer for builders. One lightweight widget captures feedback in context — screenshots, voice, clickstream, console errors — and Vertex AI turns it into clean, structured task cards and coding-agent prompts.

Who is it for?

Solo developers building for clients, indie hackers testing SaaS with early users, and vibe coders shipping quick apps with coding agents.

Do I need to install anything?

No server install. Embed one async script tag and configure your public site key. Testers don't need a Tellback account either.

Does it record full sessions or keystrokes?

It's event-first, not video-first. It tracks meaningful events and friction signals — never password, card, or token values. Raw input contents are masked by default.

Can I control what's collected?

Yes — four per-site Feedback Modes: collect nothing, page views only, hidden session tracking, or full feedback with the widget shown.

Does it generate prompts for coding agents?

Yes. Each task produces a markdown prompt with selectors, evidence, and acceptance criteria — ready for Cursor, Claude Code, Windsurf, or a generic agent.

Get Started Now