edgeglint is a privacy-aware, first-party web analytics tool for Cloudflare Workers and Analytics Engine that measures pageviews, interactions and performance without measurement cookies or visitor identifiers. It helps a first-time site owner see which pages attract attention, which buttons get used and where the experience breaks. It runs on Cloudflare Workers and Analytics Engine, with running costs of $0 within Cloudflare’s free allowances. I’m Sam Jacobson at Dataxad, and our own sites already run it. Our flagship public-source analytics project helps you improve a website without building visitor histories. The source is public; open-source licensing is still undecided, so check the reuse terms before adopting it.
Why this before a consent banner
Start at level 0 before choosing a tracking subscription or a consent form. Are people reaching the site? Which pages matter? Is a broken interaction costing us enquiries? edgeglint gives you pageviews, referrer-based visits, referral sources, routes, scroll depth, element clicks, JavaScript error counts, performance averages and screen-width groups. You can improve a landing page without following someone across visits. A visit here means a pageview whose referrer domain differs from your site, not a session.
The tradeoff is deliberate. You do not get unique visitors, returning-visitor histories or sessions. The current country rule stops measurement for the EEA, UK, Switzerland and related areas, unknown countries and Tor. Privacy signals and an explicit opt-out also stop collection. Your dashboard is a partial view of your audience. Width groups describe available screen space, not a confirmed device type. Later reports update the dashboard when scroll, LCP or CLS reaches a higher value; corrections use the later report time.
Climb only when a missing answer matters enough to justify extra data and work. Daily visitor counts would add a temporary identifier; wider coverage would need consent handling or a separately assessed French profile. These are plans, not switches you can enable today. This is not legal advice. The operator still owns the legal review of the actual deployment, including notices, retention, Cloudflare request logs and international transfers. Less collection does not guarantee freedom from a legal complaint.
| Level | Availability and tradeoff |
|---|---|
| 0 | Today: useful aggregate measurements, no visitor identifier, incomplete regional coverage. |
| 1 | Planned: daily unique browsers using a daily identifier, after separate legal review. |
| 2 | Planned: wider coverage after consent, or a restricted French profile after assessment. |
| 3 | Out of scope: replay and heatmaps in a separately reviewed external product. |
What edgeglint does not claim
edgeglint is not presented as GDPR compliant or banner-free, and this page is not legal advice. No measurement cookies and no visitor identifiers describe implementation choices, not a consent exemption or proof of anonymous data. The current country-code rule excludes measurement in the EEA, UK, Switzerland and related areas, unknown countries and Tor; it does not classify the law elsewhere. Cloudflare still handles requests and may keep operational logs. The operator must review the exact deployment, including fields, retention, notices, processor terms and international transfers, before enabling collection. The source is publicly readable, but the software license is undecided. Review the data-flow record and measurement levels for the factual boundaries and proposed features. Neither this page nor those records establishes approval for a particular site’s configuration or for another analytics product installed alongside it.
How it compares
This is a collection-model comparison, not a legal ranking. The research snapshot supplies the checked product boundaries. NV means not verified there, not absent. GA4 is outside that brief; its row uses the linked Google documentation checked on October 28, 2026. Cost cells use the linked vendors’ terms; check them before deployment.
| Tool | Identifiers | Cookies | EU visitors | Scroll / click / error data | Cost |
|---|---|---|---|---|---|
| Cloudflare Web Analytics | Unique-count method NV | No cookies or localStorage | Optional EU exclusion | No / no / no | Free |
| Plausible | Daily hash of salt, site, IP and User-Agent | None | No edgeglint-style regional block verified; assess deployment | Yes / NV / NV | Paid hosting; self-hosting costs |
| Google Analytics 4 | User and session IDs by default | First-party by default; can send without cookies | Consent configuration matters; not an automatic region block | 90% scroll / outbound clicks / error setup NV | Standard: free |
| Microsoft Clarity | Counting method NV | Consent required before cookies in EEA, UK, Switzerland | Regional cookie consent rule; not a blanket collection exclusion | NV / NV / NV in research; replay and heatmaps are separate features | Free |
| edgeglint | No visitor identifier | None for measurement; opt-out and dashboard login are separate | Empty script and dropped reports for excluded country codes | Yes / yes / yes, bounded fields | $0 within Cloudflare allowances; license undecided |
See the blog’s full comparison table and sources. Competitor settings, costs and legal assessments can change.
What it never collects
The README defines these dataset limits:
- IP addresses or raw User-Agent strings in the dataset.
- Measurement cookies, local storage or visitor identifiers.
- Pointer coordinates, cursor traces or session replay.
- Form contents, page text or query strings.
- Element IDs, CSS classes, attribute values or error messages.
The edge still processes request information for country checks, bot checks, rate limits and browser versions. Cloudflare operational logs are a separate system. The visitor opt-out cookie and dashboard authentication cookie serve different purposes from measurement.
How to install
Use the public repository and full installation instructions. These integration paths do not promise an unattended installation. Review the current reuse terms first.
Standalone Worker
- Enable Analytics Engine for your account; clone the repository and run
npm installwith Node.js 22 or later. - Set your same-origin
/api/t*route,SITESandROUTESinwrangler.jsonc, then runnpm run deploy. - Set the runtime secret with
npx wrangler secret put DASH_KEYand add the same-origin/api/t.jsscript to your layout.
The button format is documented; fresh-account installation has not been verified.
Astro on Cloudflare
- Build edgeglint and copy its source, including generated files, into
src/edgeglint/. - Copy the documented Cloudflare bindings and allowlists; add the two on-demand routes for
/api/tand/api/t.jsusing theastroadapter. - Set
DASH_KEYas a runtime secret and load/api/t.jsfrom your own domain; follow the README’s exact import paths.
Pages Functions
- Build and copy the source; configure Analytics Engine, the SQL binding, allowlists and the runtime secret.
- Add the documented
pagesadapter atfunctions/api/[[path]].js; check that its routing does not capture unrelated APIs. - Load the same-origin script and verify the deployed bindings; this page does not establish fresh-account Pages compatibility.
Read the research
Read the research and design decisions for the alternatives, privacy boundaries and deployment lessons. Our edgeglint blog post explains why Dataxad built it.
Status
The public package version is 0.2.0, checked on October 28, 2026. The license is still to be decided; public source visibility does not grant software reuse rights. Cloudflare’s pricing defines the Analytics Engine allowance; check Workers limits separately. Both dashboard images below show sample data, not production traffic or adoption evidence.
Frequently asked questions
Does edgeglint need a cookie banner?
edgeglint uses no measurement cookies or visitor identifiers and collects no measurements for the country codes excluded by its current rule, including the EEA, UK and Switzerland. This does not establish that a banner or consent is unnecessary elsewhere. The operator must review the deployed configuration, other scripts, notices and applicable rules before deciding how to handle consent.
Is GDPR compliance established for edgeglint?
We do not claim that edgeglint is GDPR compliant; a deployment-specific legal assessment is still required. Limited collection and regional exclusions reduce the data collected; they do not establish anonymous data or a legal exemption. The operator reviews report fields, retention, Cloudflare request logs, processor terms, international transfers and the laws that apply to the actual deployment.
What does edgeglint never collect?
The measurement dataset never contains IP addresses, raw User-Agent strings, visitor identifiers, query strings, page text, form contents, element IDs or CSS classes, attribute values, error messages, pointer coordinates, cursor traces or session replay. Request information still reaches Cloudflare and is processed at the edge for country checks, bot checks, rate limits and version extraction. Operational logs are separate from the dataset.
What does edgeglint cost?
Operation can cost $0 within Cloudflare Workers and Analytics Engine allowances. Higher usage or other Cloudflare services can cost money, so check the current platform terms. The source is publicly readable at no charge, but the software license is undecided; free platform capacity does not grant software reuse rights.
What happens to visitors from the EU, UK and Switzerland?
For Cloudflare request country codes in the EEA, UK, Switzerland and related excluded areas, edgeglint returns an empty tracker script and drops analytics reports. Unknown country codes and Tor are also excluded. The country code can differ from physical location. The page still loads through Cloudflare, which may process request information and keep operational logs. This is a product boundary, not a legal consent map.
How does edgeglint differ from Cloudflare Web Analytics, Plausible and Google Analytics 4?
edgeglint adds bounded scroll, element-click and JavaScript-error measurements to pageviews and performance, without a visitor identifier, and excludes entire regions. Cloudflare Web Analytics has Core Web Vitals but lacks those interaction measurements; Plausible uses a daily hash for visitor counting; GA4 normally uses cookies for users and sessions. None of these product choices settles the legal review. See the linked full comparison table for sources and limits.
How do I install edgeglint on Cloudflare Workers, Astro or Pages?
Follow the public repository setup guide for a standalone Worker, the Astro adapter on Cloudflare, or Pages Functions. Enable Analytics Engine, build the source, set bindings and site/path allowlists, add DASH_KEY as a runtime secret, and load the tracker from the same origin. Keep collection off until setup and deployment review are complete. These instructions do not establish fresh-account compatibility for all three paths.
What is the edgeglint license?
The license is undecided. The source is public on GitHub, but public visibility is not an open-source license or a grant of software reuse rights. Read the current repository terms before adopting or redistributing the code.