Shopify & Ecommerce Store Finder — Emails, Phones & Tech (69M) avatar

Shopify & Ecommerce Store Finder — Emails, Phones & Tech (69M)

Pricing

from $6.50 / 1,000 store records

Go to Apify Store
Shopify & Ecommerce Store Finder — Emails, Phones & Tech (69M)

Shopify & Ecommerce Store Finder — Emails, Phones & Tech (69M)

Find Shopify & ecommerce stores at scale: 69M+ sites across Shopify, WooCommerce, Wix, WordPress and more. Verified emails, phones, tech stack and 59 firmographic fields. Filter by platform, country and tech. 1 store = 1 row.

Pricing

from $6.50 / 1,000 store records

Rating

5.0

(1)

Developer

Apivault Labs

Apivault Labs

Maintained by Community

Actor stats

4

Bookmarked

401

Total users

135

Monthly active users

0.12 hours

Issues response

a day ago

Last modified

Share

69M+ website leads with emails, phones, tech and traffic

Ecommerce & Website Leads Database — 69M Sites, Emails, Phones, Tech Stack

A pre-built B2B website leads database with 69 million sites across ecommerce, CMS and mixed website datasets — including available business emails, phone numbers, social profiles, tech stack, firmographics and geo. Optionally add monthly visits, growth, engagement and acquisition-channel estimates from a 40M+ website traffic dataset. New records and datasets are added over time, and existing ones are periodically re-enriched.

1 site = 1 row. Pick platforms, apply filters, choose columns, and export fast results from a continuously updated database.

Try 10 Shopify stores with business emails →


AI agent quick start

Actor tool ID: apivault_labs/website-leads-database

Platform selections identify source datasets, not a guaranteed technology on every individual website. Use the returned technology fields when you need an exact CMS, commerce platform, payment provider or framework match.

For reliable autonomous calls, always send workflow, platforms, maxItems and an outputPreset. Keep dedupeByDomain: true. Start with 10–50 rows; use workflow: "count" before requesting a large export. Use outputPreset: "custom" only when you need to supply an exact columns list. An empty dataset is a valid successful result—read SUMMARY to distinguish NO_RESULTS, partial data, invalid input and a spending-limit stop.

Choose the input deterministically:

User intentInput contractPrimary output
Find Shopify or platform-specific storesworkflow=export + explicit platforms + a small maxItemsOne lead per website
Find leads in a countryplatforms + ISO-2 countryFiltered website leads
Require contact datahasEmail=true and/or hasPhone=trueContactable leads only
Filter any known fieldStructured filters using an allowed column and operatorRows matching every condition
Estimate audience sizeSame filters + workflow=countCOUNT_SUMMARY, no dataset rows
Continue a capped exportCopy resumeInput from EXPORT_CONTINUATIONNext deterministic page

Minimal agent-safe request:

{
"workflow": "export",
"platforms": ["shopify_sites"],
"country": ["US"],
"hasEmail": true,
"sortBy": "Tranco",
"sortDesc": false,
"dedupeByDomain": true,
"maxItems": 25,
"outputPreset": "contacts"
}

Agent rules:

  • Use exact platform enum values such as shopify_sites; never invent table names.
  • Prefer compact, contacts, sales, traffic, or full; use custom only with an explicit columns list.
  • Use exact case-sensitive output column names, including spaces.
  • Every filters item must contain an allowed column and operator.
  • All filters are combined with AND. in_list accepts a comma-separated string.
  • Contact and technology fields are semicolon-separated strings, not JSON arrays.
  • Counts are segment-row counts and can include cross-platform overlap.
  • Read SUMMARY after every run. If isComplete=false, inspect ERRORS or EXPORT_CONTINUATION before presenting the result as complete.
  • Never treat a missing optional field as proof that the company has no such data.

Use through Apify MCP

Expose only this Actor to an MCP-compatible agent:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=apivault_labs/website-leads-database"
}
}
}

OAuth is recommended. Example prompt: Use apivault_labs/website-leads-database to return 25 US Shopify stores with business emails. Request only domain, company, email, phone, country and ecommerce-platform fields.

The default dataset contains paid lead rows. SUMMARY, ERRORS, COUNT_SUMMARY and EXPORT_CONTINUATION are diagnostic Key-Value Store records and are never inserted as fake leads.


Platforms (14)

PlatformSitesDescription
WordPress20.6MSites built on WordPress CMS
Wix8.9MWebsites and stores built on Wix
Shopify7.0MShopify storefronts worldwide
WooCommerce6.5MWordPress + WooCommerce stores
ASP.NET4.6MSites on the Microsoft ASP.NET stack
Mastercard4.6MMerchants accepting Mastercard online
WooCommerce Checkout3.5MWooCommerce sites with active checkout
Squarespace2.9MSquarespace-powered sites with ecommerce
Mailchimp920KSites using Mailchimp for email marketing
Joomla770KSites built on Joomla CMS
PrestaShop174KPrestaShop ecommerce stores
Magento105KMagento / Adobe Commerce stores
BigCommerce37KBigCommerce storefronts
AngularGrowingWebsites built with Angular

Select All platforms (default) or pick one or more.


What you get per site

  • Domain & company — Root Domain, Primary Domain, Company, Vertical
  • Contact data — Available business emails, Telephones (international format), Owner/People
  • Social profiles — Facebook, Instagram, LinkedIn, X/Twitter, TikTok, YouTube, Pinterest, GitHub, Vimeo, Threads, Weibo, Vk
  • Firmographics — Sales Revenue, Employees, SKU count, Technology Spend, Ticker
  • Tech stack — eCommerce Platform, CMS Platform, CRM Platform, Marketing Automation, Payment Platforms, Hosting Provider, AI tools
  • Rankings & performance — Overall Score, Tranco, Page Rank, Majestic, Umbrella, CRuX Rank, Cloudflare Rank, Performance, Accessibility, SEO, Best Practices
  • Geo — City, State, Zip, Country
  • Dates — First Detected, Last Found, First Indexed, Last Indexed
  • Other — Has Ads, Agency, Compliance, Exclusion, Verified Profiles
  • Optional traffic enrichment — Monthly Visits, Global Traffic Rank, Traffic Growth, Bounce Rate, Pages per Visit, Average Visit Duration, Search/Direct/Social/Ads/AI Traffic Share and Traffic Data Date

Leave Output columns empty to get all 59 core fields, or select only the ones you need. Add website traffic data is optional and disabled by default so ordinary exports stay fast. Enable it when visits and acquisition-channel estimates are required; covered domains are enriched in large batches and unmatched domains remain valid leads with empty traffic fields.

To build a traffic-qualified prospect list, enable Only sites with traffic data, set optional Minimum/Maximum monthly visits, or choose a monthly visits sort order. These controls automatically enable enrichment. Rows outside the requested range are removed before they reach the Dataset, so they are not charged as exported leads. Traffic-filtered pagination uses the returned eligible rows and the copy-ready resumeInput in EXPORT_CONTINUATION.


Filters

Narrow your results without re-running or paying more:

FilterHow it works
CountriesOne or more ISO-2 codes (DE, US, IT…)
KeywordSubstring match in domain or company name
Only with emailSkip sites without an available email
Only with phoneSkip sites without a phone number
Phone country codeE.g. +44 — keeps sites with at least one matching phone
Extra filtersJSON conditions on ANY column — equals, contains, starts_with, in_list, not_empty and more (9 operators). Combine multiple conditions with AND.
Only sites with traffic dataExcludes websites without a traffic estimate and automatically enables enrichment.
Monthly visits rangeOptional minimum and maximum estimated monthly visits; unmatched rows are excluded before billing.
Traffic orderOrder each selected export window from highest or lowest monthly visits.

Example extra filter

[
{ "column": "Payment Platforms", "operator": "contains", "value": "PayPal" },
{ "column": "City", "operator": "equals", "value": "Berlin" }
]

Sorting & limits

  • Sort by — Overall Score, Tranco, Sales Revenue, Employees, Technology Spend, Page Rank, SKU, Performance, SEO, Last Found. Get the top leads instead of a random slice.
  • Max rows — up to 250,000 per run (no total cap — use offset to page further across runs).
  • Deduplicate by domain — removes cross-platform overlap when several source datasets are selected. Individual platform datasets are already unique.
  • Count only — preview how many sites match your filters without creating billable dataset rows. The result is saved as COUNT_SUMMARY in the run's Key-Value Store.

Continue a large export

When a run reaches Max rows or its spending limit, open the run's Key-Value Store and copy resumeInput from EXPORT_CONTINUATION into a new run. It contains the exact nextOffset, including source rows skipped by domain deduplication, so the next export does not repeat the part already processed.


Output example

[
{
"Root Domain": "ripcurl.com.au",
"Company": "Rip Curl",
"Country": "AU",
"City": "Torquay",
"Emails": "estore@ripcurl.com.au;service_centre@ripcurl.com.au",
"Telephones": "+61-3-0098-9014",
"eCommerce Platform": "Shopify",
"Sales Revenue": "$50M-$100M",
"Employees": "1,001-5,000",
"Overall Score": "87",
"Monthly Visits": 184200,
"Global Traffic Rank": 104312,
"Traffic Growth": 12.8,
"Bounce Rate": 41.7,
"Pages per Visit": 3.2,
"Average Visit Duration": 146.0,
"Search Traffic Share": 52.4,
"Direct Traffic Share": 31.1,
"Social Traffic Share": 8.3,
"Ads Traffic Share": 4.6,
"AI Traffic Share": 0.4,
"Traffic Data Date": "2026-08-31T00:00:00+00:00",
"_platform": "Shopify"
},
{
"Root Domain": "seawitchcandles.co.uk",
"Company": "Sea Witch Candles",
"Country": "GB",
"City": "Penzance",
"Emails": "info@seawitchcandles.co.uk",
"Telephones": "+44-1736-731035",
"eCommerce Platform": "Shopify",
"Sales Revenue": "",
"Employees": "",
"Overall Score": "",
"_platform": "Shopify"
}
]

_platform is always included so every row identifies its source segment. Traffic values are third-party estimates, not the website owner's analytics. Coverage and freshness vary by domain; always check Traffic Data Date.


Export (CSV / JSON / XML / Excel)

Every run stores results in a dataset. Download in any format — no re-run needed:

  • In the app: open the run → Storage / Export → pick format.
  • Via API: https://api.apify.com/v2/datasets/{datasetId}/items?format=csv (also json, xml, xlsx, html, jsonl).

Use cases

  • Web agencies — find businesses on outdated platforms, pitch redesigns
  • SaaS sales — target stores by tech stack, revenue or employee count
  • Lead generation — bulk export emails + phones filtered by country and vertical
  • Market research — analyze platform market share, payment adoption, geo distribution
  • SEO & marketing — discover sites by performance score, ranking, ad presence

Need leads based on an exact technology combination?

Use BuiltWith Alternative — Tech Stack Leads & Lookup to reverse-find websites using Shopify, Klaviyo, HubSpot, Stripe and other technologies with AND / OR / NOT matching, freshness filters and domain tech-stack lookup. It uses the same broad website coverage but is optimized for technology-based prospecting and competitor-user campaigns.


Data freshness

The database is expanded and re-enriched over time: new sites and platforms are added, and existing records are periodically refreshed with updated contact data, technology information, and rankings. Use the Last Found and Last Indexed columns to check when a given record was last refreshed.


Limitations

  • Keyword searches cover a very large dataset, so rare or highly specific searches can take longer than common filters.
  • Data availability and freshness vary by platform and field. Use Last Found and Last Indexed when recency is important.

This Actor returns publicly available business (B2B) information — it does not access private, paywalled, or login-protected data.

Some fields (for example an email, phone number, or a person's name tied to a small business) can qualify as personal data under laws such as the EU/UK GDPR and the California CCPA/CPRA. When you run this Actor and export results, you — not Apify or the Actor developer — act as the data controller for how you use them, and you are responsible for:

  • having a lawful basis (for B2B outreach this is usually legitimate interest);
  • honoring data-subject rights (access, correction, deletion, opt-out);
  • following marketing/outreach rules (e.g. GDPR/ePrivacy, CAN-SPAM, CASL) before contacting anyone;
  • keeping the data secure and using it only for the stated purpose.

Responsible use

  • Intended for B2B lead generation, sales, and market research — prefer business contacts (e.g. info@, contact@) over personal details.
  • Do not use the data for spam, harassment, or any purpose prohibited by applicable law.
  • Comply with the privacy, marketing, and data-protection rules of the jurisdictions you operate in and target.

This section is general information, not legal advice. If you are unsure how these rules apply to your use case, consult a qualified lawyer.

Python quickstarts

Install the maintained thin client from PyPI:

$pip install website-leads-database==0.2.0

The public Python SDK and examples cover audience count, a safe 50-row sample, contact export, traffic-qualified leads and copy-ready next-page continuation. The package calls this hosted Actor through the public Apify API; it does not contain the underlying data collection or infrastructure.

Ready-to-import n8n workflow

Turn qualified website records into a CRM-ready lead stream with the maintained Website Leads n8n connector. Download the quickstart workflow, import it into n8n, add your Apify API credential, and review the safe 50-row traffic-qualified sample before increasing the limit.