MerchantCircle Business Data & Lead Scraper
Pricing
from $2.00 / 1,000 results
MerchantCircle Business Data & Lead Scraper
Live MerchantCircle local business data: keyword + location search, full profiles, reviews & email discovery. Phones, websites, addresses, hours, ratings streamed to your dataset in real time. Free trial: 2 results per run.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Emmanuel
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
MerchantCircle Real-Time Data
Live local business intelligence from MerchantCircle — keyword + location search, full business profiles, customer reviews, and contact details for lead generation. Structured JSON streamed to your dataset in real time.
Free trial: free Apify plans get 2 results per run. Paid plans are uncapped. See Delivery & limits below.
Who this is for
Agencies, local SEO teams, sales prospectors, and CRM builders who need fresh US small-business leads with phones, addresses, websites, hours, and reviews.
Use cases:
- Build outreach lists by trade + city (plumbers in Brooklyn, dentists in Austin)
- Enrich a CRM with phones, websites, addresses, and hours
- Monitor ratings and review volume across local competitors
- Power local-SEO audits with categories, photos, and review counts
- Feed AI agents with structured business profiles
- Track new businesses appearing for a keyword + ZIP
Features
| Checkbox | What you get |
|---|---|
| 🔍 Business Search (default on) | Keyword + location tasks, fast cards: name, phone, address, photo |
| ✨ Enrich with full lead details | Same search row enriched in place (detailsFetched: true): website, hours, categories, rating, review count |
| ✉️ Discover emails from business websites | Checks each business website homepage for a public contact email, filled into the email column (off by default; adds a little extra time per record) |
| 🏢 Business Details | Full profile for explicit business URLs |
| ⭐ Reviews | Capped customer reviews per business: reviewer, rating, date, text |
| 🔗 Scrape By URL | Any MerchantCircle search, category hub, or business URL, auto-detected |
| 🔔 Webhooks | JSON or Slack push per record, in addition to the dataset |
Input reference
country(select, defaultUS): market region. MerchantCircle is US-first; keepUS.enableBusinessSearch(bool, defaulttrue)searchTasks(array, default[{ keyword: "plumber", location: "Brooklyn, NY 11223" }]): one task per keyword + location pair.searchKeywords+searchLocation: simple mode alternative tosearchTasks.searchMaxResults(int 1–200, default10): max businesses per task.searchFetchLeadDetails(bool, defaultfalse): enrich each search row in place. Adds a little extra time per record.enableBusinessDetails(bool, defaultfalse) +businessUrls(stringList): full profiles.enableReviews(bool, defaultfalse) +reviewBusinessUrls(stringList, falls back tobusinessUrls) +reviewsMaxPerBusiness(int 1–100, default20).enableScrapeByUrl(bool, defaultfalse) +scrapeUrls(stringList).webhookUrl(string, default""),webhookFormat(json|slack, defaultjson).proxyConfiguration(proxy editor, default Residential US).
Empty input still runs a useful demo: Business Search on, one plumber task, 10 rows.
Each enabled checkbox with empty required fields throws a clear feature-level error (e.g. Business Search on with no tasks).
Output fields
One row per business (business_search, business_details), one row per review (review), structured rows for scrape_by_url. Filter views by featureType.
Business fields: business_name, phone, website, email, street_address, city, region, postal_code, full_address, latitude, longitude, categories, about, hours, rating, review_count, logo_url, image_urls, position, detailsFetched.
Review fields: business_name, reviewer_name, review_rating, review_date, review_text, position.
Scrape By URL: pageType (search | hub | business), business_name, phone, data.
Webhook guide
Set webhookUrl to receive each record twice: once in the dataset, once POSTed to your URL.
json: full record object — best for Zapier, Make, n8n, custom bots.slack: friendly message with business name, phone, location, rating, and link.
Delivery is fire-and-forget: failures never stop the run or dataset writes.
MCP / AI-agent usage
Connect via the Apify MCP server, then ask:
"Find 10 plumbers in Brooklyn NY on MerchantCircle with phones and websites, and send the top-rated ones to my webhook."
The agent maps this to enableBusinessSearch + searchTasks + searchFetchLeadDetails.
FAQ
- Which proxy should I use? Residential US (the default) for the most reliable results at scale.
- How does the free trial work? Free Apify plans are capped at 2 results per run with an upgrade notice; the run still exits cleanly with a
paywallsummary on OUTPUT. - How fresh is the data? Every run collects live directory results at run time — what you see is what is listed now.
- Do enriched searches duplicate rows? No. Enrichment merges into the same
business_searchrow (detailsFetched: true). - Is anything filtered out? No. Every discovered business is exported.
- Where do emails come from? MerchantCircle listings do not publish email addresses, so the
emailcolumn is filled by checking each business's own website homepage when email discovery is on. Businesses without a website (or without a public email on it) returnemail: null— never guessed, never faked.
Delivery & limits
- Streams each record as collected; RAM stays light on large runs.
- Run timeout: 10,000 seconds.
- Free-tier: max 2 items in
limitmode with an upgrade warning; 0 items in owner-configuredblockmode. - PPE: charges event
resultper dataset row (override withPPE_EVENT_NAME).