TidyMetrics

Open source · No cookies (the tracking kind) · 3KB script

Find out who filled your money bag.

TidyMetrics is friendly little analytics for SaaS. It follows every Polar.sh order back to the link, campaign or in-app prompt that earned it — so you can stop guessing, and do more of the stuff that actually pays.

tidymetrics.io/dashboard
Go on, click around. Hover the chart, switch tabs, click a row to filter.
VisitorsRevenuevs previous period

Sources & channels

ChannelsVisitorsRevenue
Search1,018$2,862
Referral908$2,672
Direct610$2,462
AI assistants609$2,133
Social549$2,018
Email306$979

Pages

Top pagesViewsInfluenced
/3,939$9,742
/pricing1,755$5,028
/blog/attribution-1011,205$4,065
/docs975$3,159
/features882$2,510
/signup591$1,630
/changelog505$1,353
/about284$1,034

NudgeKit & in-app triggers

NameViewsCTRRevenue
Trial ending banner35031%$2,647
Usage limit modal27526%$2,352
Switch to annual16235%$1,616
Invite your team10725%$700

Locations & technology

CountriesVisitorsRevenue
United States1,446$5,302
Germany463$1,470
United Kingdom449$1,290
Canada322$1,244
India312$788
France268$504
Australia221$721
Netherlands205$790

Goals & custom events

NameUniquesTotalConv.
nudgekit_impression89489422%
nudgekit_click2612616.5%
nudgekit_dismiss2562566.4%
signup2262265.7%
demo_booked82822.1%

The real dashboard, with made-up numbers. We wish they were ours.

Watch the money find its way home.

Every coin knows where it came from. Each order flows back to the channel that first brought the buyer and the nudge that sealed the deal — straight into your bag.

Revenue attribution · last 30 days

live
In the bag
$0
news.ycombinator.com$0
google$0
newsletter$0
twitter.com$0
upgrade-banner-pro$0

Customer journey · alex@acme.dev

+$49
  1. 👋
    Lands from news.ycombinator.com
    Day 1 · first touch
  2. 👀
    Reads /pricing, then wanders off
    Day 1 · 2 pages
  3. 🔁
    Comes back via google
    Day 4
  4. ✨
    Clicks the upgrade-banner-pro nudge
    Day 6 · last nudge
  5. 💰
    Pays $49 on Polar.sh
    Credited: HN + upgrade-banner-pro

How it works

Three steps. About ten minutes, including coffee.

1

Add one script tag

Paste a 3KB snippet into your site. No cookies, no consent banner, no 40-page setup guide.

2

Pass it to checkout

Hand our visitor ID to Polar.sh checkout as metadata. One line. We'll show you which one.

3

See what paid

Every order gets linked to the source that brought the buyer and the last nudge they clicked.

Pageviews are cute. Revenue pays rent.

Most analytics tell you where traffic came from. TidyMetrics tells you where customers came from — and what they paid.

Revenue by source

Google, a newsletter, that one Reddit thread — see what each actually earned, not just how many clicks it sent.

💸 the good stuff
news.ycombinator.com
$2,940
google
$2,162
newsletter
$1,290
reddit.com/r/SaaS
$640

In-app nudges, measured

NudgeKit prompts are tracked automatically — views, clicks, upgrades and the money they won.

views6,200
clicks540
upgrades37
= $1,820 won ✨
🍪

Privacy by default

No cookies, no fingerprinting, no personal data unless you identify someone yourself. Your visitors stay strangers. Nice strangers.

Open source

★ star us, it makes the bag smile

Read the code, self-host it, or send a pull request. Your data stays yours.

$ git clone tidymetrics
$ npm run dev # that's it, really

Questions you might have

Do I need a cookie banner?
No. TidyMetrics doesn't set cookies or store personal data by default.
What payment providers work?
Polar.sh out of the box via webhook. Anything else can report payments with one JavaScript call.
Will it slow my site down?
The script is about 3KB and sends events in small batches. You won't notice it. Your Lighthouse score won't either.
Happy money bag mascot

He gets this excited every time someone pays.

Get it on GitHub →