Documentation

Integration guide

Everything you need to add UserFeed to your Chrome extension.

Quickstart

Three steps from zero to live:

  1. Sign up at UserFeed and create an extension profile.
  2. Build your form in the block editor. The default reason-select block is ready to go.
  3. Copy your URL and paste it into your background script (see below).

Manifest permissions

No additional manifest permissions are required. setUninstallURL is available to all extensions without declaring it in manifest.json.

Setting the URL

Add this to your background.js or service_worker.js:

chrome.runtime.setUninstallURL(
  "https://browserstudio.xyz/userfeed/e/YOUR_SLUG"
);

Replace YOUR_SLUG with the slug shown on your form page. You can find it in the dashboard under Copy URL.

The URL can also be set inside onInstalled if you prefer it to run on every install:

chrome.runtime.onInstalled.addListener(() => {
  chrome.runtime.setUninstallURL(
    "https://browserstudio.xyz/userfeed/e/YOUR_SLUG"
  );
});

Testing locally

To test the uninstall URL during development:

  1. Load your extension as an unpacked extension at chrome://extensions.
  2. Make sure the background script has run (the service worker should be active).
  3. Click Remove on the extension card.
  4. A new tab should open with your UserFeed form.

Note: the tab only opens if setUninstallURL was called before the extension was removed. If the background script didn't run, reload the extension and try again.

Reading the dashboard

Once live, your dashboard shows:

  • Total responses — all-time submission count
  • Response rate — submissions ÷ form views × 100
  • Drop-off funnel — form opened → option selected → comment started → submitted
  • Volume over time — daily views and submissions for the last 30 days
  • Reason breakdown — bar chart of uninstall reasons sorted by frequency

A response rate above 15% is strong. Below 8% usually means the form is loading slowly or the question options don't match why users are actually leaving.