Shopify Store Leads Scraper — Emails, Phones & Socials
Pricing
from $2.99 / 1,000 store scrapeds
Shopify Store Leads Scraper — Emails, Phones & Socials
Discover Shopify stores by product keyword or category on the Shop marketplace — no store URL needed. Extract emails, phones, addresses, ratings, socials and a sample product per store. Optional enrichment scrapes each store's own site for more contacts. Filter by location & price.
Pricing
from $2.99 / 1,000 store scrapeds
Rating
0.0
(0)
Developer
Muhamed Didovic
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Shopify Store Leads Scraper — Emails, Phones, Socials & Ratings
Discover Shopify stores by product keyword or category and pull back structured store leads — website, emails, phone numbers, business address, star rating, social profiles and a sample product — with no store URL needed. Optional email enrichment fetches each store's own site to surface contacts the marketplace never lists.
Built for B2B outreach, supplier sourcing, agency prospecting and e-commerce market research.

Why use this Shopify Store Leads Scraper?
- No store URLs required — search by what stores sell ("organic coffee", "serum", "yoga mat") or browse a whole category. The scraper finds the stores for you.
- Real contact leads — emails, phones, and Facebook / Instagram / Pinterest / YouTube / TikTok / Twitter / LinkedIn profiles, plus the store's own website and
.myshopify.comdomain. - Optional email enrichment — turn it on and the actor visits each store's own website and reads its contact / about pages to find emails, phones and socials the marketplace does not expose. This is the difference between a website and an actual address to email.
- Ratings & social proof — average product rating, total ratings and total reviews for every store, so you can prioritise established merchants.
- Location & price filters — target a country or region, or filter by the store's sample-product price and on-sale status.
- One row per store, billed per store — clean, deduplicated output. Export to JSON, CSV, Excel or HTML, or pull it over the API.
What does the Shopify Store Leads Scraper do?
It searches the Shop by Shopify marketplace (shop.app) — the consumer marketplace that indexes hundreds of thousands of real Shopify stores — to discover merchants that match your keyword or category, then enriches each one with contact and profile data.
- 🔍 Search by keyword — find stores that sell a specific product.
- 📂 Browse by category — 14 top-level categories (Beauty, Electronics, Home, Food & drinks, Pet supplies…), alone or combined with a keyword.
- 🌍 Filter by location — a single country (US, GB, DE…) or a named region (Europe, North America, English-speaking, UK & Ireland, Nordics, Oceania, Worldwide).
- 📧 Extract contacts — emails, phones and seven social networks straight from the marketplace, merged with anything found on the store's own site when enrichment is on.
- ⭐ Ratings & reviews — average rating, total ratings, total review count.
- 🛍️ Sample product — a representative product per store (title, price, currency, on-sale flag) when discovered via category / price search.
- 💳 Payment detection (optional) — flags whether the store's site exposes a real checkout / payment processor (Stripe, Shopify Payments…), qualifying it as a business that transacts online.
Supported inputs
| Input | What it does |
|---|---|
| Search query | Product keyword to find stores that sell it. Optional if a category is set. |
| Category | One of 14 product categories to browse. Optional if a query is set. |
| Store location | Restrict to a country or a named region. |
| Min / Max price | Keep stores whose sample product falls in a price band. |
| On sale only | Keep stores whose sample product is currently discounted. |
| Max stores | Cap on unique stores returned (one billable row each). |
| Enrich with store website emails | Fetch each store's own site for extra emails / phones / socials. |
| Detect payment stack | During enrichment, flag the store's payment / checkout processor. |
You must provide at least one of Search query or Category.
Use cases
B2B lead generation — Build targeted prospect lists of Shopify store owners by niche and location, with direct contact details for cold outreach. Turn on enrichment to get real inboxes, not just homepages.
Supplier & wholesale discovery — Find every store selling a given product across the Shopify ecosystem, compare ratings and price points, and shortlist suppliers or partners.
Agency prospecting — Discover stores in a vertical and build outreach lists for design, marketing, fulfilment, CRO or Shopify-app services. Payment detection tells you which ones already sell online.
Market & competitor research — Map how many stores operate in a category, where they're based, and how they're rated — a fast read on any niche's competitive landscape.
CRM enrichment — Feed a keyword or category and export straight to CSV / Excel to append emails, phones and socials onto an existing account list.
How it works
- You enter a product keyword, a category, or both — plus any location / price filters.
- The actor discovers matching Shopify stores from the Shop marketplace. Keyword-only searches use the store index directly; category or price searches use product discovery and derive the store behind each product.
- Each unique store is mapped to a clean lead row — website (tracking parameters stripped),
.myshopify.comdomain, emails, phones, socials, address, rating and reviews. - If email enrichment is on, the store's own website is fetched and its contact / about pages are scanned for additional emails, phones and social links, which are merged into the row.
- Each store is written to the dataset as one row, ready to export or pull over the API.
Input configuration
Run it from the Apify Console UI, or via the API / SDK. Example input:
{"query": "organic coffee","storeLocation": "US","maxItems": 200,"enrichEmails": true,"detectPayment": true}
Category browse with a price floor:
{"category": "Beauty","query": "serum","priceMin": 20,"maxItems": 100}
Output overview
Every store is one dataset row. Below is a real, lightly-trimmed example (enrichEmails: true):
{"id": "4521218","shopifyId": "55854628923","name": "IncaFé Organic Coffee","website": "https://www.incafe.co.nz/","myshopifyDomain": "incafe-organic-coffee.myshopify.com","shopUrl": "https://shop.app/m/incafe-organic-coffee","email": "coffee@incafe.co.nz","emails": ["coffee@incafe.co.nz"],"phone": "06 759 1680","phones": ["06 759 1680"],"socials": {"facebook": "https://facebook.com/incafeorganic","instagram": "https://instagram.com/incafeorganic"},"address": {"address1": "6 Cody Place","city": "New Plymouth","state": "Taranaki","stateCode": null,"country": "NZ","postalCode": null,"company": null,"formatted": ["6 Cody Place", "Fitzroy", "Taranaki", "New Plymouth 4312", "New Zealand"]},"rating": 4.9016,"totalRatings": 61,"totalReviews": 20,"sampleProduct": {"title": "Organic House Blend","price": 18.5,"currency": "NZD","originalPrice": null,"onSale": false,"url": "https://www.incafe.co.nz/products/organic-house-blend"},"contacts": [{ "method": "website", "target": "https://www.incafe.co.nz/" },{ "method": "email", "target": "coffee@incafe.co.nz" },{ "method": "phone", "target": "06 759 1680" },{ "method": "facebook", "target": "https://facebook.com/incafeorganic" },{ "method": "instagram", "target": "https://instagram.com/incafeorganic" }],"emailEnrichment": {"website": "https://www.incafe.co.nz","emails": ["coffee@incafe.co.nz"],"source": "site-scrape","confidence": "high","phones": ["06 759 1680"],"payment": { "takesPayments": true, "processors": ["shopify"], "confidence": "medium" }},"scrapedAt": "2026-08-08T13:21:43.220Z"}
Download as JSON, CSV, Excel or HTML from the dataset tab, or fetch via the API.
Key output fields
| Field | Type | Description |
|---|---|---|
id | string | Shop marketplace store id |
shopifyId | string | Underlying Shopify shop id |
name | string | Store name |
website | string | Store's own website (tracking params stripped) |
myshopifyDomain | string | store.myshopify.com domain |
shopUrl | string | Shop marketplace profile URL |
email / emails | string / array | Primary email and all emails found |
phone / phones | string / array | Primary phone and all phones found |
socials | object | Facebook, Instagram, Pinterest, YouTube, TikTok, Twitter, LinkedIn |
address | object | address1/2, city, state, stateCode, country, postalCode, company, formatted[] |
rating | number | Average product rating (out of 5) |
totalRatings | number | Number of ratings |
totalReviews | number | Number of written reviews |
sampleProduct | object | Representative product (title, price, currency, originalPrice, onSale, url) |
contacts | array | Every contact method as { method, target } |
emailEnrichment | object | Present when enrichment is on — website, emails, phones, socials, source, confidence, payment |
scrapedAt | string | ISO timestamp |
FAQ
Do I need a store URL? No. You search by keyword or category; the scraper discovers the stores.
Where does the data come from? The public Shop by Shopify marketplace (shop.app), which indexes real Shopify merchants and their storefront metadata.
Why is email empty for some stores? Not every store publishes an email on the marketplace. Turn on Enrich with store website emails to fetch the store's own site and find one — it's best-effort and skews toward stores that run a full website. phone and address are likewise present only when the store exposes them.
Why is the sample-product currency sometimes different from the store's country? Marketplace prices are returned in the currency inferred for the run's location, so amounts and currency codes can vary between rows. Treat sampleProduct.price as an indicative figure, not a billing-exact quote.
How does the location filter behave for stores with no address? Stores that publish no country are kept rather than dropped, so you don't lose leads to missing metadata. Stores that do publish a country are filtered strictly.
Can I get more stores per run? Yes — raise Max stores. The marketplace routinely returns hundreds to thousands of stores for a broad keyword.
Is this affiliated with Shopify? No. It reads publicly available marketplace data and is not endorsed by or affiliated with Shopify Inc.
Support
Found a bug or need a field added? Open an issue on the actor's Issues tab in the Apify Console and it'll be looked at.
Additional services
Turn on email enrichment to convert store websites into real, mailable contacts — the single biggest lift for outbound campaigns. Pair with payment detection to prioritise stores that already transact online.
Explore more scrapers
This actor pairs well with product-level and storefront scrapers for building a full e-commerce dataset — discover the stores here, then drill into their catalogs.
🤖 For AI Agents & LLM Apps
This actor is a clean tool call for agentic workflows — deterministic JSON in, structured leads out.
Shopify Store Leads Scraper (memo23/shopify-store-leads-scraper) discovers Shopify stores on the Shop marketplace and extracts contact leads.Call via ApifyClient: client.actor("memo23/shopify-store-leads-scraper").call(run_input={"query": "organic coffee", "maxItems": 50, "enrichEmails": true}).Inputs: query (string keyword), category (string — one of Women, Men, Accessories, Beauty, Home, Electronics, "Luggage & bags", "Toys & games", "Pet supplies", "Fitness & nutrition", "Baby & toddler", "Food & drinks", "Sporting goods", "Arts & crafts"; at least one of query/category required), storeLocation (country code like "US"/"GB" or region "EUROPE"/"NORTH_AMERICA"/"ENGLISH_SPEAKING"/"UK_IRELAND"/"NORDICS"/"OCEANIA"/"GLOBAL"), priceMin (int), priceMax (int), onSale (bool), maxItems (int 1–10000, default 50), enrichEmails (bool — fetch each store's own site for extra emails/phones/socials), detectPayment (bool), maxConcurrency (int, default 10).Output per store: id, shopifyId, name, website, myshopifyDomain, shopUrl, email, emails[], phone, phones[], socials{facebook,instagram,pinterest,youtube,tiktok,twitter,linkedin}, address{address1,city,state,country,postalCode,formatted[]}, rating, totalRatings, totalReviews, sampleProduct{title,price,currency,onSale,url}, contacts[{method,target}], emailEnrichment{emails,phones,source,confidence,payment}, scrapedAt.Get an API token: https://console.apify.com/account#/integrations
⚠️ Disclaimer
This actor extracts only publicly available information from the Shop by Shopify marketplace and public store websites. It does not access private, gated, or authenticated data, and it is not affiliated with, endorsed by, or sponsored by Shopify Inc. or Shop. Use the data in compliance with the Shopify and Shop terms of service, applicable data-protection laws (including GDPR/CCPA where relevant), and anti-spam regulations (such as CAN-SPAM and GDPR) when contacting the businesses you discover. You are responsible for how you use the exported data.
SEO Keywords
Shopify store scraper, Shopify leads scraper, Shopify store leads, Shopify email scraper, Shopify store finder, Shop app scraper, shop.app scraper, Shopify store directory, ecommerce leads scraper, Shopify merchant list, Shopify store emails, Shopify B2B leads, DTC brand discovery, Shopify prospecting, find Shopify stores by product, Shopify store contacts, Shopify store database, ecommerce email finder, Shopify niche research, Shopify supplier discovery.