Metrivo
Core feature

Revenue Attribution

The foundation of Metrivo. Connect revenue to the traffic source and landing page your evidence supports, with unknown-source revenue clearly separated rather than assigned.

How attribution works

1

Visitor lands on your site

The tracking script creates an anonymous session and captures source data: referrer, UTM parameters (including any utm_term you tag), landing page, and device info. Organic search keywords are not disclosed by search engines and are never inferred.

2

Visitor converts and pays

When a payment succeeds (Stripe, Dodo, or manual API), our webhook receives the event with a customer identifier.

3

Revenue is matched to the session

Our attribution engine matches the payment to the visitor's session(s) using session IDs or custom identifiers. Multi-touch models handle return visitors correctly.

4

Dashboard shows attributed revenue

Your dashboard updates in real time. See revenue broken down by source, page, tagged campaign term, and time period, each with its confidence label. Filter, compare, and export.

Attribution capabilities

Source attribution

Every visitor session is tagged with source (direct, organic, social, referral, AI-search) and UTM parameters. Revenue is matched to session or customer evidence when available.

Page-level attribution

See which specific landing pages generate revenue — not just which got the most visits. Your /pricing page might drive 3x more revenue than your blog index.

Keyword attribution

Campaign links you tag with utm_term carry that term into the session and any revenue matched to it. Organic search engines do not disclose the query behind a visit, so an organic keyword is never attributed to a specific buyer. Search Console query data is reported separately as page-level aggregates.

Multi-touch attribution

Visitors often return multiple times before converting. We attribute revenue across sessions using first-touch, last-touch, and linear models — you choose what fits.

Real-time revenue dashboard

Revenue data updates in real-time as payments flow in from Stripe, Dodo, or manual API. No waiting for daily batch jobs to see what's working.

Server-side matching

Payment evidence arrives server-side through signed provider webhooks, so a blocked browser script does not stop a payment from being recorded. Matching that payment back to a traffic source still depends on session or customer evidence, which a blocked script can prevent — those payments are reported as unknown-source rather than guessed.

See which traffic your payment evidence supports

Install the tracking script in 60 seconds. Connect your payment provider. See attributed revenue by tomorrow.