Analytics that will not get your extension pulled from the store
Conventional analytics snippets fetch their own JavaScript at runtime. Manifest V3 forbids that outright, and Mozilla reviewers reject it by hand. This is a package you bundle, so there is no remote code to explain away.
Built for extensions first
- Chrome and Firefox, one SDK
- The lifecycle differences are handled rather than documented away. Firefox forgets an uninstall URL when its event page unloads, so the SDK re-registers on every background start and you never find out.
- A queue that survives teardown
- Service workers are suspended after about thirty seconds idle. Events are written to storage before any send, so a teardown mid-flush costs nothing, and nothing is ever sent twice.
- Nothing personal, by construction
- A random identifier in your extension’s own storage, scoped to that extension alone. No cookies, no fingerprinting, and addresses are discarded after a country lookup.
- A store-policy answer you can paste
- The docs spell out what to declare for the Chrome Web Store User Data Policy, and what Mozilla’s reviewers look for.
What you get
Daily, weekly and monthly active users. Every event you track, with its trend. Cohort retention by the week each user first appeared. Installs against uninstalls, which is the number extension developers actually argue about.