% of paying customers actually on the email list. Below 60% means checkout opt-in is broken or the E-Commerce store sync is stale.
At a glance
The percentage of paying customers (from connected commerce platform) who appear assubscribedin any Mailchimp audience. Computed asCOUNT(distinct customer emails subscribed in Mailchimp) ÷ COUNT(distinct customer emails on commerce platform) × 100. Below 60% means checkout opt-in is broken, the Mailchimp Stores sync is stale, or customers are aggressively opting out at checkout. Below 40% indicates a structural acquisition gap that no amount of campaign optimisation can close.
| What it counts | Customers in the commerce platform who match (by email address) a subscribed member in any Mailchimp audience, divided by total commerce-platform customers. |
| API endpoint | Marketing API v3, GET /3.0/lists/{list_id}/members?status=subscribed&fields=members.email_address per audience, then de-duplicated. Commerce platform’s customer list endpoint for the denominator. Engine joins on email client-side. |
| Audience-based scope | Aggregates across every audience. A customer subscribed in any audience counts. This is intentional, the question is “can we email this customer at all”, not “in which audience”. |
| Channel scope | Email subscription only. SMS-only opt-ins (where Mailchimp Studio is enabled) don’t count toward email coverage. |
| Bounce / spam handling | subscribed excludes cleaned (hard-bounced) and unsubscribed members. So the numerator is “deliverable subscribers”; coverage is the deliverable-customers share. |
| Attribution model | Not applicable. |
| MPP impact | None. |
| Customer matching method | Exact email match. Buyers who used different emails for purchase vs subscription (e.g. work email at checkout, personal at signup) appear unmatched. Engine does not fuzzy-match. |
| Time window | RT (real-time, point-in-time read at refresh). Both numerator and denominator are current state, not period-bounded. |
| Alert trigger | <60% (gap) (drives the “checkout opt-in is leaking” insight). At <60%, a structural acquisition gap exists. |
| Currency | Not applicable. |
| Roles | owner, marketing |
Calculation
Calculated automatically from your Mailchimp 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 small DTC sustainable-skincare brand on Shopify, Mailchimp Standard. Snapshot taken 02 May 26.| Metric | Value |
|---|---|
| Total customers in Shopify (lifetime) | 18,400 |
| Customers subscribed in any Mailchimp audience | 9,800 |
| Audience coverage (this card) | 53.3% |
| Industry-typical band for DTC | 60-80% |
- At 53.3%, the merchant is below the alert threshold. Roughly 8,600 paying customers are unreachable via email; that’s the cost of the acquisition leak. Average customer lifetime value is £85, so the unreachable cohort represents ~£730k of email-recoverable revenue opportunity over time. This is a structural problem, not a content problem.
- The most common cause is the checkout opt-in default state. If the “Email me with news and offers” checkbox is unchecked-by-default at Shopify checkout, capture rate is typically 20-40%. Checked-by-default lifts to 60-75% (legal in UK/US for marketing email under existing-customer relationship; not legal in EU under GDPR). Pre-purchase popup capture lifts further to 80-90%. Audit the checkout opt-in setting first.
- Mailchimp Stores sync may also be stale. If Shopify has 18,400 customers but Mailchimp’s e-commerce contact sync hasn’t run recently, recent customers are absent from Mailchimp. Audit MC03 catches this. Open Mailchimp → Integrations → Shopify → check “Last sync” timestamp. If >24h old, manually re-sync.
- A 73% coverage merchant turning on a pre-purchase popup typically lifts to 88-92% within 90 days. This pattern is well-tested. The 73% baseline represents customers who voluntarily opted in at checkout; the additional 15-19 pp comes from pre-purchase incentivised signups (10% off first order in exchange for email). Coverage compounds over months as new customers opt in via popup.
- Coverage above 100% is possible but indicates the audience is contaminated. Merchants who buy email lists, run lead-generation popups without verifying email validity, or have stale customer data can show 110-130% coverage. This is bad: the extra subscribers are non-customers, often fake addresses, and damage deliverability when sent to. Coverage should asymptote near 95%, not above.
Sibling cards merchants should reference together
| Card | Why pair it with Audience Coverage |
|---|---|
| Mailchimp Audience Size | The numerator. If size is small, coverage is low by definition. |
| Mailchimp Audience Growth Rate | The trend that closes the coverage gap. Slow growth = coverage gap persists. |
| Mailchimp Email-Attributed Revenue | Coverage caps email’s revenue ceiling. You can only email customers you have. |
| Mailchimp Email Share of Total Revenue | The strategic consequence. Low coverage suppresses share regardless of campaign quality. |
| Shopify Customer Count | The denominator. Tells you the size of the addressable customer base. |
| Shopify Repeat Customer Rate | High coverage enables retention emails that drive repeat purchase. |
| Mailchimp Suppressed Members | Customers who unsubscribed pull coverage down even if they once opted in. |
| Klaviyo Audience Coverage (when both connected) | If running both ESPs, compare coverage; consolidate to whichever has the cleaner customer base. |
Reconciling against the vendor’s own dashboard
Where to look in Mailchimp’s own dashboard: Mailchimp does not surface this ratio natively. The closest views are Mailchimp → Audience → All Contacts for the subscribed-contact count (numerator candidate) and Mailchimp → Integrations → Shopify → Sync status showing the e-commerce contact sync. This card is a Vortex IQ-derived ratio; no single Mailchimp screen shows it. For the denominator, refer to your commerce platform’s customer-list endpoint. Shopify:Customers count in admin. BigCommerce: similar. Adobe Commerce: Customers → All Customers.
Why our number may legitimately differ from a hand-built calculation:
| Reason | Direction of divergence |
|---|---|
Email match strictness. Engine matches on exact lowercase email. Buyers who used Customer@Example.com at checkout but subscribed as customer@example.com are matched. Buyers using completely different emails are not. | Slight under-count |
| Multi-audience deduplication. Engine de-dupes a customer subscribed to multiple audiences. A merchant manually counting may double-count. | This card lower than naive count |
Pending vs subscribed. Customers who signed up at checkout but haven’t confirmed double-opt-in are pending in Mailchimp and don’t count toward the numerator. | Card slightly lower than “intended subscribers” |
Cleaned customers. A customer whose email hard-bounced is cleaned and excluded from numerator. Some merchants want to count “ever subscribed”; this card counts “currently deliverable”. | Card lower than ever-subscribed view |
| Sync lag. Mailchimp’s e-commerce contact sync runs every few hours. Recent customers (last 6h) may be in commerce but not yet in Mailchimp. | Slight under-count for fast-growing stores |
| Page caps. Engine pages members 1000 per call up to 5 pages (5000 per audience). Massive audiences may truncate. | Card slightly lower for very-large audiences |
| Card | Expected relationship | What causes legitimate divergence |
|---|---|---|
shopify.customer_count | Denominator. Coverage = Mailchimp subscribed customers ÷ this. | None; this is the ratio. |
bigcommerce.customer_count | Same. | None. |
adobe_commerce.customer_count | Same. | None. |
klaviyo.klv_xc_audience_coverage | When both ESPs run on the same store, coverage on each may differ if customers signed up at different times to different ESPs. | Migration history matters. |