Yelp Scraper - Business Leads, Reviews, Ratings, No API Key
Under maintenancePricing
Pay per event
Yelp Scraper - Business Leads, Reviews, Ratings, No API Key
Under maintenancePricing
Pay per event
Rating
0.0
(0)
Developer
Renzo Madueno
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Yelp Scraper - Business Leads, Reviews, Ratings (No API Key)
Extract Yelp business data at scale — names, star ratings, review counts, prices, categories, full addresses, phone numbers, websites, GPS coordinates, photos, and (optionally) the actual review text — just by giving a search term and a location. No Yelp Fusion API key. No developer account. No rate-limit headaches. You type "coffee shops" + "Austin, TX" and get a clean, export-ready dataset of local businesses.
Most Yelp scrapers and the official Yelp Fusion API force you to register an app, manage an API key, and live inside a 5,000-call/day cap that returns a maximum of 50 results per search and no review text. This Yelp scraper needs none of that. It reads the same business data Yelp serves to a normal browser, so you get the full picture without bringing your own key.
Why use this Yelp scraper
- No API key required — start scraping in seconds, nothing to register.
- Built for lead generation — phone, address, website and category for every business, perfect for cold outreach lists and local sales prospecting.
- Ratings & reviews — average rating, total review count, and optional recent review text (author, rating, date, body).
- Reliable extraction — it parses Yelp's own structured business JSON first, with embedded-JSON and rendered-DOM fallbacks, so results stay populated even when Yelp tweaks its layout.
- Residential proxies built in — Yelp blocks datacenter traffic with PerimeterX; this actor routes through residential IPs so pages load like a real visitor.
- Clean, flat output — one row per business (and one row per review), ready for CSV, Excel, Google Sheets, JSON, or your CRM/database.
What data you get
Per business:
| Field | Type | Description |
|---|---|---|
businessName | string | Business name as listed on Yelp |
alias | string | Yelp business slug (stable id) |
yelpUrl | string | Direct link to the Yelp business page |
rating | number | Average star rating (1.0–5.0) |
reviewCount | integer | Total number of reviews |
priceLevel | string | Price tier ($, $$, $$$, $$$$) |
categories | array | Category tags (e.g. ["Coffee & Tea", "Cafes"]) |
address | string | Street address when shown on the result card |
city / state / zipCode | string | Location parts when available |
neighborhood | string | Neighborhood when available |
phone | string | Business phone number (sponsored results) |
website | string | Business website when listed |
latitude / longitude | number | GPS coordinates when available |
imageUrl | string | Cover photo URL |
isAdvertised | boolean | true for paid/sponsored listings |
searchTerm / location | string | The query that returned this row |
scrapedAt | string | ISO 8601 collection timestamp |
Per review (when includeReviews is on), dataType: "review":
| Field | Description |
|---|---|
businessName, alias, yelpUrl | Which business the review belongs to |
reviewAuthor | Reviewer name |
reviewRating | Star rating of the review |
reviewDate | Date published |
reviewText | Review body |
Input
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
searchTerm | string | Yes | — | What to search, e.g. coffee shops, dentists, plumbers |
location | string | Yes | — | City + state or ZIP, e.g. Austin, TX or 90210 |
searchTerms | array | No | — | Extra terms to run in the same location |
maxResults | integer | No | 50 | Max businesses per term (Yelp paginates 10/page) |
includeReviews | boolean | No | false | Also scrape recent reviews per business |
maxReviewsPerBusiness | integer | No | 5 | Reviews to pull per business when reviews are on |
proxyCountry | string | No | US | Residential proxy country for the location you scrape |
Example input
{"searchTerm": "coffee shops","location": "Austin, TX","maxResults": 50,"includeReviews": false}
Example output
{"businessName": "Houndstooth Coffee","alias": "houndstooth-coffee-austin","yelpUrl": "https://www.yelp.com/biz/houndstooth-coffee-austin","rating": 4.4,"reviewCount": 612,"priceLevel": "$$","categories": ["Coffee & Tea", "Cafes"],"address": "401 Congress Ave, Austin, TX 78701","city": "Austin","state": "TX","zipCode": "78701","phone": "(512) 394-6051","website": "houndstoothcoffee.com","latitude": 30.2669,"longitude": -97.7428,"imageUrl": "https://s3-media0.fl.yelpcdn.com/...","isAdvertised": false,"searchTerm": "coffee shops","location": "Austin, TX","scrapedAt": "2026-06-12T00:00:00.000Z"}
Use cases
- Local lead generation — build prospect lists of dentists, lawyers, contractors, gyms, salons, restaurants, or any niche in any city, with phone + website ready for outreach.
- Sales prospecting & cold email/SMS — export business contact details straight into your CRM.
- Competitive intelligence — track competitors' ratings and review velocity over time.
- Market research & gap analysis — count businesses per category to size a local market.
- Local SEO & reputation — study top-rated competitors and review sentiment.
- Restaurant / retail analytics — price-tier and rating distributions for reports.
How it works
The actor opens Yelp's search results in a real headless Chrome through Apify residential proxies, then captures the structured business data Yelp itself loads — first from its internal search responses, then from JSON embedded in the page, and finally from the rendered cards as a fallback. Because Yelp gates everything behind PerimeterX bot protection, residential IPs are required; the actor handles that automatically. It paginates 10 results per page until it reaches maxResults, deduplicates by business, and (optionally) visits each business page to pull recent reviews from its structured review data.
FAQ
Do I need a Yelp API key or Yelp developer account? No. That is the whole point. Unlike the Yelp Fusion API and key-based scrapers, this actor works with zero credentials.
Is this better than the Yelp Fusion API? For most lead-gen and research jobs, yes: no key, no 50-results-per-search cap, no 5,000-calls/day quota, and you can also get review text — which Fusion does not give you in full.
Can I scrape Yelp reviews?
Yes. Turn on includeReviews to also collect recent reviews (author, rating, date, text) for every business found.
Can I search multiple categories at once?
Yes. Put extra terms in searchTerms and they all run against the same location.
Which countries / Yelp domains are supported?
US Yelp (yelp.com) by default. Set proxyCountry to match your target market for best results.
Why do I need residential proxies? Yelp blocks datacenter IP addresses with PerimeterX. Residential proxies make requests look like ordinary visitors. The actor uses them automatically.
What if a search returns nothing?
Genuinely empty searches are reported as warnings (not failures) in the run's key-value store under WARNINGS, so empty results are explainable. Hard anti-bot blocks are recorded under FAILURES.
What format is the output? A standard Apify dataset — export to CSV, Excel, JSON, or Google Sheets, or pull it via the API.
Pricing
This actor uses pay-per-event pricing: a small fee per run start plus a small fee per business returned. You only pay for the data you actually get. Apify platform usage (compute + residential proxy) is billed separately by Apify.
Disclaimer
Scrape responsibly and only collect publicly available data. You are responsible for how you use the data and for complying with Yelp's terms and applicable laws (including data-protection regulations) in your jurisdiction.