Shopify Store Scraper - Find Stores, Emails & Tech Stack
Pricing
from $0.001 / actor start
Shopify Store Scraper - Find Stores, Emails & Tech Stack
Find Shopify stores by keyword, product category, country, rating or launch date. Get verified emails, phone numbers, social profiles, real product counts, price range, store age, Shopify theme and installed apps. Export to CSV, JSON or Excel for lead generation.
Pricing
from $0.001 / actor start
Rating
0.0
(0)
Developer
Mukesh Kumar
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Find Shopify stores by keyword, product category, country, rating or launch date — then get the data that tells you whether each store is worth contacting: verified emails, phone numbers, social profiles, real product counts, price range, store age, Shopify theme and installed apps.
No store URLs needed. Give it a niche and it finds the stores for you. Export to CSV, JSON, Excel or XML, or pull results straight from the API.
What you get for every Shopify store
| Field group | What's included |
|---|---|
| Contact details | Email (with confidence rating), phone, Instagram, Facebook, TikTok, X/Twitter, YouTube, Pinterest, LinkedIn |
| Store identity | Store name, domain, .myshopify.com domain, Shopify shop ID, Shop.app profile |
| Location | Verified city, region and country from the store's own account, plus currency |
| Catalog data | Real product count, collection count, price min/median/max, in-stock rate, discount rate, top product types and vendors |
| Store age | Estimated launch date, months since last product published |
| Tech stack | Shopify theme name, custom vs off-the-shelf, and ~30 detectable apps (Klaviyo, Recharge, Gorgias, Yotpo, Judge.me, Attentive, Smile.io, PageFly and more) |
| Quality signals | Store rating, review count, lead score 0-100 |
That's ~70 fields per store. Most Shopify scrapers return a name, a URL and two sample products.
Who uses this
- Ecommerce agencies — find Shopify stores in your niche that have budget signals (custom theme, paid apps, big catalog) and a working email address.
- Shopify app developers — find stores already running a competing app, or stores that run everything except yours.
- Suppliers and wholesalers — find retailers selling in your category, sized by real catalog and price band.
- Dropshipping and market research — measure how many stores sell a product, where they're based, and what they charge.
- Sales teams — build a Shopify prospect list with verified contacts and skip the ones you already have in your CRM.
How to find Shopify stores
By product keyword
{"providers": ["shopapp"],"query": "organic coffee","maxItems": 500}
By niche, filtered to real prospects
Find established coffee stores with a working email that already pay for Klaviyo:
{"providers": ["shopapp"],"query": "organic coffee","minProducts": 25,"catalogPriceMin": 20,"requireEmail": true,"usesApps": ["Klaviyo"],"minLeadScore": 60}
Newly launched Shopify stores
New stores are the highest-value segment for agencies and app developers — they
are still choosing their tools. sortBy: "most_recent" is how you reach them:
{"providers": ["shopapp"],"query": "skincare","sortBy": "most_recent","maxStoreAgeMonths": 12,"requireEmail": true}
Everything in a category
A single keyword runs out of stores fast. The taxonomy provider walks the
Shopify product category tree instead, so it keeps finding new merchants long
after keyword search is exhausted:
{"providers": ["taxonomy"],"query": "coffee","maxItems": 5000,"skipPreviouslyScraped": true}
Enrich Shopify stores you already have
Already have a domain list? Skip discovery entirely and just enrich it — no proxy needed, and it's the cheapest way to run this:
{"providers": ["domains"],"domains": ["allbirds.com", "deathwishcoffee.com", "gymshark.com"]}
Find stores in a specific country
{"providers": ["shopapp"],"query": "candles","storeCountry": "GB","requireEmail": true}
Example output
{"name": "Death Wish Coffee","domain": "www.deathwishcoffee.com","myshopifyDomain": "deathwishcoffee.myshopify.com","primaryEmail": "hey@deathwishcoffee.com","primaryEmailConfidence": "medium","socials": { "instagram": "...", "facebook": "...", "youtube": "..." },"productCount": 149,"priceMin": 5, "priceMedian": 32.75, "priceMax": 119.99,"inStockRate": 0.88,"estimatedStoreAgeMonths": 154,"topProductTypes": [{ "name": "Apparel", "count": 38 }, { "name": "Coffee", "count": 32 }],"verifiedAddress": { "city": "Round Lake", "region": "New York", "country": "US" },"currency": "USD","theme": { "name": "Dawn", "isCustomTheme": true },"apps": [{ "app": "Klaviyo", "category": "email" },{ "app": "Gorgias", "category": "helpdesk" },{ "app": "Smile.io", "category": "loyalty" }],"rating": 4.7,"leadScore": 77}
Where the data comes from
Five discovery sources, switchable via providers:
| Provider | Finds stores by | Targeting | Volume |
|---|---|---|---|
shopapp | Keyword and facet search on Shopify's own marketplace | Best | Medium |
taxonomy | Walking the Shopify product category tree | Best | Highest |
domains | Your own list — enrichment only | You choose | Your list |
iprange | Reverse IP on Shopify's hosting range | None | Very high |
serp | Search engines | Good | Medium |
Every store found is then read directly from its own public storefront endpoints — the same data Shopify serves to any visitor. That's where the catalog, pricing, theme and app data comes from, and it's why the output is deeper than tools that only resell one search API.
Filtering: only pay for leads you'd actually contact
Filters run against the enriched data, not just search results, and only stores
that pass count toward maxItems:
| Filter | Finds |
|---|---|
minProducts / maxProducts | Stores sized to your offer |
maxStoreAgeMonths | Newly launched Shopify stores |
catalogPriceMin / catalogPriceMax | Stores at your price point |
requireEmail / requirePhone | Only contactable leads |
usesApps / excludeApps | Stores running (or missing) specific apps |
customThemeOnly | Agency-built stores, i.e. stores with budget |
storeCountry | Stores based in one country |
minRating / minLeadScore | Only well-rated or high-scoring stores |
Lead score
Every store gets a 0-100 score so a large export can be sorted by who to contact
first. It weighs contactability, catalog size, publishing activity, tech
sophistication and review reputation. It's a ranking heuristic, not a promise —
tune minLeadScore against leads you know converted.
Not paying for the same lead twice
skipPreviouslyScrapedremembers delivered stores between runs, stored as a readable domain list you can inspect — not opaque internal state.excludeDomainsseeds it from your CRM, so you never pay for a lead you own.resetSeenStoresclears the history without losing the run.
Keeping costs down
Residential proxy transfer is billed per gigabyte and storefront payloads are
large, so storefrontProxyMode defaults to auto: requests go direct and fall
back to a proxy only for storefronts that actually block us. That cuts the
running cost by roughly 70% versus proxying everything, with no loss of
coverage. The domains provider needs no proxy at all.
Notes and limits
- Store age is a lower bound on large catalogs. It's derived from the oldest
product sampled, and
/products.jsonisn't ordered by creation date, so a partial sample can make a store look newer than it is. Each record carriesstoreAgeConfidence(exactorlower-bound), and whenmaxStoreAgeMonthsis set, unverifiable ages are rejected rather than reported as new. RaisecatalogPagesto sample deeper, or setallowUnverifiedAgeto keep them. productCountis capped by Shopify at 25001; records above that carryproductCountCapped: trueand should be read as "25,000+".- App detection is fingerprint-based, so it finds apps that ship front-end assets. Purely back-office apps leave no trace on the storefront.
- Some storefronts sit behind bot protection and answer nothing. They're
reported as
verificationStatus: "blocked"rather than silently dropped, and excluded by default unless you setkeepUnverified.
FAQ
Do I need store URLs? No. Give it a keyword or category and it finds the
stores. If you do have URLs, the domains provider enriches them directly.
Can it find stores in a specific country? Yes — storeCountry matches
against each store's own verified account country, not a guess from the domain.
Can it tell me which apps a Shopify store uses? Yes, around 30 common apps are detected from the storefront, including Klaviyo, Recharge, Gorgias, Yotpo, Judge.me, Loox, Okendo, Attentive, Postscript, Smile.io, LoyaltyLion, PageFly and Shogun.
How many stores can I get? Set maxItems up to 20,000 per run. Use the
taxonomy provider with skipPreviouslyScraped to keep pulling fresh stores
across runs.
Are the emails verified? Each email carries a confidence rating. high
means it came from a real mailto: link on the store's own domain. Use
requireEmail to drop stores without one.
Is this allowed? It reads publicly available storefront data — the same pages and endpoints Shopify serves to any visitor. Use the output in line with applicable marketing and privacy law (GDPR, CAN-SPAM) in your market.