flowsk.com
Klaviyo attribution

Klaviyo attribution: why email 'drives' revenue it only witnessed

Klaviyo's default attribution credits a purchase to an email if the recipient opened or clicked within the window — even when a paid ad did the persuading and the email was just the last thing the customer happened to touch. It is last-click, on a channel that sits closest to the purchase by design.

Quick answer

Klaviyo-attributed revenue ⊃ revenue paid channels also claim

Add up Klaviyo's attributed revenue, Meta's, and Google's, and you will typically exceed total store revenue by 30–60%. Email sits closest to the checkout, so under last-touch it wins ties it did not earn — while the ad that created the subscriber gets nothing.

The fix is not to distrust email. It is to see the whole journey: which channel created the subscriber, and which one closed them.

Click id parameter

_kx

Default window

5-day click, 5-day open (configurable)

Maximum click window

Configurable per account

Typical over-report

+28%

Where the gap comes from

Four mechanics, each independently defensible, that compound into a number you cannot reconcile against your bank.

01

Last-touch by position

Flows fire when someone is already shopping. Crediting the last touch credits the channel with the best seat, not the best work.

What to do  Compare first-touch and last-touch side by side; the delta is the ad spend email is currently taking credit for.

02

Open-based attribution

Apple Mail Privacy Protection pre-fetches images, so opens are unreliable — and open-based credit inherits that unreliability.

What to do  Use click-based attribution only, and confirm the purchase server-side.

03

The subscriber's origin is missing

The most valuable question — which campaign paid for this subscriber? — is not in Klaviyo, because the subscriber existed before the email did.

What to do  Stitch the anonymous pre-signup journey to the email at the moment of capture. Then every future email revenue figure can be traced to the campaign that acquired the person.

04

Overlapping windows across tools

Klaviyo, Meta, Google and GA4 all claim the same order with different rules and no shared ledger.

What to do  One first-party dataset arbitrates, because it is the only one that sees every touch on one identity.

Klaviyo is not the villain here; it is a good tool being asked an unanswerable question. Only a dataset that sees paid, organic and email on one identity can say who earned the sale.

Frequently asked questions

Why does Klaviyo revenue overlap with Meta revenue?

Both use their own last-touch-ish rules and neither can see the other. The same order gets claimed twice. Summing channel reports always exceeds real revenue for exactly this reason.

Should I use click or open attribution in Klaviyo?

Click. Apple Mail Privacy Protection pre-fetches images and inflates opens, so open-based attribution credits emails nobody read.

How do I know which ad created an email subscriber?

Record the anonymous journey before the signup and bind it to the email at capture. That is the anonymous-to-known bridge; without it, subscriber acquisition source is unknowable after the fact.

What's a realistic email share of revenue?

It depends entirely on the model. Under last-touch, email routinely shows 25–35% of DTC revenue. Under first-touch, the same store often shows 8–15%. Neither is wrong; they answer different questions.

See the receipt for every conversion.

Flowsk Signals stitches the anonymous click to the email to the purchase — first-party, server-side, de-duplicated on a key you choose. One snippet, $29/mo, and a journey you can inspect event by event.