3-line setup. Under ten minutes.
From zero to your first feedback row.
1. Sign up
Create an account. We generate a strong password and a one-time recovery code — save them when shown. We never send email.
2. Register your extension
From the dashboard, click + Register an extension. You'll need:
- Your extension's 32-character Chrome Web Store ID (from
chrome://extensionswith developer mode on, or the URL of your store listing). - A short slug (e.g.
my-extension) — used in your dashboard URL. - A display name.
You'll get back an API key like ef_live_4f7a…. Copy it now — we hash it server-side and won't show it again.
3. Drop in the SDK
Get the file: /sdk/ef-sdk.js. Place it next to background.js and add:
import { ExtensionFeedback } from "./ef-sdk.js";
ExtensionFeedback.init({
apiKey: "ef_live_4f7a…",
install: true, // opt-in: opens install page on first install (off if omitted)
uninstall: true, // on by default; pass false to skip the uninstall page
});
Both pages are independently optional. Set install: false (or omit) to skip the install page; set uninstall: false to skip wiring the uninstall URL.
The next time someone uninstalls your extension, Chrome opens https://extensionfeedback.com/u/<extId> and the feedback lands in your dashboard.
What permissions do I need?
Just "storage". The SDK uses chrome.runtime.setUninstallURL() and chrome.runtime.onInstalled, both permission-free, and writes a single 128-bit random ID to chrome.storage.local — so "storage" must be in your manifest. If you're adding it: it's a silent permission — no install warning, and it won't disable your extension on update.
Customize
From /dashboard/extensions/<slug> you can edit install and uninstall pages independently: headline, subhead, accent color, logo URL, reason chips, optional microsurvey, optional CTA button. Changes are live immediately.