Skip to main content
Card class: Non-HeroCategory: Ecommerce Platform

At a glance

Share of recent BC orders that carry a non-empty billingAddress.email. The single best leading indicator for email-marketing reach: missing emails today are missing welcome flows, missing abandonment recovery, and missing cross-sell touches for the next 90 days. Every missing email is a customer your CRM cannot ever speak to.
What it countsCOUNT(billingAddress.email != NULL OR != '') / COUNT(_id) over the rolling window. The result is a percentage between 0 and 100. We treat empty strings, whitespace, and BC’s “noreply@…” placeholder addresses as missing, only real, deliverable-shaped emails count.
VAT / tax treatmentn/a, this is a customer-data metric, not a money metric.
Shippingn/a.
Discountsn/a.
Refundsn/a, the email captured at order time is what matters; refund status doesn’t reverse the email collection.
Cancelled / voided ordersIncluded. A cancelled order with an email captured at checkout still counts as “captured” for deliverability purposes; you can still email that customer.
Currencyn/a, count metric.
Channels / sourcesAll BC channels contribute, but channel-mix matters a lot here. POS orders capture email rate ~50-70% (cashier asks, customer often declines). Web captures ~95-99% (email is required at checkout). Channel Manager / Amazon orders may capture marketplace-anonymised emails (...@marketplace.amazon.com), which we count as “present” even though they cannot be marketed to. Facebook Shop orders captured via Meta-managed checkout often have anonymised emails.
Anonymised marketplace emailsA separate concern. We count ...@marketplace.amazon.com and similar as “present”, but they are functionally undeliverable for marketing. To see the marketable share, pair with BC Channel Revenue Mix and exclude marketplace channels from the email-health denominator. We are working on a “marketable email rate” sub-card.
Guest checkout vs registeredA guest checkout still requires email entry on web, so guest orders normally have email. The failure pattern is non-web channels (POS especially).
B2B EditionB2B orders almost always have email (the buyer login is email-based). B2B email health typically reads 99%+.
Time windowRT (real-time, refreshed each order sync)
Alert trigger<85% (deliverability risk), sentiment key email_health. Below 85% means more than 1-in-7 orders cannot be emailed; the marketing team is materially undersized vs the customer base.
Rolesowner, marketing

Calculation

COUNT(billingAddress.email != NULL) / COUNT(_id)
  WHERE date BETWEEN [period_start, period_end]

Worked example

A US homewares brand on BigCommerce Pro with web + POS + Amazon Channel Manager. Snapshot at 12 Apr 26.
ChannelOrders (last 30 days)Orders with emailEmail health %Notes
Stencil web4,2104,18099.3%Healthy, web checkout enforces email
POS Terminal A74041055.4%Cashiers not asking for email consistently
POS Terminal B31224076.9%Better, store manager has trained team
Amazon Channel Manager1,1801,180100.0%But all ...@marketplace.amazon.com, not marketable
Facebook Shop888192.0%Mix of real and Meta-anonymised
Store total6,5306,09193.3%Above 85% threshold, but headline is misleading
What’s interesting:
  1. The headline 93.3% is healthy but misleading. Strip out the 1,180 marketplace-anonymised Amazon emails and you get 5,350 orders with 4,911 marketable emails = 91.8% on the marketable base. Strip out POS A’s missing emails too and the marketable rate is 87%. Materially worse than the headline.
  2. POS Terminal A is the single biggest fix. 330 orders without emails over 30 days = ~4,000 missing emails per year on that one terminal alone. At a typical 1-3% email-to-revenue conversion that’s $20-60k/year of CRM revenue lost from one cashier-training gap.
  3. Amazon Channel Manager 100% is a footnote, not a result. Amazon-anonymised emails are unmarketable. Use Amazon’s own Brand Tailored Promotions for direct marketplace customer outreach; there is no way to bridge to your Klaviyo or Mailchimp list from these orders.
  4. Below 85% triggers the alert. Below 75% triggers panic. A 75% email-capture rate means a quarter of your customer base is invisible to your CRM, and the gap compounds, every quarter you stay below 85% the long-term reachable customer pool shrinks relative to the unreachable shadow pool.
  5. POS Terminal B’s 77% suggests the fix is operational, not technical. A 99% web rate with a 55% POS rate means the POS app supports email capture; cashiers just don’t use it. A 30-day “ask for email” training cycle typically lifts POS rates from 55% to 80%.
The fix playbook when this card drops below 85%:
  1. Decompose by channel. Run BC Channel Revenue Mix and a per-channel email-health view; almost always 1 or 2 channels are the cause.
  2. For POS underperformers, retrain cashiers on the email-capture flow. Ask “would you like a digital receipt?” instead of “can I have your email?”, consent rate jumps 30-50%.
  3. For Amazon / marketplace anonymisation, accept that those customers are not marketable through your CRM. Use the marketplace’s own follow-up tooling.
  4. Review checkout email-required setting in Settings → Checkout. For web orders email should be required (default); some merchants disable it for accessibility reasons and then forget to monitor.
  5. Sync to your CRM (Klaviyo, Mailchimp, etc.) with a lookback so any historically-missing emails captured later get back-filled into the right customer record.

Sibling cards merchants should reference together

CardWhy pair it with Email Health
Customer CountThe total reachable base. Email health % × customer count = marketable customers.
Customer Acquisition TrendAcquisition without email capture is acquisition you can’t nurture; the two together tell the full top-of-funnel story.
BC Guest vs RegisteredGuest checkouts often capture email but not consent. The marketable subset is smaller than this card suggests.
Repeat Customer RateStrong negative correlation. Stores with low email health typically have low repeat rates because retention email is the lever that drives repeat.
Unverified EmailsThe “captured but unverified” subset. This card counts presence; that one counts deliverability.
BC Channel Revenue MixChannel-mix decomposition. Drops on this card are usually channel-concentrated.
klaviyo.kl_list_healthThe receiving end. BC’s email capture should populate Klaviyo’s active list; gaps mean sync is broken.
shopify.email_healthCross-platform peer. Shopify defaults to required-email-at-checkout, so Shopify equivalents typically read 97-99%.

Reconciling against the vendor’s own dashboard

Where to look in BigCommerce Control Panel: BigCommerce does not surface “email capture rate” as a single tile. The closest checks are:
  1. Customers → View, which shows the customer list with email columns. Filtering for “no email” is approximate.
  2. Orders → All orders, where each order’s billing-email column is visible. Bulk-export to CSV and count the empty-email rows.
  3. Settings → Checkout confirms whether email is required at web checkout (it should be).
For B2B Edition, B2B → Buyers shows the buyer email status; B2B logins are email-keyed so this is structurally near-100%. Why our number may legitimately differ from a manual BC count:
ReasonDirection
Marketplace-anonymised emails. We count ...@marketplace.amazon.com as “present”; a marketer manually counting marketable emails would exclude these.Vortex IQ HIGHER than the marketable-rate count
Whitespace / null normalisation. We treat " " and " " as missing; a naive IS NOT NULL SQL query treats them as present.Vortex IQ LOWER than naive query
POS guest receipts. BC POS may store an email at order-time then strip it on receipt-print; we capture whatever’s in the order at sync.Boundary effects
Time zone. Window boundary differs between BC reports (store TZ) and our index (UTC).Boundary effects
Sync lag. Webhook delays mean recent orders may be missing from this card.Vortex IQ LOWER for the most recent hour
Cross-connector reconciliation:
CardExpected relationshipWhat causes legitimate divergence
klaviyo.kl_active_subscribersKlaviyo’s active list should be a subset of this cardKlaviyo requires consent; this card counts captured emails regardless of consent. Expect Klaviyo to be 60-90% of this card.
mailchimp.mc_audience_sizeSame as Klaviyo, consent-gated subsetSame divergence pattern.
google_analytics.ga_logged_in_usersGA4’s logged-in-user share should track web-channel email-capture rateGA4 measures session login state, not order-level email capture.
Same-metric documentation cross-reference:

Known limitations / merchant FAQs

My email-health % is 96% but Klaviyo says my reachable list is 64%, what’s going on? The 32-percentage-point gap is almost entirely consent vs presence. This card counts emails captured at checkout. Klaviyo (and any consent-gated email tool) only counts emails with explicit marketing consent. UK / EU stores under GDPR see this gap most starkly; US stores see narrower gaps (CAN-SPAM is opt-out by default for transactional senders). Fix the gap by adding a consent checkbox at checkout (default off, single-opt-in) plus a post-purchase consent email. Why does my Amazon channel show 100% email but Klaviyo can’t find any of those customers? Amazon anonymises buyer emails to ...@marketplace.amazon.com for privacy; those addresses route through Amazon and cannot receive third-party marketing. Use Amazon Brand Tailored Promotions for direct marketplace customer outreach. To reach Amazon-acquired customers off-platform you’d need them to register on your BC store separately, which they rarely do. Below 85% triggered the alert. How quickly does this affect revenue? Slowly but compoundingly. The first month at 80% capture rate doesn’t move email-driven revenue much. By month 6 your email list is 18% smaller than it would have been; email revenue trails that gap. By month 18 the compounded effect is 30-40% lower email-driven revenue than a 95%-capture peer. My POS rate is 50%, what’s a realistic target? 80-85% with consistent training. Above 90% is rare on POS unless you tie email capture to a perk (digital receipt is the easiest, loyalty-points enrolment is the strongest). The fix is operational, not technical, every BC POS install supports email capture. Are abandoned carts in this number? No, this card counts orders only (COUNT(_id) on the orders index, not carts). Abandoned-cart email rate is a separate concern; check your cart-recovery vendor’s deliverability dashboard. My checkout recently added an “email is optional” toggle for accessibility, did that drop my number? Likely yes. We’ve seen stores drop from 99% to 85% within 30 days of making email optional at web checkout. The accessibility argument is reasonable but the marketing cost is high. Compromise: keep email required at checkout; provide a “skip and email me later” option that uses receipt-confirmation flow. That balances both. My most recent reading is 100%, did the integration break? Possibly, possibly not. Some stores legitimately read 100% (web-only, every order has email). If you also run POS or marketplace channels and the number reads 100%, it suggests channel orders aren’t reaching the index. Check Settings → Sources → BigCommerce to confirm all channels are syncing. Should I trust BC’s own “Customer email capture rate” report on Plus / Pro? It’s directionally right but uses BC’s own definition (which may exclude POS and marketplace channels by default). Use this card for the cross-channel headline; use BC’s report for promotional-touchpoint diagnosis (welcome flow opt-in rate, abandoned-cart subscribe rate). Does removing test orders affect this number? Yes, marginally. Test orders typically have placeholder emails (test@yourdomain.com) which we count as present. If your test-order volume is high (developer team running QA daily), the headline can drift up by 1-3 percentage points artificially. Filter by customer_id != known_test_id upstream if precision matters.

Tracked live in Vortex IQ Nerve Centre

Email Health is one of hundreds of KPI pulses Vortex IQ tracks across BigCommerce and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.