Shopify Store Leads Scraper – Emails, Socials & Products
Pricing
from $3.00 / 1,000 verified shopify stores
Shopify Store Leads Scraper – Emails, Socials & Products
Find Shopify stores by niche keyword, or bulk-check your own domain list to see which ones run Shopify. Get store name, product count, price range, currency, theme, socials and public business emails/phones. Pay only for verified Shopify stores. No proxy, API key or login.
Pricing
from $3.00 / 1,000 verified shopify stores
Rating
0.0
(0)
Developer
Haydon Apolinar
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Shopify Store Leads Scraper builds a Shopify store list for any niche, or checks a list of domains you already have to see which ones run Shopify. Each verified store comes back as a Shopify store lead: structured data you can drop into a CRM, spreadsheet or outreach tool. Unlike a static database, this Shopify store scraper checks every store live at run time:
- ✅ Verified Shopify (4 independent signals, including headless/Hydrogen storefronts)
- 🏷️ Store name, primary domain and
*.myshopify.comdomain - 📦 Product count (exact, from the store's own catalog) and price range (min / max / average)
- 💱 Store currency and Shopify theme (name + theme store ID)
- 📣 Social profiles: Instagram, Facebook, TikTok, YouTube, Pinterest, LinkedIn, X
- ✉️ Public business contact info: role emails (info@, hello@, support@…) and phone numbers published on the store's own site
- 🌍 Enriched mode: city / region / country, store description, number of ship-to countries, top product types, vendors, last product published
You only pay for verified Shopify stores. Domains that turn out not to be Shopify are free.
Who uses this Shopify store leads scraper
- Agencies & freelancers (Shopify developers, theme designers, CRO/SEO/ads agencies) building prospect lists in a niche
- SaaS & Shopify app makers finding stores that fit their app (e.g., by theme, catalog size, price point)
- Wholesalers, suppliers & 3PLs finding retailers in their category ("soy candles", "dog treats", "coffee")
- Market researchers sizing a niche: how many stores, typical catalog size and price range
- Sales teams enriching and cleaning an existing domain list: which domains really run Shopify?
How to find Shopify stores in a niche
- Input: niche keywords, a list of domains/URLs, or both.
- Discovery (keywords only): candidate stores are found through web search (see below).
- Verification: each candidate is checked with up to four signals:
Shopify response headers, Shopify code in the homepage, the store's public
/meta.json, and its public/products.jsoncatalog. Headless storefronts (custom frontends such as Hydrogen) are detected through their*.myshopify.comreference and markedstorefront: "headless". - Extraction: store data, catalog stats, socials and public contact details from the homepage (plus contact/about pages in enriched mode).
- Output: one row per verified store in the dataset (JSON, CSV, Excel, or via API/integrations).
Plain HTTP only (no browser) and no proxy needed, so it's fast and cheap.
Check if a website is Shopify (bulk Shopify checker)
Already have a list of domains? Put them in domains and leave keywords empty. Every domain is checked with up to four independent signals:
- Shopify response headers
- Shopify code in the homepage
- the store's public
/meta.json - its public
/products.jsoncatalog
Headless storefronts (custom frontends such as Hydrogen) are recognised through their *.myshopify.com reference and marked storefront: "headless". Domains that aren't Shopify are free. Set includeNonShopify: true to see them in the output too, for example to clean a CRM list.
Shopify store list by country
There's no built-in country filter yet. To build a Shopify store list for one country:
- Run discovery with niche keywords, optionally including the country or a city (e.g. "coffee roasters canada").
- Filter the dataset by
currency(available in base mode), or bycountryin enriched mode (taken from the store's own public data).
Discovery methods
| Method | Cost | What to expect |
|---|---|---|
| Bing – Best-effort / Fast niche discovery (default) | free (only verified stores are charged) | Best-effort: ~60% of candidates are Shopify, but only a few candidates per keyword. Great for quick, small niche lists. |
Google Search (discoveryMethod: "google-search-actor") | Google results are billed to your Apify account by apify/google-search-scraper, about $0.0045 per results page on the Free tier | ~83% of candidates are Shopify, with far more candidates per keyword. Best for volume. |
Your own domain list (domains) | only verified stores are charged | Bring lists from your CRM, a trade directory or a public crawl. |
Large runs (hundreds or thousands of stores): use the Google option ("discoveryMethod": "google-search-actor"). It costs about $0.0045 per Google results page, billed to your own Apify account/quota by Apify's Google Search Scraper, on top of this Actor's per-store price.
Tip: try several narrow keywords ("soy candles", "beeswax candles", "candle making supplies") instead of one broad one.
Input example
{"keywords": ["soy candles", "dog treats"],"discoveryMethod": "bing","maxStores": 200,"enriched": false,"roleEmailsOnly": true}
Verify your own list:
{ "domains": ["ugmonk.com", "https://www.taylorstitch.com", "milkhousecandles.com"], "enriched": true }
Output example (base mode)
{"domain": "milkhousecandles.com","primaryDomain": "milkhousecandles.com","url": "https://milkhousecandles.com","storeName": "Milkhouse Candle Company","shopifyConfirmed": true,"storefront": "online-store","shopifySignals": { "header": true, "html": true, "productsJson": true, "meta": true, "myshopifyRef": true },"myshopifyDomain": "15cf4c.myshopify.com","productCount": 396,"productCountSource": "meta.json","priceMin": 2.5,"priceMax": 950,"priceAvg": 47.85,"priceSampleSize": 250,"currency": "USD","theme": "Stiletto","themeStoreId": 1621,"socials": {"facebook": "https://facebook.com/MilkhouseCandles","instagram": "https://instagram.com/milkhousecandleco","pinterest": "https://pinterest.com/milkhousecandleco","tiktok": "https://tiktok.com/@milkhousecandles","youtube": "https://youtube.com/channel/UCPk7WgC6JwB64s8BALneWXg"},"emails": [],"phones": [],"discoveredBy": "soy candles site:myshopify.com","pagesChecked": ["https://milkhousecandles.com/"],"checkedAt": "2026-10-09T20:52:00.050Z"}
Extra fields in enriched mode
{"domain": "ugmonk.com","storeName": "Ugmonk","city": "Downingtown", "province": "Pennsylvania", "country": "US","shipsToCountryCount": 189,"topProductTypes": ["Analog", "Journal", "Wood", "Warehouse", "Notebook"],"vendors": ["Ugmonk"],"lastProductPublishedAt": "2026-10-07T11:16:05-04:00","emails": ["info@ugmonk.com"],"pagesChecked": ["https://ugmonk.com/", "https://ugmonk.com/pages/about", "https://ugmonk.com/pages/contact-us"],"priceSampleSize": 191}
How much does it cost to scrape Shopify store leads?
| Event | Price | Per 1,000 |
|---|---|---|
Verified Shopify store (store) | $0.003 | $3.00 |
Enriched mode add-on (enriched-store) | $0.002 | +$2.00 |
| Domains that aren't Shopify | free | free |
Examples: 100 stores = $0.30 · 1,000 stores = $3.00 · 1,000 enriched stores = $5.00. Set a max cost per run to cap your spend; the Actor stops cleanly when the cap is reached.
Limits & good to know
- Contact details come only from the store's own public pages. Many stores publish no email, or publish only a contact form. Expect emails for a minority of stores in base mode and more in enriched mode.
- By default only role addresses (info@, hello@, sales@…) are returned. Named-person addresses are dropped (see "Data protection").
- Headless stores don't expose a public catalog, so their product count, price range and theme are empty.
- Some large stores rate-limit or block catalog endpoints. They may then be skipped or verified with fewer fields.
- Price range in base mode is computed from the first 250 products. Enriched mode reads up to 1,000 by default (
maxProductPages, max 10,000). - Bing discovery returns only a handful of candidates per keyword. Use more keywords, or the Google option, for volume.
- Product counts come from Shopify's published-products count and can differ slightly from what the storefront shows.
Shopify store leads vs. store databases
Tools such as BuiltWith or StoreLeads-style databases sell lists collected in advance. This Actor works differently:
| This Actor | Prebuilt store database | |
|---|---|---|
| When the data is collected | Live, at run time (checkedAt) | When the database was last crawled |
| What you pay for | Only stores verified as Shopify in your run | Usually a subscription or a per-record price for the list |
| Your own domain list | Checked one by one (bulk Shopify checker) | Matched against the database |
| Coverage | The niches you search and the domains you bring | Whatever the database has crawled |
Choose a database if you need a huge list at once. Choose this Actor if you want fresh, verified stores for specific niches or want to check your own list.
Use with the Apify API, integrations and AI agents (MCP)
- API: start runs and download results with the Apify API or the JavaScript/Python clients.
- Integrations: send results to Google Sheets, Zapier, Make, Slack, webhooks and other Apify integrations.
- Schedules: re-run a niche weekly with an Apify schedule.
- AI agents: like other Store Actors, it can be called by AI agents through the Apify MCP server.
FAQ
How do I find Shopify stores in a specific niche?
Enter one or more niche keywords (e.g. "soy candles", "dog treats"). The Actor searches for candidate stores and keeps only verified Shopify stores. For volume, use the Google discovery option.
How can I tell if a site uses Shopify?
Put the domains in domains. Each one is checked with Shopify headers, homepage code, /meta.json and /products.json, including headless storefronts. Non-Shopify domains are free.
Do I need a proxy or an API key?
No. The default Bing discovery needs no key. The Google option runs Apify's Google Search Scraper on your account and is billed separately.
Can I get the store owner's email?
By default you get only role addresses the store publishes itself (info@, hello@, sales@…). Addresses that look like a named person are dropped. You can turn this off with roleEmailsOnly: false, but read the data protection section first. The Actor never guesses or buys email addresses.
Is it legal to scrape Shopify store data?
The Actor reads only public storefront pages and public JSON endpoints that every Shopify store serves to visitors, with no login. How you use the data, especially for outreach, is regulated (GDPR, CAN-SPAM, CASL, PECR…). See "Data protection & responsible use" below. This is not legal advice.
Is this the official Shopify API?
No. It reads public storefront pages and public JSON endpoints. No login, no private data.
How fresh is the data?
It's collected live at run time (checkedAt).
Data protection & responsible use
This Actor collects publicly available business information that Shopify merchants publish on their own storefronts: store name, catalog statistics, theme, social profile links, and contact details shown on the store's public pages. It does not log in, bypass access controls, buy or guess email addresses, or use third-party data brokers.
By default (roleEmailsOnly: true) it returns only generic business mailboxes (for example info@, hello@, support@, sales@) and drops addresses that look like they belong to a named person.
You are the data controller of the data you collect and are responsible for how you use it. Before contacting anyone, make sure your use complies with the laws that apply to you and your recipients, for example:
- GDPR / UK GDPR (EU, EEA, UK): contact details that identify a person, including those of sole traders and small shops, are personal data. You need a lawful basis, usually legitimate interests with a documented balancing test. You must tell people where you got their data within one month (Art. 14), honor objections and erasure requests, keep only what you need, and secure it.
- ePrivacy / PECR (EU, UK): unsolicited marketing emails to individuals and sole traders generally need prior consent. Rules for corporate subscribers are less strict but still require identification and an easy opt-out. Rules vary by EU member state.
- CAN-SPAM (United States): commercial emails must not use misleading headers or subject lines, must identify themselves as ads where required, must include a valid physical postal address and a working opt-out, and opt-outs must be honored within 10 business days.
- CASL (Canada): commercial electronic messages generally require consent. A conspicuously published business address may give implied consent only if the message relates to the recipient's business role and the address was published without a "no unsolicited messages" statement. Every message must identify the sender and include an unsubscribe mechanism.
- Other laws may apply, such as Australia's Spam Act, Brazil's LGPD and US state privacy laws.
Please also respect each website's terms, don't overload stores (the Actor makes only a few requests per store), and don't use the data for spam, harassment or any unlawful purpose. If you are a store owner and want your data removed from a user's dataset, contact that user. This Actor does not keep a central database.
Related Actors
- WooCommerce Store Leads – Wix, Squarespace & BigCommerce: the same lead data for stores on WooCommerce, Wix, Squarespace and BigCommerce.
- Greenhouse, Lever & Ashby Jobs API – New Job Alerts: hiring signals (new job postings) for the companies you're prospecting.
Built and maintained by Hapol Data (Web Data. Automated.). More Actors: apify.com/hapol.