Skip to content

Edgemetry

Cookie-free web analytics for your own sites, built on one Worker and one D1 database sized for the free tier

Edgemetry demo overview with visitor metrics, a 30-day chart, top pages, referrers and custom events

Edgemetry is self-hosted web analytics that counts visitors with a daily-salted hash instead of cookies; the README says this needs no consent banner under GDPR or ePrivacy. In the dashboard, clicking any row filters every panel at once.

Edgemetry is designed around D1's free limit of 100,000 row writes a day. Raw events go into hourly tables with no indexes, so a pageview costs one write. The tables are rolled up by cron and then dropped, which costs no row writes at all. The README puts the whole pipeline at roughly 1.2 row writes per pageview, plus 0.3 to 0.6 for the filter cube on a typical content site, against about four for a conventional indexed events table. The dashboard covers visitors, pageviews, views per visit, bounce rate and average time, each with a previous-period comparison, and breaks traffic down by page, entry and exit page, referrer, country, browser, OS, device, screen size and UTM tags. A Cmd+K palette searches all dimensions, and a realtime view shows the last 30 minutes. Custom events take one edgemetry('signup') call. One deployment tracks many sites, and owners can give a viewer read-only access to selected sites, so a client gets a login that shows only their own. A visitor is a SHA-256 hash of a daily salt, the site, the IP address and the user agent. The salt is deleted after two days and raw rows within 48 hours, leaving only aggregates. The tracker is about 2.1 KB and loads from your own hostname. The only outside request the project makes is a nightly release check from the Worker, and setting UPDATE_CHECK to off stops it.

Built for: Solo founders, indie developers and small agencies who want privacy-friendly analytics for a few sites without a subscription or a server

What you can use it for

  • Add cookie-free analytics to a SaaS marketing site or blog
  • Count signups and other custom events with one script call
  • Give clients read-only dashboards limited to their own sites
  • Replace a Plausible Cloud subscription for a handful of sites

Deploy

  • One-click · main path

    Branch main

  • CLI

    Branch main

    Wrangler creates the D1 database and, unlike the button, enables the workers.dev URL, so claim the instance right away, then add your own domain and turn workers.dev off.

    npm install
    npx wrangler deploy

The deploy button asks for no secrets. Afterwards you add a custom domain to the Worker, claim the instance at /setup, paste the snippet into your site and add a WAF rate limiting rule for /login.

What it needs to run

  • D1 databasesedgemetry

Good to know

There is no password reset flow for a lost owner password; POST-DEPLOY.md explains how to recover access through the database. /login has no built-in throttle, and the WAF rate limiting rule that compensates (Free includes one) cannot attach to a workers.dev hostname. Until the first account exists, /setup is open to anyone who finds the URL. Passwords use 15,000 PBKDF2 iterations to stay inside the Free 10 ms CPU limit, far below OWASP's 600,000. A visit means one visitor's pageviews within a UTC day, since no session ID is stored. Filtered views on busy sites can approach D1's daily read limit. The repository was created in July 2026 and has a single maintainer.

Cost on Cloudflare

Likely fits the free plan

Edgemetry is designed for Workers Free and uses one Worker, one D1 database and two cron triggers. At 10,000 visits a day the README estimates about 40,000 Worker requests and 50,000 D1 row writes, against Free limits of 100,000 each, and puts the ceiling near 20,000 visits a day. Since September 1, 2026, D1 queries on Free fail until midnight UTC once the account passes a daily row limit.

Source

The estimate is based on Cloudflare’s documented limits and the app’s configuration. What you pay depends on your usage and plan.

Where this comes from

An alternative to Fathom Analytics, GoatCounter, Google Analytics, Plausible Analytics, Simple Analytics, Vercel Web Analytics.

Listing history

  • Oct 2, 2026 · Edgemetry listed
  • OpenSEO Keyword Research with keyword volumes, CPC and intent, a search trend chart and SERP analysis

    Pay-as-you-go keyword research, rank tracking and site audits on your Cloudflare account, with an MCP server for agents

    Deploy
    CLI
    License
    MIT
    GitHub stars
    22.6k stars
    Last commit
  • Counterscale dashboard for one site over 90 days, with visitors, views, bounce rate, top paths and referrers

    Cookie-free web analytics you host in your own Cloudflare account, with tracker and dashboard in one Worker

    Deploy
    CLI
    License
    MIT
    GitHub stars
    2.2k stars
    Last commit
  • InsightFlare site overview with views, visitors, sessions, bounce rate, a 30-day trend and top pages and sources

    Cookie-free web analytics with funnels, UTM reports and real-time visitors, hosted in your own Cloudflare account

    Deploy
    One-click
    License
    MIT
    GitHub stars
    539 stars
    Last commit