
We built a customer-data discovery list from 565,253 stored Shopify records on May 9, 2026. Our rules selected 149,370 accounts, but only 3,016 had a contact matching our role screen with a verified email on that same contact.
That is the useful distinction: the account-research queue is about 50 times larger than the role-and-email queue.
What our query actually selected
The retained StoreInspect extraction used each store's latest available snapshot and required a stored traffic tier. 565,252 records qualified, one fewer than the database total. It applied no maximum snapshot age, successful-scrape requirement, or current-store-liveness test. Snapshot, advertising-observation, and email-verification age distributions were not retained. The results below are a May cohort, with query interpretation and current platform documentation reviewed October 10, 2026.
We required all three of these conditions:
- A 50K+ estimated monthly-visit tier.
- A detected Meta/Facebook, Google Ads/AdWords, or TikTok pixel string, or a stored positive Meta ad count. The latter had no observation-age limit.
- A matched email-marketing category or finite email-platform slug, or at least four pixel entries in the snapshot. The email rule includes combined email/SMS categories.
We then excluded matches from a broad list of analytics, attribution, event-analytics, and CDP categories and vendor aliases. Examples include Triple Whale, Elevar, Northbeam, Littledata, Segment, Mixpanel, Amplitude, and Heap. The script also excludes other analytics names such as Lucky Orange and Crazy Egg. Those products are not interchangeable CDPs.
The original script called the selected records “CDP leads.” Here, candidate accounts means they passed those query rules. A missing match can reflect a backend-only system, native capability, custom integration, or detector omission.
From account matches to contact coverage
| Funnel Step | Stores |
|---|---|
| Total stores in database | 565,253 |
| Stores with latest available snapshot and traffic tier | 565,252 |
| 50K+ traffic stores | 205,329 |
| 50K+ stores with a paid-media signal | 177,071 |
| Matches before vendor exclusions | 176,575 |
| Candidate accounts | 149,370 |
| Candidates with any contact | 127,124 |
| Candidates with verified contact | 58,136 |
| Candidates with verified outreach-role contact | 3,016 |
| Candidates with verified outreach role plus LinkedIn | 2,909 |
“Any contact” means a stored contact row, including records without an email. “Verified contact” means at least one email entry was marked verified. The role screen uses normalized roles and title substrings, including broad terms such as manager, head, director, digital, and growth.
The final 2,909 records require a LinkedIn URL, a role match, and a verified email on the same contact.
The queue averages 7.9 app entries, 10.7 pixel entries, and a 97.1 lead score. Traffic and pixel density helped select it, so those averages are high by construction.
Different signals support different discovery questions
These segments overlap. “No excluded match” refers to the query's finite vendor/category screen. In the Meta rows, the Meta signal can be a pixel match or the historical positive ad count.
| Segment | Stores | Any contact | Verified Contact | Same-contact verified role | Avg Score | Avg Pixels |
|---|---|---|---|---|---|---|
| Stored Plus flag, no excluded match | 140,125 | 120,000 | 54,314 | 2,764 | 98.5 | 10.9 |
| GA + GTM, no excluded match | 124,055 | 105,531 | 48,899 | 2,682 | 96.9 | 11.3 |
| Meta + Google Ads, no excluded match | 70,388 | 59,946 | 28,989 | 1,842 | 96.8 | 12.1 |
| Klaviyo + advertising signal, no excluded match | 54,016 | 46,804 | 24,810 | 1,818 | 98.1 | 11.7 |
| Meta + Google + TikTok, no excluded match | 19,981 | 16,909 | 8,388 | 615 | 96.8 | 13.5 |
| 200K+ traffic, no excluded match | 7,368 | 6,625 | 3,256 | 548 | 99.0 | 13.1 |
| Email + SMS, no excluded match | 4,620 | 4,041 | 2,232 | 339 | 98.8 | 12.0 |
The 140,125 stored Plus flags account for 93.8% of the queue. This is a legacy stored yes/no Shopify Plus flag, and that unusually large share needs plan confirmation before a Plus-specific campaign.
The 124,055 GA + GTM records give a concrete starting question: which system currently governs customer identity and event definitions?
For the 54,016 Klaviyo matches, first ask whether existing customer profiles and activation already cover the requirement. Klaviyo’s data-platform description and its Advanced KDP documentation, rechecked October 10, describe customer-data capabilities and a separate advanced paid feature set. Klaviyo was not treated as an excluded data-layer match in this study, so the candidate queue can contain stores with substantial existing customer-data capability; ask which plan and features they use.
For Meta + Google or three-channel combinations, confirm which campaigns are active before asking how their conversions are reconciled.
The traffic distribution follows the screening rule
| Traffic Tier | Stores | Advertising-signal stores | Matches before exclusions | Candidates | Any contact | Verified email | Avg candidate pixels |
|---|---|---|---|---|---|---|---|
| Under 50K | 359,923 | 163,625 | 0 | 0 | 0 | 0 | 0.0 |
| 50K-200K | 194,047 | 166,511 | 166,039 | 142,002 | 120,499 | 54,880 | 10.6 |
| 200K-1M | 11,222 | 10,502 | 10,478 | 7,332 | 6,593 | 3,238 | 13.1 |
| 1M+ | 60 | 58 | 58 | 36 | 32 | 18 | 14.3 |
The 142,002 candidates in the 50K–200K tier make up 95.1% of the queue. The 7,368 candidates above 200K account for the remainder. Tiers are estimated visits.
Under-50K stores have zero candidates because we chose a 50K floor. Choose a different threshold if your implementation cost and actual customer history justify it.
The retained category table's largest bucket was Other: 100,884 records. Among its named categories, Fashion contributed 17,319, Beauty 8,411, Food & Beverage 6,991, and Home & Garden 4,308. Those labels help organize research, and “Other” needs further classification before category-specific outreach.
Role coverage needs a same-person check
| Role group | Stores with role | Stores with role and any separately verified contact |
|---|---|---|
| Founder or CEO | 8,656 | 5,194 |
| Marketing or growth | 3,844 | 2,628 |
| Ecommerce or digital | 3,603 | 2,476 |
| Data, analytics, or technical | 537 | 376 |
The role groups overlap, so the rows do not add up. The last column requires a role somewhere on the store and a verified email somewhere on the store; they can belong to different people.
The separate 3,016 headline requires both attributes on the same contact. Before outreach, check the person's current role, ownership of the relevant workflow, verification date, and previous-contact/suppression history. Our contact-enrichment workflow separates account selection from contact validation.
Turn one observation into one question
Use a current, verifiable observation rather than claiming a missing CDP. For example:
- GA + GTM: Which system owns customer identity and event definitions today?
- Klaviyo + advertising signal: Does the existing platform or warehouse already cover the activation use case?
- Multiple advertising signatures: Which channel integrations currently send events, and who checks deduplication?
Shopify’s pixel documentation describes app and custom pixels for collecting customer events. That provides implementation context for the questions above.
Before exporting a campaign, refresh the account's public signals, confirm its current operation, and validate a relevant contact. Propose a platform once the merchant names a specific unmet requirement. Use the 149,370-account queue to select where to investigate; customer discovery shows which accounts need the product.
For a narrower measurement screen, compare Shopify Attribution Gap. For broader account selection, use the Shopify ICP framework.
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 Estimated Delivery Date [104,675-Store Study]](/_next/image?url=%2Fimages%2Fblog%2Fshopify-estimated-delivery-date.webp&w=3840&q=75&dpl=dpl_7Y9rMj61Vnt4eaPDzjDnQd9oaLSp)
![Shopify Countdown Timer Apps [130,278-Store Study]](/_next/image?url=%2Fimages%2Fblog%2Fshopify-countdown-timer-apps.webp&w=3840&q=75&dpl=dpl_7Y9rMj61Vnt4eaPDzjDnQd9oaLSp)
![Shopify Free Shipping Bar [130,278-Store Study]](/_next/image?url=%2Fimages%2Fblog%2Fshopify-free-shipping-bar.webp&w=3840&q=75&dpl=dpl_7Y9rMj61Vnt4eaPDzjDnQd9oaLSp)