Healthy DTC email programmes drive 15-25% of revenue. Below 8% means either bad list health or broken attribution, both recoverable.
At a glance
The percentage of GA4-measured revenue that GA4 attributes to the Email channel. Healthy DTC programmes sit at 15, 25%; below 8% means the email programme is genuinely underperforming OR the email links aren’t UTM-tagged correctly. Compare against your ESP’s own claim (Klaviyo, Dotdigital, Mailchimp) to triangulate which problem you have.
Calculation
Calculated automatically from your Google Analytics 4 data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A UK skincare brand on Shopify, running Klaviyo for email. 30-day window ending 02 May 26.
Three numbered observations:
- GA4 says 13.7%; Klaviyo says 21.2%, both can be right. GA4 uses last-non-direct click attribution within the session: only purchases where the last attribution touchpoint was Email get credited. Klaviyo uses last-touch within 5 days: any purchase within 5 days of an email open/click gets credited. The two attribution models give different numbers for the same underlying behaviour. The 7.5 pp gap is normal; the consistency between the two over time is what matters.
- The brand’s email share is below the healthy floor. 13.7% in GA4 means email is contributing less than peer DTC brands. Three diagnoses: (a) list health: open rates declining, list growing slowly, lots of inactive subscribers. Check Klaviyo’s Email Opens Trend. (b) UTM tagging gap: some campaigns may not append utm_medium=email correctly (Klaviyo Flows often don’t UTM-tag by default), driving traffic into Direct/Referral instead of Email. (c) Programme cadence: too few sends, or sending at suboptimal times. The fix is programme-side; this card is the detector.
- The gap between GA4 and Klaviyo is stable at ~7 pp, that’s the test. If next month GA4 shows 13% but Klaviyo claims 30%, something diverged. Either Klaviyo’s attribution window expanded, OR (more commonly) UTM tagging broke and email traffic disappeared from GA4’s Email channel. The test of attribution health is not the absolute numbers; it’s the stability of the gap.
- What WOULD trip the <8% alert? A common scenario: a marketing-team migration to a new ESP that ships templates without utm parameters by default. Suddenly GA4 Email channel revenue drops to 4%, but total revenue is unchanged because the same customers still bought, they just appear in Direct or Referral now. The alert fires; the fix is to update the ESP’s UTM defaults. Within 7 days the share returns to 15%+.
- Server-side tagging doesn’t change this card. Server-side tagging recovers purchase-event loss; it doesn’t affect channel attribution (which depends on URL parameters, not on event firing). A merchant with perfect server-side tagging can still have a broken email-share reading.
Sibling cards merchants should reference together
Reconciling against the vendor’s own dashboard
Where to look in GA4: Reports → Acquisition → Traffic acquisition and filter the channel column to “Email”. The “Total revenue” column for the Email row, divided by the report total, is this card’s number.Reports → Acquisition → Traffic acquisition → Default channel group = “Email” for the headline. Explorations → Free form → dimension: Session source/medium, metric: Total revenue, filter: medium = email for the granular view of which campaigns are firing.Other GA4 views that look like email attribution but aren’t:
- Reports → Advertising → All channels: GA4’s data-driven attribution model assigns fractional credit to multiple touchpoints. The “Email” row in this report can be lower than the Traffic acquisition view because GA4 has redistributed credit to upstream touches.
- User acquisition (vs Traffic acquisition): User acquisition shows first touch source/medium per user. A user whose first GA4 session was Direct but whose 4th was Email-driven would not appear in user-acquisition Email even though their purchase did.
- Realtime → Traffic source: 30-min lookback only.
Cross-connector reconciliation, the IMPORTANT one:
This card lives at the intersection of GA4 and your ESP. Expected relationships:
Use this card alongside Klaviyo’s own attribution. GA4 gives you the conservative last-non-direct-click view; Klaviyo gives you the generous last-touch-within-5-days view. Truth is probably between them. Neither GA4 nor Klaviyo is “the” source of truth for email attribution; they’re two different lenses on the same behaviour.
For attribution audits: export both GA4 and Klaviyo at the same date range monthly, plot the gap. Stable gap = healthy. Diverging gap = either a UTM-tagging change OR a deliverability change (Klaviyo would also show open-rate drops in that case).
Known limitations / merchant FAQs
Why is GA4 saying my email programme drives only 12% of revenue but Klaviyo says 22%? Different attribution models. GA4 uses last-non-direct click within session: only purchases where the most recent attribution touchpoint was an email click get credited. Klaviyo uses last-touch within 5 days: any purchase within 5 days of an email open or click gets credited. Klaviyo’s window is wider, so it claims more revenue. Both are valid views of the same behaviour; GA4 is the conservative bookkeeper, Klaviyo is the optimistic salesperson. Neither is “right”. My email share suddenly dropped from 18% to 5%. Did the programme die? Almost certainly a UTM-tagging regression, not a programme collapse. Check (1) did your ESP push a template update that dropped UTM parameters from links? Klaviyo Flows often need explicit UTM-tagging configuration that’s per-flow, not global, (2) did anyone publish a new email template that didn’t inherit the brand’s UTM defaults? (3) did your ESP migrate to a new link-tracking system (e.g. Klaviyo’s “smart sending” or “click tracking v2”)? Check Klaviyo’s own attribution to confirm: if Klaviyo’s claim held steady at 22% but GA4’s dropped to 5%, the programme is fine, the UTM plumbing is broken. What UTM parameters does GA4 require to classify a session as Email? At minimum,utm_medium=email (or utm_medium=e_mail). Without that, GA4 falls back to channel classification by source (Klaviyo URLs go to “Referral”, Mailchimp links may go to “Direct” if the link is bare). The single most important fix for under-counted email is ensuring every email link includes ?utm_medium=email&utm_source=<your_esp>&utm_campaign=<campaign_name>. Most ESPs have a global setting for this; if not, configure it per-template.
Does Apple Mail Privacy Protection (MPP) affect this card?
Less than you might think. MPP affects open tracking (it pre-loads tracking pixels, inflating open rates). MPP does NOT affect click tracking, when a recipient clicks a link, the URL with UTM parameters loads in their real browser. GA4’s email-channel classification uses the click event, so MPP doesn’t move this card directly. (MPP does affect Klaviyo’s open-rate metrics, but not its click-attributed revenue.)
Why is GA4 sometimes higher than Klaviyo on email share?
Rare but possible. Two scenarios: (a) a customer clicks an email link, navigates around the site, leaves, comes back via a Klaviyo SMS instead, GA4 may still credit the original email click as last-non-direct, while Klaviyo credits the SMS as last-touch. (b) Klaviyo’s 5-day window has expired but the customer’s session-level GCLID-equivalent (GA4’s session storage) is still intact. The two attribution models drift in different directions for different customer journeys.
My email share is healthy at 22% but my email revenue is dropping in absolute terms. What’s happening?
This usually means total revenue is also dropping. The share is a ratio: if both numerator and denominator drop together, the share holds steady. Check GA4 Revenue Trend and your commerce-platform total revenue. If both are down, the issue is broader (acquisition channel collapse, seasonality, paid-ad performance dive); email is just maintaining its share of a shrinking pie.
Does this card include SMS / Klaviyo SMS?
No. GA4’s “Email” channel is strictly utm_medium=email. SMS clicks need utm_medium=sms or fall into Direct. We’re working on a separate SMS-attribution cross-platform card; for now, see your ESP’s SMS revenue claim.
Does this card include transactional email (order confirmations, shipping)?
Yes if the customer clicks links in those emails AND the links carry utm_medium=email. Most order-confirmation emails don’t UTM-tag (they’re not marketing), so transactional click revenue mostly falls into Direct. This is the right behaviour, transactional revenue isn’t programme-driven.
Can I trust the share for “Today” or “This week”?
Less than the 30D window. Email programmes have weekly cycles (Tuesday and Thursday morning sends typically dominate); reading a 1-day or 3-day window picks up cycle noise. The 30D window smooths to a stable signal. If you need shorter-window visibility, use Klaviyo’s own attribution dashboard, which is designed for short-window programme-side reads.