Skip to Content
FeaturesFeedback Widgets

Feedback Widgets Available (v1)

Let visitors tell you what they think right on your page — a persistent feedback tab with a thumb rating, a comment, and an optional screenshot, without any redirect or third-party form.

Where in the dashboard

Feedback, with three tabs:

  • Inbox — the stream of incoming submissions, newest first, with the comment, thumb, page, and (if attached) screenshot.
  • Trends — an aggregated view of sentiment over time.
  • Settings — the widget builder (one widget per site).

Core concept

The widget lives in a lazy chunk (feedback.js, plus feedback-screenshot.js only when a screenshot is attached) that is fetched only once a session actually needs it — the tracker core stays lean. The persistent tab appears only after consent; without consent (or under “Do Not Track”) no widget renders and no submission is ingested.

A submission is a thumb (up / down) plus an optional comment. When comment-required is enabled in the builder, the thumb alone is not enough. Visz derives sentiment from the thumb server-side — rule-based, no NLP. Three guarantees shape the behaviour:

  • Consent-gated & bot-filtered — nothing ships before consent; submissions from bots or without consent are dropped silently and never stored.
  • PII masked twice — the comment is masked client-side and masked again on the server with the same PII heuristic before it reaches the DB (defense-in-depth).
  • EU-hosted — submissions and screenshots live on servers in Germany (Hetzner).

Screenshots

If the visitor attaches a screenshot, the browser renders it locally as WebP and masks it in the process — nodes marked visz-block and input fields are blanked in the clone before the image is produced. The server never touches the blob: it hands out a short-lived signed upload URL, and the browser uploads the masked WebP straight to the bucket. In a submission’s detail view you open the screenshot through an equally short-lived signed URL.

Last updated:

Last updated on