Modules Compare Pricing FAQ Open Dashboard

You just triggered a page view

Every click below fires a real tracking event to Supabase. Enter your name, interact with the elements, then find your session in the dashboard.

Your name
Type your name to tag every event below. Then find yourself in the dashboard.
→ Watch it appear in the console Please choose a different name
Your dashboard trackInteraction()
Your data, your dashboard, your server

The Measr dashboard is a React app that connects directly to your Supabase project. Every chart, every metric, every session — sourced from rows you own.

Real-time sessions KPI sparklines 30-day trends Page-level breakdown
1,247
Page views
312
Sessions
68%
Scroll depth
Dashboard overview with KPIs, charts, and real-time session data. Everything you need at a glance.

Know exactly what gets tracked.

Every field, every module, fully transparent. No hidden data collection. No mystery payloads. This is the complete schema your SDK sends to your Supabase.

Shared dimensions
Sent with every event
FieldTypeDescription
session_iduuidAuto-generated per browser session
anonymous_iduuidPersistent visitor ID (localStorage)
sitestringYour site identifier
page_namestringCurrent page at time of event
device_categorystringDesktop or Mobile
geo_languagestringBrowser language (e.g. en-US)
geo_regionstringTimezone-based region
created_attimestampEvent timestamp (ISO 8601)
A
Page tracking
page_view
FieldTypeDescription
pageNamestringName of the current page
previousPageNamestringPrevious page (or "Entry")
originalReferrerstring|nullFirst page view only
queryParametersstring|nullURL query string, first page view only
B
Interactions
interaction
FieldTypeDescription
interaction.elementstringWhat was clicked (e.g. "CTA button")
interaction.namestringAction name (e.g. "signup_click")
interaction.click_count1Always 1 per event
C
Navigation
navigation
FieldTypeDescription
navigation.typestringNav category (main, footer, sidebar)
navigation.valuestringTarget page or link label
navigation.click_count1Always 1 per event
D
Exit links
exit_link
FieldTypeDescription
exit_link.urlstringFull outbound URL
exit_link.click_count1Always 1 per event
E
Scroll depth
scroll_depth
FieldTypeDescription
scroll.depthstringMilestone: 25%, 50%, 75%, or 100%
scroll.hit_count1Always 1 per milestone
F
Video
video
FieldTypeDescription
video.namestringVideo identifier
video.milestonestring0%, 25%, 50%, 75%, 90%, 100%
video.secondsnumberSeconds since previous milestone (delta)
video.start_count0|11 only at 0% milestone
video.90percent_count0|11 only at 90% milestone
video.hit_count1Always 1 per milestone
G
Errors
error
FieldTypeDescription
error.messagestringError message text
error.count1Always 1 per error
H
Downloads
download
FieldTypeDescription
download.namestringFile name
download.typestringFile extension (pdf, csv, etc.)
download.count1Always 1 per download
K
Form tracking
form_view / form_start / form_end
FieldTypeDescription
form.namestringForm identifier
form.view_count1Sent with form_view
form.start_count1Sent with form_start
form.end_count1Sent with form_end

19 modules are defined in the CDE Analytics Standard. 9 ship today. The remaining 10 are specified and ready. They ship as demand validates them.

Common questions trackInteraction()
Frequently asked questions
What does Measr track?
Page views, sessions, scroll depth, interactions, downloads, exit links, video engagement, forms, and errors. Nine modules, each with a defined event schema. You wire up what you need, ignore the rest.
What if I already use GA4 or another tracker?
Measr is a lightweight JavaScript SDK that writes directly to your Supabase database. It doesn't conflict with GA4, Plausible, Matomo, or any other tracking tool. Run them side by side.
How much does it cost?
€39 per month. As long as you pay, you get full access to the repository, product updates, security patches, and support. If you cancel, you keep the version you have — it stays running on your server.
Can I track multiple sites?
Yes. Pass a different siteId to Measr.init() on each site. All events land in the same Supabase project, filtered by site in the dashboard.
Is Measr GDPR-compliant?
Measr stores data in your own Supabase project — you control where the database lives. No data leaves your infrastructure, and no third-party cookies are set. You're the data controller, not us.
How do I set it up?
Clone the repo, configure your Supabase credentials, add one script tag, deploy. The whole process takes about 30 minutes. Or use the Claude Code setup skill below — it walks you through every step automatically.
Setup trackDownload()
Install with Claude Code
AI-guided setup in your terminal
The Measr setup skill walks Claude Code through your entire installation — Supabase config, migrations, SDK integration, and verification. One command, fully automated.
Requires a Measr license and Claude Code installed on your machine.
Walkthrough trackVideo()
See it in action

A quick walkthrough of the dashboard, from page views to form funnels.

Welcome video coming soon
Who built this trackExitLink()
Built by someone who spent 16 years cleaning up bad tracking

Measr isn't a weekend project. It's the distillation of every analytics implementation mistake I've seen, and the standard I built to stop making them.

Balázs Turán
Built by
Balázs Turán
Digital analytics consultant with 16 years in the field. Built analytics departments from scratch at Metro AG, designed tracking strategies for Zürcher Kantonalbank, and led Mazda Europe's GA4 migration. Measr is the CDE Analytics Standard, packaged as a product.
16+
Years in analytics
10+
Enterprise brands
50+
Analytics projects
Visit Creative Data Engineers
Stay updated trackForm*()
Get product updates and new features in your inbox.
No spam. Unsubscribe anytime.
Check your inbox to confirm.

That was real. Every click just landed in Supabase.
Your session is in the dashboard right now.

Open the dashboard
Live console
1 event