Shopify Store Leads Scraper — Emails, Phones & Socials avatar

Shopify Store Leads Scraper — Emails, Phones & Socials

Pricing

from $2.99 / 1,000 store scrapeds

Go to Apify Store
Shopify Store Leads Scraper — Emails, Phones & Socials

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

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

2 days ago

Last modified

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.

How the Shopify Store Leads Scraper works

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.com domain.
  • 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

InputWhat it does
Search queryProduct keyword to find stores that sell it. Optional if a category is set.
CategoryOne of 14 product categories to browse. Optional if a query is set.
Store locationRestrict to a country or a named region.
Min / Max priceKeep stores whose sample product falls in a price band.
On sale onlyKeep stores whose sample product is currently discounted.
Max storesCap on unique stores returned (one billable row each).
Enrich with store website emailsFetch each store's own site for extra emails / phones / socials.
Detect payment stackDuring 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

  1. You enter a product keyword, a category, or both — plus any location / price filters.
  2. 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.
  3. Each unique store is mapped to a clean lead row — website (tracking parameters stripped), .myshopify.com domain, emails, phones, socials, address, rating and reviews.
  4. 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.
  5. 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

FieldTypeDescription
idstringShop marketplace store id
shopifyIdstringUnderlying Shopify shop id
namestringStore name
websitestringStore's own website (tracking params stripped)
myshopifyDomainstringstore.myshopify.com domain
shopUrlstringShop marketplace profile URL
email / emailsstring / arrayPrimary email and all emails found
phone / phonesstring / arrayPrimary phone and all phones found
socialsobjectFacebook, Instagram, Pinterest, YouTube, TikTok, Twitter, LinkedIn
addressobjectaddress1/2, city, state, stateCode, country, postalCode, company, formatted[]
ratingnumberAverage product rating (out of 5)
totalRatingsnumberNumber of ratings
totalReviewsnumberNumber of written reviews
sampleProductobjectRepresentative product (title, price, currency, originalPrice, onSale, url)
contactsarrayEvery contact method as { method, target }
emailEnrichmentobjectPresent when enrichment is on — website, emails, phones, socials, source, confidence, payment
scrapedAtstringISO 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.