Yelp Business & Reviews Scraper
Pricing
Pay per usage
Yelp Business & Reviews Scraper
Scrape Yelp business listings, reviews, ratings, hours and contact info. Search by location and category for local lead generation.
Pricing
Pay per usage
Rating
0.0
(0)
Developer

Vhub Systems
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
🍽️ Yelp Business Scraper — Reviews, Ratings & Business Data Extractor
Search Yelp by keyword and location to extract business listings, ratings, contact info, opening hours, categories, and customer reviews without a Yelp API key. Get structured business data across any industry — restaurants, contractors, salons, medical offices, and more — ready for export to JSON or CSV.
No Yelp Fusion API required. Works on any publicly searchable Yelp market.
🚀 What It Does
The Yelp Business Scraper is a comprehensive extraction tool for anyone who needs bulk Yelp data. It performs Yelp searches just like a human user — entering a searchQuery and location, paginating through results, and optionally drilling into each business page to collect full details and customer reviews. Each record includes business name, Yelp rating (1–5 stars), review count, full address, phone number, website URL, operating hours, business categories, price range, and up to N customer reviews per business. All output is structured and immediately ready for analysis, CRM import, or ML pipeline ingestion. Export to JSON, CSV, Excel, or XML via Apify datasets.
🎯 Use Cases
- 📋 Lead Generation Agencies — Build targeted prospect lists of local businesses (plumbers, dentists, restaurants) with contact details, ratings, and review counts pre-qualified
- 📊 Local SEO Consultants — Audit client markets by scraping competitor businesses' Yelp ratings, review velocity, and keyword positioning in search results
- 🍔 Restaurant & Hospitality Groups — Monitor competitor venues in your market — track their ratings, review sentiment trends, and menu/service feedback
- 🔍 Market Research Firms — Collect business density, category distribution, and customer sentiment data across any city or zip code
- 🤖 AI & NLP Teams — Compile labeled, geo-tagged review datasets for training local search recommendation models, sentiment classifiers, or aspect-based opinion mining systems
- 💼 Private Equity & Acquisitions — Perform reputational due diligence on target businesses by analyzing their Yelp review history and sentiment over time
- 🏥 Healthcare Analytics — Aggregate patient reviews for clinics, dentists, and specialists across a region to support healthcare quality assessments
📥 Input Parameters
| Field | Type | Default | Description |
|---|---|---|---|
searchQuery | string | required | What to search for (e.g., "Italian restaurants", "plumbers", "yoga studios") |
location | string | required | City, zip code, or address (e.g., "San Francisco, CA", "10001", "Austin, TX") |
maxResults | integer | 20 | Maximum number of businesses to return (1–200) |
includeReviews | boolean | false | Whether to scrape customer reviews for each business |
maxReviewsPerBusiness | integer | 10 | Max reviews per business (only if includeReviews is true). Range: 1–100 |
sortBy | string | "best_match" | Yelp sort order: "best_match", "rating", "review_count", "distance" |
radius | integer | null | Search radius in meters (max 40,000). Null uses Yelp's default radius |
categories | string | "" | Yelp category alias filter (e.g., "restaurants", "homeservices", "health") |
minRating | number | null | Filter businesses by minimum star rating (e.g., 4.0) |
openNow | boolean | false | Only return businesses currently open |
proxyConfiguration | object | auto | Proxy settings. Residential proxies recommended for high-volume runs |
📋 Example Input
{"searchQuery": "sushi restaurants","location": "Los Angeles, CA","maxResults": 100,"includeReviews": true,"maxReviewsPerBusiness": 20,"sortBy": "rating","minRating": 4.0,"openNow": false,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
📤 Output Sample
Each item in the output dataset represents one Yelp business listing:
{"business": {"yelpId": "nobu-los-angeles-los-angeles","name": "Nobu Los Angeles","url": "https://www.yelp.com/biz/nobu-los-angeles-los-angeles","alias": "nobu-los-angeles-los-angeles","rating": 4.3,"reviewCount": 2841,"priceRange": "$$$$","categories": [{ "alias": "japanese", "title": "Japanese" },{ "alias": "sushi", "title": "Sushi Bars" },{ "alias": "seafood", "title": "Seafood" }],"address": {"street": "903 N La Cienega Blvd","city": "West Hollywood","state": "CA","zipCode": "90069","country": "US","formatted": "903 N La Cienega Blvd, West Hollywood, CA 90069"},"coordinates": {"lat": 34.0826,"lng": -118.3736},"phone": "+13104571552","displayPhone": "(310) 457-1552","website": "https://www.noburestaurants.com/losangeles","photos": ["https://s3-media4.fl.yelpcdn.com/bphoto/nobu-hero.jpg","https://s3-media2.fl.yelpcdn.com/bphoto/nobu-interior.jpg"],"hours": {"monday": "12:00 PM - 10:30 PM","tuesday": "12:00 PM - 10:30 PM","wednesday": "12:00 PM - 10:30 PM","thursday": "12:00 PM - 10:30 PM","friday": "12:00 PM - 11:00 PM","saturday": "12:00 PM - 11:00 PM","sunday": "12:00 PM - 10:00 PM"},"isOpenNow": true,"isClosed": false,"claimedBusiness": true,"transactions": ["delivery", "pickup", "restaurant_reservation"],"attributes": {"hasOutdoorSeating": false,"takesReservations": true,"goodForGroups": true,"wheelchairAccessible": true,"parkingOptions": ["valet", "street"]}},"reviews": [{"reviewId": "rev_8a92bc2d4e5f","text": "Absolutely phenomenal omakase experience. Chef's selection was creative and perfectly executed. The black cod with miso is worth every penny. Service was attentive without being intrusive. Expensive but completely justified.","rating": 5,"publishedAt": "2024-03-10T20:15:00.000Z","author": {"name": "Jessica T.","userId": "user_293847abc","profileUrl": "https://www.yelp.com/user_details?userid=293847abc","reviewCount": 89,"friendCount": 43,"location": "Beverly Hills, CA","profileImageUrl": "https://s3-media.fl.yelpcdn.com/photo/293847abc/60s.jpg","eliteYear": 2024},"usefulCount": 8,"funnyCount": 1,"coolCount": 5,"businessOwnerReply": null},{"reviewId": "rev_7b83ab1c3d4e","text": "Iconic spot but consistency has slipped. My last two visits felt rushed during peak hours and one dish arrived cold. Still a solid 4 stars for the ambiance and overall quality, but it's no longer the 5-star destination it used to be.","rating": 4,"publishedAt": "2024-03-05T13:40:00.000Z","author": {"name": "Mark H.","userId": "user_829341def","profileUrl": "https://www.yelp.com/user_details?userid=829341def","reviewCount": 234,"friendCount": 67,"location": "Los Angeles, CA","eliteYear": null},"usefulCount": 14,"funnyCount": 0,"coolCount": 3,"businessOwnerReply": {"text": "Thank you for your candid feedback, Mark. We take consistency very seriously and will address your concerns with our team.","date": "2024-03-06T09:20:00.000Z"}}],"searchQuery": "sushi restaurants","searchLocation": "Los Angeles, CA","resultRank": 3,"scrapedAt": "2024-03-16T09:00:00.000Z"}
💰 Pricing
| Volume | Approximate Cost |
|---|---|
| 50 businesses (no reviews) | ~$0.04 |
| 200 businesses (no reviews) | ~$0.15 |
| 200 businesses + 20 reviews each | ~$0.80 |
| 2,000 businesses + 10 reviews each | ~$5.00 |
| 10,000 businesses (no reviews) | ~$6.00 |
Adding
includeReviews: trueincreases cost proportionally, as each business requires an additional page load. UsemaxReviewsPerBusinessto control cost.
⚙️ How It Works
-
Search Execution — The actor constructs Yelp search URLs using your
searchQuery,location,sortBy, andradiusparameters. It opens the Yelp search results page using a headless browser that executes JavaScript for full rendering. -
Search Result Pagination — Yelp displays 10 businesses per search results page. The actor paginates through multiple pages (
?start=10,?start=20, etc.) untilmaxResultsbusinesses have been collected. -
Business Listing Extraction — From search results, the actor extracts: business name, rating, review count, address snippet, price range, and categories. This provides a fast, low-cost run mode when
includeReviewsisfalse. -
Business Detail Page — When
includeReviewsistrue(or when full business detail is needed), the actor visits each business's individual Yelp page to collect: full address, phone number, website, complete operating hours, all attributes, and review data. -
Review Extraction — Reviews are extracted from the business detail page, including star rating, review text, author name/location/stats, reaction counts (Useful/Funny/Cool), and business owner replies. The actor handles Yelp's "Read more" text truncation automatically.
-
Structured Output — All data is normalized into a consistent schema regardless of business type (restaurant, service, medical, etc.) and pushed to Apify's dataset in real-time.
-
Proxy Management — Residential proxies rotate with each request batch to avoid Yelp's bot detection and CAPTCHA challenges.
⚠️ Limitations
- 20 reviews per business (free users) — Yelp limits non-logged-in users to viewing approximately 20 reviews per business on the web. The actor can reliably return up to 20 reviews without login; beyond that, behavior may vary
- Filtered reviews — Yelp has a "not currently recommended" filter that hides some reviews; these filtered reviews are not accessible via the standard business page and won't appear in results
- 200 search results per query — Yelp limits search results to approximately 240 results per query/location combination. Use more specific queries or smaller geographic areas to access more businesses
- Mobile-specific listings — Some business details (like full menus or special offers) are only visible in the Yelp mobile app and cannot be scraped from the web
- Geolocation accuracy — The
lat/lngcoordinates reflect the business's listed address; they may not match the exact entrance for large venues - Real-time data — Hours, phone numbers, and business status change frequently; treat scraped data as a point-in-time snapshot
- Yelp ToS — Use this tool for legitimate purposes only. Do not use scraped contact data for unsolicited mass communications. Comply with Yelp's Terms of Service and applicable data protection laws (GDPR, CCPA)
🔗 Related Actors
- Google Maps Scraper — Extract Google Business listings, reviews, and ratings
- Trustpilot Reviews Scraper — Scrape company reviews from Trustpilot
- TripAdvisor Reviews Scraper — Extract hotel and restaurant reviews from TripAdvisor
📞 Support
Questions or issues? Use the Issues tab on this actor page or contact Apify Support. Include your input JSON and the Actor Run ID for fastest resolution.