Skip to content
Moderok
Dashboard

Analytics for browser extensions

See what your extension does after launch.

Installs, active users, custom events, and errors. No host permissions required.

npm install @moderok/sdk
See how it works

How it works

From code to context.

Install once. Then follow usage, compare events, and trace errors.

Connect the SDK.

Install the package, allow storage, and call Moderok.init at the top of your service worker. That is the whole setup.

  1. Connect the SDK.

    Install the package, allow storage, and call Moderok.init at the top of your service worker. That is the whole setup.

    manifest"permissions": ["storage"]workerModerok.init({ appKey })
  2. Follow usage over time.

    Daily, weekly, and monthly active users, installs, updates, uninstalls, net churn, and errors, on one chart.

    Moderok dashboard switching between extension usage metricsModerok dashboard switching between extension usage metrics
  3. Compare feature activity.

    Overlay the custom events your extension sends and see which features get used.

    Moderok dashboard comparing custom extension eventsModerok dashboard comparing custom extension events
  4. Inspect error context.

    Filter to errors, open a row, and read the full payload: message, stack, and the properties you attached.

    Moderok dashboard filtering and expanding an error eventModerok dashboard filtering and expanding an error event

Pricing

Same product. More events.

Every plan includes Trends, Events, Logs, and two years of history. Pick the event volume.

Start free
Free$0
1M events / month
Pro$29 / month
10M events / month
Team$149 / month
100M events / month

FAQ

Common questions.

Which browsers are supported?

Every Manifest V3 browser. Chrome, Edge, Brave, Arc, Opera, Vivaldi, and any other Chromium build, plus Firefox 109+.

What permissions do I need?

Just storage, which adds no install prompt. The SDK never asks for host_permissions and never touches page content, so your extension's permission warning stays exactly as it is.

What happens when the service worker stops?

Events survive it. The SDK batches events, persists the queue to chrome.storage.local, and retries with backoff when the network drops. When the worker wakes, it picks the queue back up.

Can I track my own events?

Yes. Call Moderok.track with a name and flat properties from the service worker, a popup, an options page, or a content script. Compare them in Events and open their payloads in Logs.

How big is the SDK?

5.7 kB gzipped with zero dependencies. It runs in the service worker, never touches the DOM, and sends batches in a single request with no CORS preflight.

Do you collect personal data?

No. Each install gets a random ID, and events carry browser, OS, locale, and extension version. Nothing else leaves the extension unless you send it with Moderok.track. Data is kept for two years, then deleted.