Healthy DTC sits 20-40% email-attributed. Below = leaving money on the table; above = list dependency risk if deliverability tanks.
At a glance
The share of WooCommerce store revenue attributed to email (Klaviyo, Mailchimp, Dotdigital). Healthy DTC sits 20-40%. Below means leaving money on the table; above means list-dependency risk if deliverability tanks.
Calculation
Calculated automatically from your WooCommerce 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 US homewares brand on managed-Woo, Klaviyo for email. 30D window: 14 Mar 26 to 12 Apr 26.
Three observations:
- 24.1% is healthy DTC territory. The brand sits comfortably in the 20-40% band. Common pattern: 60% of the email revenue comes from automated flows (welcome, abandoned cart, post-purchase); 40% from broadcast campaigns. Klaviyo’s “Flows vs Campaigns” tab provides the split.
- Self-hosted variance is the recurring theme. This brand previously ran on shared hosting with intermittent sync delays; the email-attribution alignment between Klaviyo (real-time webhooks) and Woo (hourly poll) drifted by 15-30 min, causing daily email-share figures to swing by 1-3 ppt. Pressable’s reliable sync brought daily figures within 0.5 ppt accuracy.
- Plugin-induced data shape variance: Klaviyo for WooCommerce. The plugin sets cookies tracking email source on the customer; Woo orders inherit the source via custom meta
_klaviyo_attributed_to. If a merchant runs a coupon discount that auto-applies via Klaviyo, the same order can show up under both “email” and “discount” attribution. Klaviyo’s last-click model resolves the conflict; cross-checks against Woo coupon usage may show small overlap.
Sibling cards merchants should reference together
Reconciling against the vendor’s own dashboard
Where to look in WooCommerce / Klaviyo / Mailchimp / Dotdigital: Woo: WP Admin → Reports → Sales by date for the denominator. Klaviyo: Reports → Email Performance → Attributed Revenue. Mailchimp: Reports → Revenue. Dotdigital: Reports → Email Revenue. Why our share may differ from a manual ratio:
Cross-connector reconciliation:
Known limitations / merchant FAQs
Self-hosted vs managed-Woo, why does it affect attribution? Webhook delays on self-hosted Woo can briefly mis-time the email-attributed order so it falls outside the ESP click window. Managed-Woo with reliable webhooks rarely shows this. Status-filter selection, why usecompleted + processing for the denominator?
This is the canonical Woo “real revenue” definition. Including pending or on-hold would dilute the email-share with not-yet-paid revenue.
Refund-object accounting, does it affect the share?
Both numerator and denominator are gross of refunds. The ratio is consistent. To see the post-refund share, use net revenue on both sides.
Plugin-induced data shape variance, what plugins matter?
- Klaviyo for WooCommerce: real-time webhook, 5-day default attribution.
- Mailchimp for WooCommerce: hourly sync, 7-day default attribution.
- Dotdigital for WooCommerce: hourly sync, 14-day default attribution.
- Sendinblue / Brevo: real-time webhook, configurable attribution window.
- Match the date window exactly.
- Match the attribution window setting (5-day vs 7-day vs 14-day).
- Confirm currency alignment.
- Acknowledge that ESP attribution and Woo revenue have different update cadences.