Strategy 13 min read

Email Marketing Attribution: How to Accurately Measure Your Email Revenue

By Excelohunt Team ·
Email Marketing Attribution: How to Accurately Measure Your Email Revenue

Here’s a question that starts arguments in every e-commerce brand: “How much revenue does email actually generate?”

Ask Klaviyo, and it might say email drove $200,000 last month. Ask Google Analytics, and it says $85,000. Ask Shopify, and it says $110,000. Three platforms, three different numbers, zero clarity.

The problem isn’t that these platforms are lying. The problem is that each uses a different attribution model — a different set of rules for deciding which marketing channel gets credit for a sale. Understanding these models is the difference between making smart decisions about your marketing budget and flying blind.

We’ve seen brands over-invest in email because Klaviyo’s numbers looked incredible, and we’ve seen brands under-invest because Google Analytics gave email almost no credit. Both mistakes cost real money.

Here’s how attribution actually works, how to configure it properly, and how to get a realistic picture of your email revenue.

Key Takeaways

  • Klaviyo’s default attribution window is 5 days for opens and clicks — this is generous and likely over-counts email revenue by 15-30%
  • Google Analytics uses last-click attribution by default, which under-counts email by 20-40%
  • The truth is somewhere in the middle, and the “right” model depends on your business
  • Multi-touch attribution gives the most accurate picture but is complex to implement
  • Incrementality testing is the gold standard for measuring true email impact
  • Adjusting Klaviyo’s attribution window to 1-day open / 5-day click is a reasonable middle ground for most brands

How Attribution Works: The Basics

Attribution answers one question: when a customer makes a purchase, which marketing touchpoint gets the credit?

Consider this real scenario:

  1. Monday: Customer sees a Facebook ad, clicks through, browses your site
  2. Tuesday: Customer opens your promotional email, clicks through, adds a product to cart, leaves
  3. Wednesday: Customer Googles your brand name, clicks your site, and completes the purchase

Who gets credit for the $150 sale?

  • Facebook says: “I drove awareness and the first visit.”
  • Email says: “I drove engagement and the add-to-cart.”
  • Organic search says: “I drove the final conversion.”

Each is partially right. The attribution model determines how the credit is divided.

Common Attribution Models

Last-Click Attribution

How it works: 100% of credit goes to the last channel the customer clicked before purchasing.

In our scenario: Organic search gets full credit. Email gets nothing.

Who uses this: Google Analytics (default), most Shopify analytics.

Impact on email: Severely under-counts email revenue. Email is often a middle-funnel touchpoint — it nurtures and drives intent, but the final click might come from direct traffic or organic search. Under last-click, email often appears responsible for only 8-15% of revenue.

Last-Touch (Open or Click) Attribution

How it works: Credit goes to the last channel that had any touchpoint (including opens, not just clicks) within a defined time window before purchase.

In our scenario: Email gets credit (the customer opened and clicked the email on Tuesday, which is within the attribution window of the Wednesday purchase).

Who uses this: Klaviyo (default).

Impact on email: Over-counts email revenue. If someone opens an email on Monday and purchases on Friday through a different channel, email still gets credit. With Klaviyo’s default 5-day open window, this captures a lot of purchases that email influenced but didn’t directly drive.

First-Click Attribution

How it works: 100% of credit goes to the first channel the customer interacted with.

In our scenario: Facebook gets full credit.

Impact on email: Usually under-counts email since email rarely introduces a customer to a brand — it nurtures existing relationships.

Linear Attribution

How it works: Credit is split equally among all touchpoints.

In our scenario: Facebook, Email, and Organic Search each get $50 (one-third credit).

Impact on email: Generally gives email a fair share, but dilutes the impact of the channel that actually tipped the decision.

Time-Decay Attribution

How it works: More credit goes to touchpoints closer to the purchase.

In our scenario: Organic search gets the most credit, email gets moderate credit, Facebook gets the least.

Impact on email: Reasonable for email when it’s a mid-to-late funnel touchpoint, which it often is.

Klaviyo’s Attribution Model: What You Need to Know

Klaviyo uses a last-touch attribution model with configurable time windows. Here’s how it works:

Default Settings

  • Email opened attribution window: 5 days. If someone opens an email and purchases within 5 days, email gets credit.
  • Email clicked attribution window: 5 days. If someone clicks a link in an email and purchases within 5 days, email gets credit.
  • SMS clicked attribution window: 5 days. Same logic for SMS.

How Klaviyo Assigns Credit

  1. Klaviyo looks at all touchpoints (email opens, email clicks, SMS clicks) within the attribution windows
  2. The most recent touchpoint gets 100% of the credit
  3. Clicks take priority over opens if both happen within the window
  4. If a customer clicked an email AND clicked an SMS, the most recent click wins

Where Klaviyo Over-Counts

The 5-day open window is the primary source of over-counting. Here’s why:

Scenario: A customer opens your Tuesday campaign email, doesn’t click, then on Saturday sees an Instagram ad, clicks through, and purchases.

Klaviyo’s attribution: Email gets credit (the open was within 5 days of purchase). Reality: Instagram drove the purchase. The email open might not have even been a real open (Apple MPP inflates open events).

This is why Klaviyo’s revenue numbers are typically 15-30% higher than what email truly drove.

We recommend adjusting Klaviyo’s defaults for a more accurate picture:

Conservative (most accurate):

  • Email open window: Disabled (0 days)
  • Email click window: 3 days
  • SMS click window: 1 day

Balanced (our recommendation for most brands):

  • Email open window: 1 day
  • Email click window: 5 days
  • SMS click window: 3 days

Aggressive (Klaviyo’s default):

  • Email open window: 5 days
  • Email click window: 5 days
  • SMS click window: 5 days

To change these in Klaviyo:

Go to Settings > Attribution and adjust the windows. Note: this only affects future data. Historical attribution data won’t recalculate.

The “balanced” setting keeps click-based attribution at 5 days (reasonable, since a click shows real intent) but reduces the open window to 1 day (minimizing MPP inflation).

Google Analytics and Email Attribution

The UTM Problem

Klaviyo automatically appends UTM parameters to your email links. By default:

  • utm_source=klaviyo
  • utm_medium=email
  • utm_campaign=[campaign name]

Google Analytics uses these UTMs for last-click attribution. This means GA only credits email when someone clicks an email link AND that click is the last interaction before purchase.

Why GA Under-Counts Email

  1. No open attribution. GA can’t track email opens, so the entire “opened email, influenced by it, purchased later through another channel” path is invisible.
  2. Session-based. If someone clicks an email, browses, leaves, and comes back via direct traffic or search to purchase, GA credits the return visit — not the email.
  3. Cross-device blindness. Customer opens email on phone, purchases on desktop. GA sees two different users unless they’re logged in.

GA4 Improvements

GA4 introduced data-driven attribution, which uses machine learning to distribute credit across touchpoints. This is a significant improvement over GA3’s last-click default. However:

  • It requires significant data volume to be accurate (at least 600 conversions and 15,000 ad interactions per month for Google Ads attribution)
  • Email attribution in GA4 still relies on UTM click data — it doesn’t capture opens
  • The model is a black box — you can’t see exactly how it’s distributing credit

Building a Realistic Attribution Picture

Since no single platform gives you the full truth, here’s how to triangulate.

Method 1: Klaviyo-GA Blended View

Take Klaviyo’s revenue figure and GA’s revenue figure. The truth is between them.

Simple formula:

Estimated Real Email Revenue = (Klaviyo Revenue x 0.7) + (GA Revenue x 0.3)

This weights Klaviyo’s figure (adjusted down 30% for over-counting) and GA’s figure (adjusted up as a minority input since it under-counts). It’s rough, but it’s more accurate than either number alone.

Example:

  • Klaviyo says: $200,000
  • GA says: $85,000
  • Blended estimate: ($200,000 x 0.7) + ($85,000 x 0.3) = $140,000 + $25,500 = $165,500

Method 2: Click-Only Attribution in Klaviyo

Disable open-based attribution in Klaviyo entirely. Only count revenue from email clicks. This removes the MPP inflation problem and gives you a more conservative (but more defensible) email revenue figure.

In our experience, click-only Klaviyo attribution is within 10-15% of true email impact for most brands.

Method 3: Incrementality Testing

This is the gold standard. Instead of modeling attribution, you measure it experimentally.

How it works:

  1. Take your active email subscribers and randomly split them into two groups
  2. Test group (90%): Receives emails normally
  3. Holdout group (10%): Receives NO marketing emails for a defined period (30-60 days)
  4. Compare the purchasing behavior of both groups

What you learn:

The difference in revenue between the test group and holdout group is the incremental revenue email truly drives. Everything else is revenue that would have happened anyway.

Real-world results from our testing:

  • Brands typically find that 50-70% of Klaviyo-attributed email revenue is truly incremental
  • The remaining 30-50% would have happened through other channels
  • Flows (especially abandoned cart and browse abandonment) tend to be more incremental than campaigns
  • Campaign incrementality varies significantly by segment — engaged buyers show lower incrementality (they’d buy anyway), while lapsed or new customers show higher incrementality

How to set this up in Klaviyo:

  1. Create a segment of active email subscribers
  2. Randomly split it (use a random sample segment or manually split by profile ID ending in specific digits)
  3. Exclude the holdout segment from all campaigns and flows for the test period
  4. After 30-60 days, compare revenue per subscriber for both groups using Shopify data (not Klaviyo attribution data)

Method 4: Coupon-Based Attribution

For the simplest attribution, use unique coupon codes for email campaigns.

  • Each email campaign gets a unique code
  • Revenue from that code = definitively email-driven revenue
  • Limitation: doesn’t capture full-price purchases influenced by email, so it under-counts

This works best as a supplementary data point, not your primary attribution method.

Flow vs. Campaign Attribution

Attribution accuracy varies significantly between flows and campaigns:

Flow Attribution Is More Accurate

Automated flows have high attribution accuracy because:

  • They’re triggered by specific customer actions (added to cart, viewed product, made a purchase)
  • The timing is tightly coupled with purchase intent
  • The content is directly relevant to the customer’s recent behavior

When someone clicks “Complete your purchase” in an abandoned cart email and buys within 24 hours, that attribution is almost certainly correct.

Campaign Attribution Is Less Accurate

Campaigns have lower attribution accuracy because:

  • They’re sent to broad audiences, many of whom would have purchased anyway
  • Open-based attribution captures a lot of false positives
  • The time gap between email receipt and purchase can be long

Practical implication: Trust your flow revenue numbers more than your campaign revenue numbers. If you need to cut one metric for decision-making accuracy, apply stricter attribution to campaigns (click-only, shorter windows) while keeping slightly looser attribution for flows.

Attribution Mistakes That Cost You Money

Mistake 1: Treating Klaviyo Revenue as Gospel

If Klaviyo says email drove $200K last month, and you use that to justify your email marketing budget, you’re probably over-investing relative to true impact. Use the blended approach or incrementality testing to get a realistic number.

Mistake 2: Treating GA Revenue as Gospel

The opposite mistake. If GA says email only drove $85K, and you cut your email budget or team, you’re under-investing. GA’s last-click model systematically under-values mid-funnel channels like email.

Mistake 3: Comparing Attributed Revenue Across Channels

Your Facebook Ads manager, Google Ads, email platform, and affiliate network ALL claim credit for the same purchases. If you add up all the attributed revenue from every channel, it’ll be 2-4x your actual total revenue. This is normal — it’s called “attribution overlap.”

Never compare raw attributed revenue numbers across platforms. Instead, use a single attribution source (GA4 with data-driven attribution is the best current option) for cross-channel comparison.

Mistake 4: Ignoring Assisted Conversions

Even under last-click models, GA tracks “assisted conversions” — purchases where a channel appeared in the customer journey but didn’t get last-click credit. Email’s assisted conversion value is typically 2-3x its last-click value. Check this in GA4 under Advertising > Attribution > Conversion Paths.

Mistake 5: Not Running Holdout Tests

Attribution models are theories. Holdout tests are experiments. If you’ve never run an incrementality test on your email program, you’re making budget decisions based on theory instead of evidence. Run one quarterly.

Building an Attribution Dashboard

Create a monthly dashboard that shows:

  1. Klaviyo-reported revenue (with attribution settings noted)
  2. GA4 email revenue (last-click and data-driven)
  3. Blended estimate (using the formula above)
  4. Flow vs. campaign split in both Klaviyo and GA
  5. Revenue per subscriber (total blended revenue / active subscriber count)
  6. Email as % of total revenue (using blended estimate vs. Shopify total revenue)

Track this monthly. Over time, you’ll develop a strong intuition for what email truly drives for your brand, and you’ll make better investment decisions.

The Bottom Line

Attribution is never going to give you a single perfect number. Accept that and work with ranges. Klaviyo over-counts, GA under-counts, and the truth sits in between.

The brands that get this right don’t obsess over the exact number — they use directionally accurate attribution to make better decisions. Tighten your Klaviyo attribution windows, cross-reference with GA, run holdout tests quarterly, and build a blended dashboard. That gives you 90% of the accuracy at 10% of the complexity of building a custom multi-touch attribution model.

Want us to set this up for your store? Get a Free Audit

Tags: attributionanalyticsemail-marketingklaviyorevenue

Want Us to Implement This for Your Brand?

Get a free email audit and see exactly where you're losing revenue.

Get Your Free Audit