Skip to content

Revenue-first analytics

Know every visitor.Follow every dollar.

Weeveo shows where your visitors come from, what they do, and which ones pay, all in one calm dashboard. Add one tiny script, or hand one prompt to your agent.

  • Under 2 KB script
  • No cookie banner
  • Set up in 1 minute

Dashboard

Visitors
84,291
up31.7%
Pageviews
212,408
up24.1%

Visitors & revenue

4.9k3.3k1.6kAug 29Sep 7Sep 16Sep 27

Revenue attribution for the payment tools you already use

Everything you need to know what's working.

Traffic, behavior and revenue share one attribution model, so you can go from an anonymous click to a paid invoice without switching tools.

  • Revenue attribution
  • Identity stitching
  • 5 attribution models
  • Realtime visitors
  • Funnels
  • Session journeys
  • UTM tracking
  • MCP server
  • Anomaly detection
  • Cookieless mode
  • Under 2 KB tracker
  • Custom CNAME domain
  • FCP & CLS
  • Public dashboards
  • Embeddable badges
  • GDPR & CCPA

How it works

From click to cash.

  1. 01 · Discovery

    A visitor clicks your launch post.

    The tracker assigns a visitor ID and records the UTM touchpoint. No cookies needed.

    acme.com/pricing?utm_source=x&utm_campaign=launch
    Arrived from x.comFirst touch

    wv_vid = "v_1092"

    wv_sid = "s_88f1" // 30 min sliding window

    payload = 1.7 KB // sendBeacon, non-blocking

  2. 02 · Behavior

    They come back three times.

    Every pageview and custom event joins one journey, across sessions and days.

    Journey · v_1092

    3 sessions · 9 days
    1. $pageview /pricingSep 6 · 10:02
    2. $pageview /docs/mcpSep 6 · 10:04
    3. $pageview /changelogSep 11 · 18:40
    4. $click "Start annual plan"Sep 15 · 09:12
    5. checkout_initiated plan=pro_annualSep 15 · 09:12
  3. 03 · Checkout

    They start an annual plan.

    The visitor ID rides along into your checkout as the client reference.

    Secure checkout

    Weeveo Pro · annual

    $1,200

    Pay $1,200.00

    // tracker injects the visitor id into checkout

    stripe.checkout.sessions.create({

    client_reference_id: "v_1092",

    })

  4. 04 · Stitching

    Stripe's webhook fires.

    Weeveo matches the payment to the visitor, even when the webhook arrives first.

    POST /webhooks/stripe 200 · 6ms

    {

    "type": "checkout.session.completed",

    "customer_email": "ceo@acme.com",

    "client_reference_id": "v_1092",

    "amount_total": 120000

    }

    Webhook beat the redirect. Parked 15s in the reconciliation queue.
    Stitched: ceo@acme.com ⇄ v_1092
  5. 05 · Attribution

    Every dollar finds its source.

    Credit is shared across the whole journey with the model you choose.

    Attributed revenue · U-shaped

    $1,200

    x.com$480 · 40%
    google.com$120 · 10%
    substack.com$120 · 10%
    Direct$480 · 40%

Multi-touch attribution

Revenue, traced back to the click.

Weeveo passes the visitor ID into your checkout, matches it when the payment webhook fires, and replays every touchpoint that led to the sale. Switch models to see who gets the credit.

100% of revenue goes to the channel that first brought the visitor in. Best for: evaluating top-of-funnel acquisition.

  1. Touch 1 · Sep 2

    google.com

    organic

    /blog/attribution

    $1,200100%
  2. Touch 2 · Sep 6

    x.com

    utm_campaign=launch

    /pricing

    $00%
  3. Touch 3 · Sep 11

    substack.com

    utm_source=newsletter

    /changelog

    $00%
  4. Touch 4 · Sep 15

    Direct

    returning visit

    /pricing → /checkout

    $00%
  5. Purchase · Sep 15

    ceo@acme.com

    wv_vid = v_1092

    Annual plan

    $1,200

    100% attributed across 4 touches

Built for billions of events. Feels like none.

Tracker script
<2KB
Zero dependencies. Sent with sendBeacon so it never blocks your page.
Event ingestion
<10ms
Validated at the edge and inserted asynchronously.
Dashboard queries
<5ms
Pre-aggregated views, so a date range change feels instant.
Cookie banners
0
Cookieless mode hashes visitors daily. No consent needed.
Agent-first

Your agent installs it.You just read the numbers.

Paste one prompt into Claude Code, Cursor or Codex. It adds the tracker, wires your checkout for revenue attribution and confirms the first event. After that, ask questions in plain English through the Weeveo MCP server.

llms.txt setup.md
~/acme · claude-code · weeveo-mcp

MCP tools

  • get_revenue_attribution

    (projectId, dateRange, model, dimension)

    Revenue by source, campaign, referrer or landing page under any attribution model.

  • get_traffic_diagnostics

    (projectId, dateRange, comparisonRange)

    Changes in visitors, bounce rate, session duration and devices versus the comparison period.

  • analyze_funnel_bottlenecks

    (projectId, funnelId)

    The steps and pages responsible for the biggest drop-off.

  • query_customer_journey

    (projectId, customerEmail | transactionId)

    Every session, page and UTM touchpoint that led up to a purchase.

  • detect_anomalies

    (projectId, metric, lookbackDays)

    Z-score / IQR outliers such as traffic drops or broken payment webhooks.

Public dashboards

Growth worth sharing.

Turn any dashboard into a tokenized public page or a live badge for your site. Share pages are cached at the edge and styled like a magazine spread, so building in public looks good.

12.4kvisitors · weeveo$18.4krevenue · weeveo

acme.com is growing.

84,291

visitors in Septemberup31.7%
Pageviews
212k
Avg. session
2m 41s
Top source
google
Analytics by weeveoGet your own →

Simple pricing that grows with you.

Free forever up to 10k pageviews. Every plan includes revenue attribution and the agent layer.

Weeveo for your website
$19/ month

Billed monthly. Cancel anytime.

100K
Billing
  • Everything in Free, no badge
  • Unlimited websites
  • All 5 attribution models
  • All 9 payment gateways
  • Funnels, journeys & anomaly alerts
  • Public dashboards & embeds
Start 14-day trial

Questions, answered.

How does Weeveo connect a payment to a visitor?

The tracker adds the visitor ID (wv_vid) to your checkout as client_reference_id or checkout metadata. When the payment webhook fires, Weeveo matches the ID and credits every touchpoint in that visitor's history. If a webhook arrives before the checkout pageview, it waits in a short reconciliation queue so nothing is lost.

Which payment providers are supported?

Stripe, Dodo Payments, Lemon Squeezy, Paddle, Razorpay, Polar, Shopify, WooCommerce and PayPal. All of them are normalized into one transaction model, so reports look the same whichever you use.

Do I need a cookie banner?

Not in cookieless mode. Visitors are identified by a daily rotating SHA-256 hash, and IP addresses are dropped right after the geo lookup. If you want cross-session attribution, you can opt into a first-party ID instead.

Will the script slow my site down?

No. It is under 2 KB gzipped, has no dependencies, runs when the browser is idle, and sends data with sendBeacon. You can also serve it from your own subdomain through a custom CNAME.

Which attribution models are available?

First-touch, last-touch (non-direct), linear, U-shaped and time-decay. You can switch models on any report and the numbers recalculate instantly.

Can my AI agent really set it up and query it?

Yes. Paste the setup prompt into Claude Code, Cursor or Codex to install the tracker. Then connect the Weeveo MCP server so the agent can call tools like get_revenue_attribution, analyze_funnel_bottlenecks and detect_anomalies.

Is my data isolated from other customers?

Yes. Tenant isolation is enforced at the database level, and payment gateway keys are encrypted at rest with envelope encryption.

Find out which clicks pay.

It takes one minute to install and you get your first attributed dollar the same day.