20 features available today

Everything you get with quietstats

Traditional web analytics, drawn boldly. Every feature below is in every plan, including Free.

Start free, no cardOpen the live demo

Available now

Live visitors now

A pulsing counter of unique visitors in the last 5 minutes, refreshed every 30 seconds while the dashboard is open.

23 visitors now

Hero trend chart

A big gradient area chart with smooth curves and hover details. Tap any headline card to switch between visitors, pageviews, visits, views per visit, bounce rate and visit duration.

02,5005,0007,50010.0k 30 Sept4 Oct8 Oct12 Oct16 Oct20 Oct30 Sept: 1,019 visitors · 3,046 pageviews1 Oct: 942 visitors · 2,660 pageviews2 Oct: 975 visitors · 2,933 pageviews3 Oct: 622 visitors · 1,951 pageviews4 Oct: 762 visitors · 2,440 pageviews5 Oct: 1,062 visitors · 2,935 pageviews6 Oct: 1,122 visitors · 3,172 pageviews7 Oct: 1,182 visitors · 3,839 pageviews8 Oct: 1,045 visitors · 2,921 pageviews9 Oct: 895 visitors · 2,900 pageviews10 Oct: 786 visitors · 2,400 pageviews11 Oct: 863 visitors · 2,634 pageviews12 Oct: 1,080 visitors · 3,001 pageviews13 Oct: 1,367 visitors · 4,325 pageviews14 Oct: 1,369 visitors · 3,861 pageviews15 Oct: 1,319 visitors · 4,250 pageviews16 Oct: 1,192 visitors · 3,261 pageviews17 Oct: 965 visitors · 2,621 pageviews18 Oct: 869 visitors · 2,616 pageviews19 Oct: 1,554 visitors · 5,094 pageviews20 Oct: 1,484 visitors · 4,542 pageviews

Headline cards with sparklines

Six key numbers, each with a sparkline and a ▲/▼ change against the previous period of the same length.

Bounce rate

The share of visits that saw one page. Visits are grouped cookie-free: same daily hash, pageviews less than 30 minutes apart.

Average visit duration

Time from the first to the last pageview of each visit, shown as minutes and seconds.

Top pages

Views and unique visitors for every page, with mini bars so the winners jump out.

Views
/32.4k
/pricing13.4k
/blog/cookie-free-analytics11.4k
/features8,583

Entry and exit pages

Where visits start and where they end, so you know which pages pull people in and which ones lose them.

Visits
/12.2k
/blog/cookie-free-analytics5,437
/pricing3,199

Sources and channels

Referrers with recognisable icons, grouped into Direct, Search, AI, Social, Referral, Email and Paid.

Search 36%Direct 31%Social 23%AI 4.3%Email 3.0%Other 3.5%36%Search
  • Search36%
  • Direct31%
  • Social23%
  • AI4.3%
  • Email3.0%
  • Other3.5%

AI search referrals

new

Visits sent by ChatGPT, Perplexity, Gemini, Grok, Claude and Copilot get their own “AI” channel. (Google AI Overviews and Grok inside X arrive as google.com and x.com, so they show under Search and Social.)

Visitors
𝕏chatgpt.com800
Pperplexity.ai384
Ggemini.google.com192

UTM campaigns

utm_source, utm_medium and utm_campaign in one tidy table. ?ref= links work too.

newsletteremail960
xsocial800
googlecpc480

World map and countries

A shaded world map plus flags and share of visitors by country, from Cloudflare’s country header (no IP lookup stored).

Canada: 960 visitorsUnited States: 6077 visitorsSouth Africa: 256 visitorsMexico: 192 visitorsBrazil: 384 visitorsFrance: 1279 visitorsNigeria: 192 visitorsIndia: 800 visitorsSweden: 480 visitorsGermany: 1599 visitorsNetherlands: 1119 visitorsSpain: 640 visitorsIreland: 1919 visitorsAustralia: 896 visitorsUnited Kingdom: 13114 visitorsJapan: 320 visitors

When-they-visit heatmap

Weekday by hour (UTC), darker squares for busier times.

Mon 00:00 UTC – 52 pageviewsMon 01:00 UTC – 50 pageviewsMon 02:00 UTC – 45 pageviewsMon 03:00 UTC – 55 pageviewsMon 04:00 UTC – 57 pageviewsMon 05:00 UTC – 44 pageviewsMon 06:00 UTC – 62 pageviewsMon 07:00 UTC – 124 pageviewsMon 08:00 UTC – 222 pageviewsMon 09:00 UTC – 292 pageviewsMon 10:00 UTC – 440 pageviewsMon 11:00 UTC – 460 pageviewsMon 12:00 UTC – 580 pageviewsMon 13:00 UTC – 651 pageviewsMon 14:00 UTC – 588 pageviewsMon 15:00 UTC – 469 pageviewsMon 16:00 UTC – 385 pageviewsMon 17:00 UTC – 340 pageviewsMon 18:00 UTC – 172 pageviewsMon 19:00 UTC – 325 pageviewsMon 20:00 UTC – 306 pageviewsMon 21:00 UTC – 263 pageviewsMon 22:00 UTC – 211 pageviewsMon 23:00 UTC – 51 pageviewsMonTue 00:00 UTC – 55 pageviewsTue 01:00 UTC – 53 pageviewsTue 02:00 UTC – 57 pageviewsTue 03:00 UTC – 53 pageviewsTue 04:00 UTC – 45 pageviewsTue 05:00 UTC – 57 pageviewsTue 06:00 UTC – 58 pageviewsTue 07:00 UTC – 104 pageviewsTue 08:00 UTC – 210 pageviewsTue 09:00 UTC – 325 pageviewsTue 10:00 UTC – 477 pageviewsTue 11:00 UTC – 475 pageviewsTue 12:00 UTC – 659 pageviewsTue 13:00 UTC – 652 pageviewsTue 14:00 UTC – 523 pageviewsTue 15:00 UTC – 589 pageviewsTue 16:00 UTC – 476 pageviewsTue 17:00 UTC – 318 pageviewsTue 18:00 UTC – 213 pageviewsTue 19:00 UTC – 334 pageviewsTue 20:00 UTC – 258 pageviewsTue 21:00 UTC – 268 pageviewsTue 22:00 UTC – 216 pageviewsTue 23:00 UTC – 47 pageviewsTueWed 00:00 UTC – 49 pageviewsWed 01:00 UTC – 53 pageviewsWed 02:00 UTC – 47 pageviewsWed 03:00 UTC – 54 pageviewsWed 04:00 UTC – 46 pageviewsWed 05:00 UTC – 56 pageviewsWed 06:00 UTC – 72 pageviewsWed 07:00 UTC – 105 pageviewsWed 08:00 UTC – 179 pageviewsWed 09:00 UTC – 309 pageviewsWed 10:00 UTC – 476 pageviewsWed 11:00 UTC – 491 pageviewsWed 12:00 UTC – 565 pageviewsWed 13:00 UTC – 588 pageviewsWed 14:00 UTC – 682 pageviewsWed 15:00 UTC – 551 pageviewsWed 16:00 UTC – 375 pageviewsWed 17:00 UTC – 285 pageviewsWed 18:00 UTC – 221 pageviewsWed 19:00 UTC – 316 pageviewsWed 20:00 UTC – 288 pageviewsWed 21:00 UTC – 253 pageviewsWed 22:00 UTC – 254 pageviewsWed 23:00 UTC – 53 pageviewsWedThu 00:00 UTC – 54 pageviewsThu 01:00 UTC – 51 pageviewsThu 02:00 UTC – 45 pageviewsThu 03:00 UTC – 46 pageviewsThu 04:00 UTC – 47 pageviewsThu 05:00 UTC – 56 pageviewsThu 06:00 UTC – 67 pageviewsThu 07:00 UTC – 130 pageviewsThu 08:00 UTC – 217 pageviewsThu 09:00 UTC – 347 pageviewsThu 10:00 UTC – 432 pageviewsThu 11:00 UTC – 484 pageviewsThu 12:00 UTC – 543 pageviewsThu 13:00 UTC – 635 pageviewsThu 14:00 UTC – 563 pageviewsThu 15:00 UTC – 508 pageviewsThu 16:00 UTC – 363 pageviewsThu 17:00 UTC – 294 pageviewsThu 18:00 UTC – 210 pageviewsThu 19:00 UTC – 360 pageviewsThu 20:00 UTC – 297 pageviewsThu 21:00 UTC – 221 pageviewsThu 22:00 UTC – 245 pageviewsThu 23:00 UTC – 49 pageviewsThuFri 00:00 UTC – 46 pageviewsFri 01:00 UTC – 52 pageviewsFri 02:00 UTC – 51 pageviewsFri 03:00 UTC – 55 pageviewsFri 04:00 UTC – 52 pageviewsFri 05:00 UTC – 44 pageviewsFri 06:00 UTC – 67 pageviewsFri 07:00 UTC – 130 pageviewsFri 08:00 UTC – 170 pageviewsFri 09:00 UTC – 290 pageviewsFri 10:00 UTC – 398 pageviewsFri 11:00 UTC – 556 pageviewsFri 12:00 UTC – 639 pageviewsFri 13:00 UTC – 673 pageviewsFri 14:00 UTC – 650 pageviewsFri 15:00 UTC – 510 pageviewsFri 16:00 UTC – 472 pageviewsFri 17:00 UTC – 307 pageviewsFri 18:00 UTC – 219 pageviewsFri 19:00 UTC – 290 pageviewsFri 20:00 UTC – 246 pageviewsFri 21:00 UTC – 280 pageviewsFri 22:00 UTC – 207 pageviewsFri 23:00 UTC – 50 pageviewsFriSat 00:00 UTC – 28 pageviewsSat 01:00 UTC – 34 pageviewsSat 02:00 UTC – 28 pageviewsSat 03:00 UTC – 30 pageviewsSat 04:00 UTC – 25 pageviewsSat 05:00 UTC – 33 pageviewsSat 06:00 UTC – 34 pageviewsSat 07:00 UTC – 70 pageviewsSat 08:00 UTC – 123 pageviewsSat 09:00 UTC – 162 pageviewsSat 10:00 UTC – 242 pageviewsSat 11:00 UTC – 344 pageviewsSat 12:00 UTC – 381 pageviewsSat 13:00 UTC – 322 pageviewsSat 14:00 UTC – 307 pageviewsSat 15:00 UTC – 290 pageviewsSat 16:00 UTC – 260 pageviewsSat 17:00 UTC – 195 pageviewsSat 18:00 UTC – 116 pageviewsSat 19:00 UTC – 206 pageviewsSat 20:00 UTC – 192 pageviewsSat 21:00 UTC – 152 pageviewsSat 22:00 UTC – 118 pageviewsSat 23:00 UTC – 28 pageviewsSatSun 00:00 UTC – 33 pageviewsSun 01:00 UTC – 33 pageviewsSun 02:00 UTC – 32 pageviewsSun 03:00 UTC – 31 pageviewsSun 04:00 UTC – 30 pageviewsSun 05:00 UTC – 33 pageviewsSun 06:00 UTC – 41 pageviewsSun 07:00 UTC – 62 pageviewsSun 08:00 UTC – 114 pageviewsSun 09:00 UTC – 200 pageviewsSun 10:00 UTC – 237 pageviewsSun 11:00 UTC – 266 pageviewsSun 12:00 UTC – 334 pageviewsSun 13:00 UTC – 385 pageviewsSun 14:00 UTC – 403 pageviewsSun 15:00 UTC – 312 pageviewsSun 16:00 UTC – 266 pageviewsSun 17:00 UTC – 177 pageviewsSun 18:00 UTC – 133 pageviewsSun 19:00 UTC – 211 pageviewsSun 20:00 UTC – 180 pageviewsSun 21:00 UTC – 132 pageviewsSun 22:00 UTC – 121 pageviewsSun 23:00 UTC – 34 pageviewsSun0006121823

Hour of day (UTC). Darker = busier.

Devices, browsers, OS and screens

Donut charts for device type, browser and operating system, plus common screen sizes.

Mobile 58%Desktop 36%Tablet 6.0%58%Mobile
  • Mobile58%
  • Desktop36%
  • Tablet6.0%

Any date range

Today, 7, 30 or 90 days, 12 months, or any custom range up to 400 days, always compared with the period before.

Today7 days30 days12 months

Multiple sites

Up to 50 sites on one account, each with its own dashboard, install code and a “Receiving data” check.

Receiving data

Single-page apps

React, Next.js, Vue and other SPAs are tracked automatically through history changes.

Under 1 KB script

About 0.8 KB minified and roughly 0.5 KB gzipped. Async, never blocks your page.

845 bytes, vs a 1 KB budget

Zero cookies, privacy built in

No cookies or device storage, no stored IP addresses or user agents, daily-rotated hashes, bot filtering, and Do Not Track and Global Privacy Control respected.

Stats API

new

Read-only REST API with Bearer keys: aggregates with comparison, timeseries by hour/day/week/month, breakdowns by every property (including the AI channel) and realtime visitors. JSON or CSV, filters, pagination, an OpenAPI spec. API docs →

GET /api/v1/aggregate?site=…&period=30d

Simple GBP billing

Monthly or yearly plans through Stripe Checkout. Upgrade, downgrade or cancel yourself in the Stripe customer portal.

See it with real charts

The demo dashboard uses made-up demo data so you can click around.

Open the demo

Coming soon

On our roadmap and not available yet. Priorities can change.

Weekly story email

next up

A plain-English email every Monday: what changed, why, and what to do next.

Shareable stats cards

next up

One tap turns any chart or number into a good-looking image for X, LinkedIn or a report.

“No cookies, UK-hosted” trust badge

next up

A small badge for your footer that links to a live privacy explainer.

Live visit map with calm night mode

planned

Watch visits land on a glowing map in real time, with a dark mode for wall screens.

Spike alerts with the reason

planned

Phone, email or Slack alerts when traffic jumps, and why (“Reddit post on /pricing”).

Public stats page

planned

An optional public page at yoursite/stats for open-startup style transparency.

Carbon score per page

planned

An estimate of each page’s weight and carbon, with tips to make it lighter.

Content decay warnings

planned

A heads-up when a page that used to bring traffic starts to fade.

No-code goals

planned

Click any element on your site to make it a goal. No code, no cookies.

Revenue view via Stripe

planned

See which pages and sources bring paying customers, still cookie-free.

Agency mode

planned

White-label client dashboards and automatic monthly PDF reports.

Ask your stats

planned

Type a question in plain English and get the answer as a chart.

One-minute import

planned

Bring your history across from Google Analytics or Plausible.

Compare plans

FreeStarterGrowthBusiness
Monthly£0£5£12£29
Yearly£0£50£120£290
Pageviews / month5k50k250k1M
Sites152050
Every chart and metric✓✓✓✓
AI search referrals✓✓✓✓
UTM campaigns✓✓✓✓
Live visitors✓✓✓✓
No cookies, no banner✓✓✓✓
Start freeChooseChooseChoose

Prices in GBP. Yearly = 2 months free. Recording pauses at 120% of your allowance; data is never deleted for going over.

Private by design

How it works, and the legal caveats →

Questions

Does quietstats use cookies?

No. The tracking script sets no cookies and uses no localStorage, sessionStorage or IndexedDB. The only cookie in the product is the login cookie for the quietstats dashboard itself, on our own domain, for people who sign in.

Do I still need a cookie banner?

quietstats does not store anything on your visitors' devices, so it does not add cookies that a banner would need to cover. Whether you need a banner depends on everything else on your site (embeds, ads, chat widgets, other analytics). The script does read the screen size from the browser, so please read our How it works page, mention quietstats in your privacy notice, and take your own advice if you are unsure.

How do you count unique visitors without cookies?

For each pageview we compute a one-way hash of a random daily salt, your site ID, the visitor's IP address and user agent. Only the first 16 characters of the hash are stored. The IP address and user agent are never written to the database, and the salt is deleted after a day, so the same person cannot be linked across days.

How are bounce rate and visit duration measured?

A visit is a run of pageviews from the same daily hash no more than 30 minutes apart. Bounce rate is the share of visits with a single pageview. Visit duration is the time between the first and last pageview in a visit, so single-page visits count as 0 seconds (the same approach most cookie-free tools use).

How big is the script?

Under 1 KB minified (about 0.5 KB gzipped). It loads asynchronously and never blocks rendering.

Can I cancel any time?

Yes. Paid plans are monthly or yearly subscriptions through Stripe and you can upgrade, downgrade or cancel from the billing page. Cancelling keeps your plan until the end of the period you paid for.

All FAQs →

Beautiful analytics, without the cookies

Free for 5,000 pageviews a month. Paid plans from £5.

Start freeSee pricing