Self-hosted web analytics in your own Cloudflare account.
Buy once, deploy in minutes: a privacy-first Google Analytics alternative — a ~1 KB cookieless tracker and one dashboard for every site you own. The raw data lands in your own Analytics Engine dataset, with nobody in between.
- Self-deployed
- Unlimited sites
- Zero cookies
- ~1 KB script
Lighter than your favicon.
Most analytics scripts cost your users 45 KB before the page even settles. Ours is a rounding error your visitors will never feel.
39× lighter · served from your own edge
The dashboard, in full.
Paste one line of HTML per site. Ten seconds later, this is what you see.
saasflare.dev
Metrics are estimates (Analytics Engine sampling).
- Direct27,48057%
- Google9,64120%
- GitHub6,26813%
- Hacker News4,81210%
- 🇺🇸 United States15,42032%
- 🇨🇳 China8,19017%
- 🇩🇪 Germany5,30011%
- 🇬🇧 United Kingdom4,3409%
- 🇮🇳 India3,8608%
- Other (42)11,09123%
- Chrome31,33065%
- Safari7,23015%
- Firefox5,78012%
- Edge2,8906%
- Other9712%
- desktop38,08079%
- mobile10,12121%
The live dashboard on a 7-day range — shown with demo data.
From tag to chart in three moves.
Paste one line of HTML, and the whole pipeline — from visitor to chart — runs inside your own Cloudflare account.
<script defer
src="https://analytics-server.your-account.workers.dev/tracker.js"
data-website-id="your-site">
</script>Embed
Paste one <script> tag into your site. No SDK, no build step, no npm install — anything that serves HTML is ready.
Collect
A public edge endpoint validates the origin, fills in country, device and browser from the request, hashes the visitor with a daily salt, and writes one row to your Analytics Engine dataset.
See
The dashboard turns those rows into KPI cards, a views/visitors trend, and breakdowns by page, referrer, country, browser and device.
Counts people, not identities.
No cookies and no cross-site identifier ever touch the browser. A visitor is a one-way hash of IP + user-agent + a salt that rotates every midnight, scoped to your site — enough to de-dupe today, impossible to track tomorrow. Nothing personal is stored, so GDPR consent banners simply don't apply.
// daily-rotating, never reversible
visitor = sha256(ip + user_agent + daily_salt + site_id)
// no cookie · no PII · no consent bannerIt's your dataset. Query it yourself.
Every hit is a row in your own Analytics Engine dataset. The dashboard is one client — Cloudflare's SQL API means you can always go straight to the source with your own token.
-- Your Analytics Engine dataset, queried with your own Cloudflare token.
SELECT blob4 AS referrer,
SUM(_sample_interval) AS views
FROM analytics
WHERE index1 = 'your-site'
AND timestamp > NOW() - INTERVAL '7' DAY
GROUP BY referrer
ORDER BY views DESC
LIMIT 10;The details that keep the numbers honest.
Edge-enriched dimensions
Country, region, city, ASN, browser, OS and device are filled in at the edge from the request itself — nothing is ever read from the client.
Sampling-aware counts
High-traffic numbers are restored from Analytics Engine's sample interval and clearly marked as estimates, so you always know what you're looking at.
Multi-domain & sub-domains
One site can own many hostnames, wildcards included. Read the whole family on one chart or slice down to a single sub-domain.
Sessions & time-on-page
Beyond pageviews: unique visitors, sessions and time-on-page, computed at the edge without any client-side state.
One tiny script, a lot of answers.
Multi-project indie hackers
Five products, one deployment, one screen. Stop paying per site for the privilege of checking your own numbers.
Indie SaaS landing pages
Know which launch — HN, X, a newsletter — actually sent the visitors who stuck around.
Campaign measurement
Tag links with UTMs, watch each campaign's traffic separate itself automatically.
Global products
Drill from country to city to decide what to localize next.
Buy once. Own it forever.
Buy the Analytics source on its own, or choose the PRO or MAX bundle.
- Complete Analytics source code
- Deploy to your Cloudflare account
- One seat in the private repository
- Lifetime Analytics updates
- Everything in STARTER
- Private GitHub repo seat + all product source code
- Notify — webhook-to-desktop alerts
- Analytics — 1KB privacy-first analytics
- Tasks — long tasks that survive reloads
- Affiliate — referral system
- Smart Wallet — stablecoin payments & payroll
- Lifetime free updates to ALL current products
- Priority email support · < 24h
- PRO — every current product, lifetime free updates
- SaaS-optimized LLC US company structure
- Wyoming LLC + EIN + registered agent
- 1-on-1 Lili US bank account opening
- 1-on-1 Stripe onboarding guidance
- VoIP US phone number
- US business address (yr 1)
- Architecture review on request
Follow what we’re building.
We’ll only email you when we have a product update or industry news genuinely worth your attention. No inbox noise—only content that’s useful to you.