Updated 20 October 2026

Docusaurus analytics

Privacy-first, cookieless analytics for Docusaurus: one entry in docusaurus.config.js, and every doc page you navigate to is counted.

In short

  • One entry in scripts of docusaurus.config.js, which Docusaurus puts on every page.
  • Docs navigation is client-side routing, and it is counted by itself.
  • No cookie banner needed in cookieless mode, no IP address stored, and nothing loaded from another company.

Install on Docusaurus#

Use your own site id and server address in the code below. On trckable Cloud the address is https://cloud.trckable.com.

Add the script to the scripts array of the config. Docusaurus passes the object's keys to the tag as attributes:

// docusaurus.config.js
export default {
  // ...
  scripts: [
    {
      src: 'https://stats.example.com/js/tkb_a1b2c3d4.js',
      defer: true,
      'data-site': 'tkb_a1b2c3d4',
      'data-domain': 'example.com',
    },
  ],
}

Open your site once, then run npx trckable doctor --host https://stats.example.com --site tkb_a1b2c3d4 --url https://example.com. It only reads, and tells you whether the tag is on the page and the server answers.

What to know about Docusaurus#

  • Docusaurus is a single-page app over pre-rendered HTML. The tag is in the built pages and moving between docs uses the history API, which trckable counts.
  • Test it on a build. Run docusaurus build and serve it, because docusaurus start is on localhost and trckable ignores localhost.
  • Sidebar and version changes are normal navigation, so each doc version and page shows up as its own page.
  • Referrers show where readers come from, so you can see which docs people arrive at from search or from other sites.

Goals and revenue#

A goal needs no code: put an attribute on the element and each click is counted.

<button data-trckable-goal="signup" data-trckable-goal-plan="pro">Start trial</button>

Connect Stripe, Paddle, Lemon Squeezy, Polar or Dodo Payments with one key, and each payment is credited to the visit that earned it, so revenue shows next to traffic. See revenue attribution.

Questions#

Is there a Docusaurus plugin?
No, and scripts is the framework's own, documented way to add a script to every page.
Do I need a cookie banner on my Docusaurus site?
Not for the counting itself. In cookieless mode (add data-cookieless to the tag) nothing is stored on the visitor's device and no IP address is kept. Whether your site needs a banner for other reasons is a question for your own situation; the cookie banner guide explains the rules in plain words.
Can ad blockers stop it?
A blocker can block any script, and trckable does not claim otherwise. Sending events through your own domain removes the separate analytics file a blocklist would match by name, which is the accurate setup. The same-origin proxy guide shows how.
Is it free for a Docusaurus site?
The server is open source and free to self-host, and the tracker is MIT licensed. If you would rather not run a server, trckable Cloud runs it for you; the plans are on the pricing page.

Keep reading#

Other stacks#

Start free