Start free
new

Worker-built script bundles

One opt-in URL that carries the core script plus only the add-ons you tick. Unused add-ons cost 0 bytes, and the core script never grows.

In every plan, including Free. Privacy and performance.

📘 Step-by-step guide, with screenshots and diagrams →

Start free, no cardOpen the demo

Worker-built script bundles: example screenshot with made-up demo dataWorker-built script bundles: example screenshot with made-up demo data
ExampleScreenshot with made-up demo data, not a real customer’s numbers.

What it is

On Manage, under the existing install tag, you can tick the add-ons a site needs. The Worker builds a single file at a new URL such as /js/script.events.forms.js. Custom events use the events script (which already includes pageviews) so the core is not added twice. The default tag, /js/script.js (845 B) and every existing add-on URL keep working exactly as they are.

Why it matters

The way to turn on extra features without making every site download every add-on, and without growing the core script.

How it works

  1. Copy the core tag if you only need pageviews — it is unchanged.
  2. To combine add-ons, open Manage, tick only what you need (custom events, forms, revenue, Web Vitals and the rest), and copy the bundle tag.
  3. Paste that one tag before </head>. Existing /js/events.js (and the other add-on URLs) still work if you prefer separate tags.

Privacy: what is and isn’t collected

Collected

  • Nothing new: the bundle is the same collectors you already have, in one file

Never collected

  • A list of which add-ons you ticked — the URL is built on request, nothing is stored
  • Anything extra about a visitor
  • Cookies, localStorage or anything else stored on the visitor’s device
  • IP addresses or user agents (used in memory, then discarded)
  • Anything that links a visitor across days (the visitor ID resets daily)

How quietstats works, and the legal caveats →

Rows and limits

  • New opt-in URL only; /js/script.js stays 845 B
  • Every existing add-on URL is unchanged, byte-for-byte
  • 0 extra rows
  • If you tick custom events, the bundle is events.js plus the other files, never core + events (that would count twice)

“Rows” are database rows written, which is what our hosting is billed on. Reads are not rows written. Methodology →

Questions

Is the core script replaced?

No. The default tag and /js/script.js stay as they are. The bundle is a new, optional URL.

Can I still use /js/events.js on its own?

Yes. Every existing add-on URL keeps working, byte-for-byte.

Does this write rows when someone downloads the bundle?

No. The Worker builds it in memory from the same files.

Related features

All features → · Sitemap →

Set it up

Nothing to set up: it works with the standard one-line script.

HTML
<script data-host="https://quietstats.co.uk" data-dnt="true" src="https://quietstats.co.uk/js/script.js" id="YOUR_SITE_ID" async defer></script>

Try it on your own site

Free during launch: one site and 5,000 pageviews a month, no card needed. After launch, paid plans start at £5 a month.

Start freeSee pricing