
Our May 13, 2026 research covered 578,569 stored Shopify records with an available snapshot and traffic tier. It shows why account volume and recipient coverage need separate checks: in the 50K–200K traffic cohort, 168,613 accounts had any contact, 74,964 had a verified email contact, and 3,629 had a verified contact matching our broad role screen.
Before sending, check the current storefront, the person's role, verification age, campaign history, and suppression status.
An ecommerce leads database is a searchable source. An ecommerce lead list is the smaller account-and-contact selection you prepare for one offer. Filtering should explain why each account belongs.
What we measured
The retained read-only StoreInspect query joined each store's latest available snapshot, modeled traffic tier, public technology signals, and attached contacts. It applied no maximum snapshot-age, successful-revisit, or current-liveness requirement. The dataset covers Shopify records only.
The same extraction reported a global contact graph of 762,865 contact rows, 701,524 with a filled-in email entry, and 257,478 with an email entry marked verified. Those global totals cover more than the 578,569-account cohort, and a contact can have multiple email entries. The global verified condition checks status, whereas the per-account verified condition below also requires a filled-in address.
On October 10 we dropped an older buying-signal funnel built on a raw count of 100 or more products, because it included the 2,500 placeholder value. The contact and traffic results below come from the same May 13 extraction.
Contact coverage by estimated traffic tier
| Traffic Tier | Stores | Any contact | Verified Contact | Verified Non-Generic | Verified role-screen contact |
|---|---|---|---|---|---|
| Under 50K | 366,151 | 251,920 (68.8%) | 102,870 (28.1%) | 38,234 (10.4%) | 1,611 (0.4%) |
| 50K-200K | 200,589 | 168,613 (84.1%) | 74,964 (37.4%) | 28,306 (14.1%) | 3,629 (1.8%) |
| 200K-1M | 11,765 | 10,570 (89.8%) | 5,327 (45.3%) | 2,983 (25.4%) | 1,136 (9.7%) |
| 1M+ | 64 | 60 (93.8%) | 33 (51.6%) | 24 (37.5%) | 18 (28.1%) |
The four traffic cohorts sum to 578,569. Each contact percentage uses its row's complete tier denominator. Contact coverage rises with each traffic tier. The 1M+ row contains 64 records.
The contact cuts are separate intersections, not a cumulative funnel. A store with a verified non-generic contact need not have a role-screen contact, and vice versa. One store can have multiple contacts.
Definitions matter:
- Any contact: at least one attached contact row. It can lack an email.
- Verified email contact: at least one filled-in email marked verified.
- Verified non-generic contact: a verified, filled-in address whose normalized local part does not match the query's finite shared-inbox list. The query lowercases and trims it, removes dots, underscores, and hyphens, then matches names such as info, support, sales, hello, operations, and logistics.
- Verified role-screen contact: a verified email on the same contact whose normalized role or title matches a broad founder/owner/executive/marketing/ecommerce/operations screen. Head, director, and manager terms can also match.
Global email status is a different unit
The following table counts email entries across the May 13 global contact graph. “Unique emails” means distinct addresses within a status, not unique buyers across all statuses. Generic rows use the finite inbox-prefix rule.
| Email Status | Email Rows | Unique Emails | Generic Rows | Share Of Rows |
|---|---|---|---|---|
| found | 349,405 | 328,918 | 149,097 | 49.2% |
| verified | 257,492 | 248,057 | 156,123 | 36.2% |
| bounced | 97,770 | 91,748 | 54,901 | 13.8% |
| catch-all | 2,863 | 2,863 | 0 | 0.4% |
| guessed | 2,664 | 2,664 | 2 | 0.4% |
| matched | 220 | 220 | 27 | 0.0% |
| unverified | 24 | 24 | 9 | 0.0% |
The 257,492 verified email rows differ from 257,478 contacts with a verified status entry because a contact can hold multiple entries. Do not combine the units. The 97,770 bounced rows should be suppressed; a found address needs current verification before a campaign. A verified shared inbox is not a verified decision maker.
Select accounts for a specific workflow
Start with the platform your offer actually supports, then verify an observable task. Public technology can suggest a question:
| Observation | Validate before proposing work |
|---|---|
| Advertising pixel and no tracked analytics app | Are campaigns active, and what handles measurement today? |
| No matched email-platform name | What handles capture and follow-up? Shopify Messaging or a private workflow can already cover it. |
| Several storefront app signatures | Which integrations function, and is there a concrete workflow problem? |
| Stored Plus flag | Is the current plan confirmed, and does the offer require a Plus-specific capability? |
The traffic threshold should follow your product's actual usage requirements and customer history. Treat a 50K floor as a starting screen.
If catalog size matters, require a measured count observed on or after January 19, 2026, with a recent observation date, and exclude unknown/zero values and the old 2,500 placeholder value. Validate storefront category and country too, since they are classification fields rather than legal headquarters or fulfillment data.
Prepare the contact selection separately
For each selected account:
- Confirm current storefront operation and one observation that relates to your offer.
- Check the contact's current employer and responsibility. A broad title substring is a research starting point.
- Reverify the address and preserve the verification date. Keep shared inboxes distinct from named recipients.
- Apply customer, unsubscribe, bounced-address, prior-contact, and open-opportunity suppression.
- Deduplicate normalized addresses and account domains. Several regional stores can belong to one company.
Use the contact-enrichment workflow for recipient research and outreach suppression guide for campaign exclusions. The ICP framework helps define account fit before contact enrichment.
The research's practical value is the difference between units: 168,613 contact-bearing accounts in one traffic cohort are a much larger queue than its 3,629 same-contact verified role-screen matches. Build the account queue first, then validate who should receive the message.
Find Shopify Clients Worth Your Time
Search by niche, traffic, and tech stack. Export with verified founder contacts.Search stores by niche, traffic, and tech stack. Export with verified founder contacts so you can skip the research.
![Shopify Print on Demand Apps [106,636-Store Study]](/_next/image?url=%2Fimages%2Fblog%2Fshopify-print-on-demand-apps.webp&w=3840&q=75&dpl=dpl_2maFEPxuZ93UFwJwwa13iX8zjbcS)
![Shopify Estimated Delivery Date [104,675-Store Study]](/_next/image?url=%2Fimages%2Fblog%2Fshopify-estimated-delivery-date.webp&w=3840&q=75&dpl=dpl_2maFEPxuZ93UFwJwwa13iX8zjbcS)
![Shopify Countdown Timer Apps [130,278-Store Study]](/_next/image?url=%2Fimages%2Fblog%2Fshopify-countdown-timer-apps.webp&w=3840&q=75&dpl=dpl_2maFEPxuZ93UFwJwwa13iX8zjbcS)