The Easiest Way to Add a Feedback Widget to Any Website

April 15, 2026

Adding a website feedback widget used to mean spinning up a backend, configuring webhooks, and wrestling with CORS errors at midnight. It doesn't anymore. With a single script tag you can have a working feedback button on any website - static site, Next.js app, Webflow project, whatever - in under two minutes.

This guide shows you exactly how to embed a feedback widget with one line of HTML, what options you can configure, and why keeping the install this simple actually matters for the feedback you receive.

Why a One-Script-Tag Install Changes Everything

Most feedback tools require a backend to receive and store submissions. That means you need a server, a database, environment variables, a deployment, and ongoing maintenance - before a single user has clicked your feedback button.

Buglet flips this. The widget handles everything client-side and delivers feedback directly to your email inbox and Slack workspace. No server. No database. No infrastructure to babysit.

For indie hackers, solo founders, and small product teams, this matters enormously. You ship faster, you stay focused on your product, and you start getting feedback from real users on day one instead of day thirty.

The Embed Code

Paste this into your site's <head> or just before the closing </body> tag:

<script
  src="https://buglet.vercel.app/buglet.js"
  data-config-id="your-config-id"
  defer
></script>

That's the entire installation. Replace your-config-id with the ID from your Buglet dashboard and you're live.

Configuration Options

The widget is controlled entirely via data-* attributes - no JavaScript API calls, no config files. Here are the most useful ones:

<script
  src="https://buglet.vercel.app/buglet.js"
  data-config-id="your-config-id"
  data-position="bottom-right"
  data-primary-color="#e11d48"
  data-allowed-paths="/"
  defer
></script>
Attribute What it does Example value
data-config-id Links the widget to your Buglet account "abc123"
data-position Where the button floats "bottom-right", "bottom-left"
data-primary-color Button colour "#e11d48"
data-allowed-paths Which paths show the widget "/" for all pages

If you omit an attribute, Buglet applies sensible defaults - so the minimal one-attribute version above works perfectly out of the box.

What Happens When a User Clicks the Button

When a visitor clicks the feedback button, they get a lightweight modal with two things: a text field and a screen capture option. They can type their feedback, optionally annotate a screenshot of exactly what they're looking at, and submit. The whole interaction takes under 30 seconds.

You receive the submission immediately - in your inbox, in your Slack channel, and in your Buglet dashboard. The screenshot arrives with the exact page URL and browser details attached, so you have full context without ever needing to ask a follow-up question.

This is the part that actually saves hours. Vague bug reports ("something's broken on mobile") become precise, reproducible issues with annotated screenshots. You fix the right thing the first time.

Works on Any Stack

Because the website feedback widget is just a script tag with no framework dependencies, it works everywhere:

  • Static HTML sites - drop it in the <head> and done
  • Next.js / React - add it to your root layout or _document
  • Webflow - paste into the site-wide <head> embed
  • WordPress - use a header script plugin or paste into functions.php
  • Shopify - add via the theme editor's custom script field

No npm package. No build configuration. No peer dependency conflicts.

Slack and Email Delivery - No Webhook Setup Required

Connecting Slack takes about 30 seconds from the Buglet dashboard (full walkthrough: Get Bug Reports in Slack) - click the Slack integration button, authorise the app, pick a channel. Every feedback submission arrives as a formatted Slack message with the user's text, the screenshot (if they attached one), and the page URL.

Email delivery is on by default. You don't configure anything; submissions go straight to the address you signed up with.

Both channels work simultaneously. Your team sees feedback in Slack the moment it arrives; you have a permanent email record for reference.

What to Do with the Feedback Once It Arrives

The widget handles collection. What you do next is what separates teams that improve quickly from teams that drown in noise.

A simple triage approach: label each submission as a bug, a usability issue, or a feature request. After 10–15 submissions you'll start seeing patterns. Three people confused by the same onboarding step is a signal worth acting on immediately. One person asking for a dark mode is a note for the backlog.

The Buglet dashboard surfaces these patterns for you - grouping submissions by page URL makes it easy to spot which pages are generating the most friction. Fix the highest-traffic friction points first and your conversion metrics will tell you if it worked.

Straightforward Pricing, No Infrastructure Overhead

Buglet plans start at $3.99/month - less than a coffee, and significantly cheaper than the engineering time it would take to build and maintain a feedback system yourself. There's no server to run, no database to manage, and no surprise infrastructure bills. You pay for the widget; Buglet handles everything else.

If you're ready to stop guessing what's confusing your users and start hearing it directly from them, add the Buglet feedback widget to your site today. One script tag. Real answers.

The Easiest Way to Add a Feedback Widget to Any Website