Yelp Business Scraper | Leads & Tech Stack | $3/1K
Pricing
from $3.00 / 1,000 business-scrapeds
Yelp Business Scraper | Leads & Tech Stack | $3/1K
Analyze public Yelp business URLs and enrich available ratings, reviews, hours, contacts, website technology, and heuristic lead signals. Export JSON or CSV with a hard result cap. $3 per 1,000 successful Dataset records plus a $0.00005 run-start event.
Pricing
from $3.00 / 1,000 business-scrapeds
Rating
0.0
(0)
Developer
Apivault Labs
Maintained by CommunityActor stats
0
Bookmarked
42
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Yelp Business Scraper — Leads, Contacts & Tech Stack

Turn direct Yelp business URLs into structured business records for local lead research, CRM preparation, market analysis, and website audits. The Actor collects available listing fields, optionally enriches the linked website, and exports JSON or flattened CSV-friendly rows.
Price: $3 per 1,000 successful businesses ($0.003 per Dataset record), plus the configured $0.00005 run-start event. Invalid URLs, duplicates, failed extractions, skipped chains, summaries, and diagnostics do not create paid Dataset-result events.
What you can collect
- Business name, rating, review count, categories, price range, address, phone, and available hours
- Business website plus public email, phone, and social-profile signals found on that website
- Detected website technologies and basic SEO/mobile signals
- Structured schedule, address, and amenity fields when the source exposes enough data
- Heuristic popularity, online-presence, chain-likelihood, and lead scores
- A draft outreach message and contact links for review and personalization
- JSON output or flattened rows suitable for CSV, spreadsheets, and CRM imports
Availability varies by listing, country, website, and source response. Point-in-time fields such as rating, review count, hours, and open status can change after collection.
Quick start
{"businessUrls": ["https://www.yelp.com/biz/tartine-bakery-san-francisco"],"maxResults": 25,"guessEmailPatterns": false,"exportFormat": "default"}
businessUrls accepts direct Yelp /biz/... pages. URLs are canonicalized, deduplicated, and checked against supported Yelp domains before any business analysis starts. maxResults is a hard run-level cap from 1 to 100.
The input form does not include a prefilled business. Starting without URLs produces an empty successful run with zero paid Dataset-result events; the small run-start event still applies.
Main input options
| Field | Default | Purpose |
|---|---|---|
businessUrls | [] | Direct Yelp business pages |
maxResults | 25 | Hard cap on unique inputs and successful Dataset rows |
extractWebsite | true | Inspect the available business website |
extractContactEnrichment | true | Extract public contact and social signals |
extractHoursIntel | true | Normalize available schedule data |
extractLeadScore | true | Add a heuristic prospecting score |
extractOutreachPitch | true | Add a draft message for human review |
guessEmailPatterns | false | Opt in to clearly separated, unverified address guesses |
excludeChains | false | Skip likely chains using a heuristic threshold |
exportFormat | default | Full JSON or flattened CSV-friendly rows |
writeSummary | true | Write free summary records to the key-value store |
Example output
The exact fields depend on what is available. This shortened example uses a fictional business:
{"inputUrl": "https://www.yelp.com/biz/orion-bakery-example-city","businessName": "Orion Bakery","rating_normalized": 4.7,"reviewsCount_int": 328,"categories": "Bakeries, Coffee & Tea","address": "Example address","phone": "+1 555 010 0100","website": "https://example.org","website_tech_stack": ["Google Analytics"],"leadScore": 72,"leadTier": "hot","leadScoreMethod": "heuristic","sourceMode": "yelp_page","collectedAt": "2026-08-27T12:00:00+00:00","success": true}
The example is illustrative. It does not represent a live company or guaranteed field coverage.
Outputs and billing behavior
- Dataset — only substantive successful business records; each row emits one
business-scrapedpaid event. SUMMARY— run counts, limits, delivery count, aggregate signals, and billing note.TOP_LEADS— up to 20 successful businesses sorted by the heuristic lead score.FAILED_BUSINESSES— invalid, failed, or insufficient inputs; not added to the paid Dataset.SOURCE_ERRORS— diagnostics for unavailable optional sources; not added to the paid Dataset.
Empty input succeeds with zero Dataset items. Duplicate and unsupported URLs are reported without paid Dataset-result events. Partial fallback records are also withheld unless they contain a business name plus substantive business data. The configured run-start event applies to every run.
API example
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("apivault_labs/yelp-business-scraper").call(run_input={"businessUrls": ["https://www.yelp.com/biz/tartine-bakery-san-francisco"],"maxResults": 1,"guessEmailPatterns": False,})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(items)
Responsible use
Use only data you are permitted to collect and follow Yelp's terms, privacy requirements, and applicable marketing and anti-spam laws. Verify contact data and generated outreach drafts before use. Email guesses are unverified by design.
Lead scores, website audits, chain indicators, and outreach suggestions are heuristics—not factual determinations. Do not use them as the sole basis for employment, credit, housing, insurance, healthcare, legal, or other high-impact decisions.
Reliability notes
Public pages and linked websites change, block requests, or omit fields. A successful run means the Actor completed; it does not guarantee that every requested URL yields a Dataset row. Use SUMMARY and FAILED_BUSINESSES to reconcile requested, rejected, and delivered records.
For repeatable costs, set maxResults explicitly and keep unverified email guessing disabled unless your workflow truly needs it.