BEFORE
SlackWhatsAppTelegramPhone callEmail
reads everything, types it all up
?
Tickets by hand · no context

Five channels, one person, tickets by hand.

Your users click on the problem. The AI spots the pattern.

Feedbapp collects feedback directly in your application, whether website, web app or software: with a screenshot, the clicked element and the technical details. From this context, the AI classifies every report and groups matching topics. In about five seconds.

Closed beta. We open it up in small groups, you will hear from us within two weeks. No spam.

WITH FEEDBAPP
shop.yourcompany.com/order/4711
Order #4711
DeliveryWed, Sep 16
StatusDelivered
What's wrong here?
Says “delivered”, but the package never arrived.
Screenshot · Element · ConsoleSend
about 5 seconds
BugOrder status jumps to “delivered”
Topic “Order status” · 3 similar reports

Straight from the product. Sorted automatically.

The Feedbapp board with classified feedback and topic clusters

Feedback arrives, just without everything you would need, spread across five different channels.

“Something is broken.”

No page, no screenshot, no console message. You write back and ask. Two days later you know what it was about, if anyone even answers at all.

Five reports, one problem, four channels.

The same issue by email, in Slack, in the support chat and out loud in a meeting. You only notice it is the same thing once you have read all five.

After 200 entries you have a list, not a picture.

What comes up often looks like whatever came up last.

Other tools get a sentence. Feedbapp gets the whole scene.

An AI can only classify as well as what it receives. Tools that pull feedback from tickets and forms see text. Feedbapp sees the screenshot, the clicked element, the console and the failed requests.

What others see

“The export doesn't work”

What Feedbapp sees

Screenshot of the reported page: report view with a CSV export button
Element
[data-testid="export-button"]
· Page
/berichte
Console
TypeError: t.rows is undefined
Network
500 · POST /api/export
· Window
1440 × 900

Type Error · Topic “CSV export fails (3)”

How it works

From click to topic. In six steps.

01 / 06
Embed

One line on your site.

Copy the script tag, allow the domain, done: no npm package, no build step, no change to your code.

Script tagAny platformTwo minutes
Project settings with the embed code to copy
02 / 06
Report

The user says it right where it happens.

Button bottom right, four categories, one sentence: no account, no login, no extension to install.

No account neededBug · Idea · Feature · ProcessOn every page
The feedback widget with four categories on an example page
03 / 06
Context

It points at the problem.

Screenshot, the exact element clicked, console messages and failed requests, sent automatically, known tokens and keys redacted first.

ScreenshotElement markerConsole & network
A clicked element gets marked on the page and captured as a screenshot
04 / 06
Classify

The AI turns it into a topic.

Type, summary and assignment to an existing topic, in about five seconds, without anyone tagging it.

ClassificationTopic clusters~5 seconds
A classified feedback item with type, summary and topic assignment in the dashboard
05 / 06
Work

You decide what happens next.

Six columns from “Future” to “Done”, topics sorted by weight: you drag the card, the AI only pre-sorted it.

Board & listTop topicsNotes in the history
The board with six status columns and topics sorted by weight
06 / 06
Automate

Your agent does the rest.

Claude Code or Cursor fetch the open topics, work through them and reset the status, in a loop, without you sitting in between.

MCP serverSix toolsAutopilot loop
$ npx -y -p feedbapp-cli@latest feedbapp-mcp setup

Also built for QA, your own team and staging.

QA

Testers report straight from the interface: screenshot, element and page are already attached, no ticket typed by hand. The AI sorts it by type and topic.

Dogfooding

Your own team uses the product and reports from inside the application. That is how Feedbapp itself runs.

Staging and internal

The widget can be embedded on a staging or internal address. The origin is allowed per project, in the project settings. With no entry, every origin is allowed.

→ Widget docs

Your coding agent can read the board, and write back to it.

One command, then Claude Code knows your topics.

$ npx -y -p feedbapp-cli@latest feedbapp-mcp setup
“Show me the open P0 bugs from this week.”“Summarize the CSV export topic.”“Set the ticket to in progress, with a note.”

In the loop: Because the agent can also set the status, the loop runs by itself: it picks the next topic, builds it, marks it done and moves on. Your product keeps moving while you work on something else. You review instead of coordinating.

Six tools. Claude Code, Cursor and Codex. On every plan, including Free. → Docs

What happens with your data. In full.

  • Database and application backend run in Frankfurt.
  • For classification we send the feedback text and the project description to OpenAI in the US. Not for training. Screenshots never go to the AI, and neither does the page URL, browser data, sender name or email.
  • Screenshots live in private storage, reachable only via time-limited signed links.
  • No ad tracking: no ad pixels, no Google Analytics. Fonts self-hosted.
  • The widget needs no cookie banner on your site. The visitor session ID is only created once someone actually submits.
  • Diagnostic capture is fully switchable off: one attribute on the script tag, data-diagnostics="off".
  • Tenant isolation via Postgres row-level security.
  • DPA available on request, on every plan.

Founding Member: the first 100 keep half off, permanently.

Three months free, then Pro for 24.5 € instead of 49 €, for as long as you stay. The trade behind it: you use a young product and tell us what doesn't work. In return you never pay full price again.

Your spot locks in once Feedbapp is actually running for you: 50 feedback items collected in the first three months, 10 of them worked. Anyone who hasn't started by then frees up their spot for someone who does.

Free 0 € · Starter 19 € · Pro 49 €, per workspace, not per seat. → All details

FAQ

When can I start?

Closed beta, we open it up in groups. You will hear from us within two weeks.

What does it cost?

Free, Starter 19 €, Pro 49 € per month and workspace. The first 100 keep half off, permanently.

Do my users need an account?

No. No sign-up, no extension. Name and email are optional.

What exactly gets captured?

Text, screenshot, clicked element, recent console messages, failed requests, page URL, browser and window size. → Privacy

Does the feedback go to an AI?

Text and project description go to OpenAI (US), not for training. Screenshots never.

Can I turn off the diagnostic data?

Yes, with one attribute on the script tag: data-diagnostics="off". Console, errors and network are then never captured; text, screenshot and element marker stay.

Does this work with my stack?

One script tag on any page that serves HTML. Snippets for HTML, Next.js, WordPress, Webflow. It also works inside app shells with a WebView (Capacitor, Cordova, React Native WebView).

What about native iOS or Android apps?

Not yet. The widget is JavaScript and needs a web page; a native SDK is on the roadmap. If your app has a WebView portion, you can embed it there today.

Do I need to update my privacy policy?

Yes, one paragraph. You stay the controller for your users' data, we process it on your behalf. We give you the ready-made policy text and the DPA, both in the project settings.

Where is the data stored?

Database and backend in Frankfurt. DPA available on request, on every plan.

Claude Code, Cursor, Codex?

All three. The setup assistant writes the configuration itself: for Codex in ~/.codex/config.toml, for the others as JSON.

Feedback that tells you what to build.

The first 100 keep half off, permanently.

We build Feedbapp with Feedbapp.