Yelp Reviews Scraper - Most Comprehensive
Pricing
from $0.04 / 1,000 reviews
Yelp Reviews Scraper - Most Comprehensive
π₯ ~$0.05/1K reviews π₯ Scrape all reviews for any Yelp business. Full review text, ratings, author profiles, photos, reactions, owner replies. Accepts business URLs or aliases.
Pricing
from $0.04 / 1,000 reviews
Rating
0.0
(0)
Developer
Kai
Maintained by CommunityActor stats
0
Bookmarked
300
Total users
249
Monthly active users
11 hours ago
Last modified
Categories
Share
Yelp Reviews Scraper
Collect Yelp reviews and business context from business URLs, aliases, or encrypted business IDs. The default dataset contains one item per review, and the businesses dataset contains one item once a target's business identity is resolved.
What you get
- Review text, rating, language, timestamps, and optional translation
- Public author profile fields, feedback counts, reactions, photos, videos, and owner replies
- Review history, reservation and check-in tags, and expert-recognition fields when Yelp returns them
- Business identity, rating totals, language and rating breakdowns, location, hours, categories, and other available business details
Quick start
Run one business by URL:
{"businesses": ["https://www.yelp.com/biz/gary-danko-san-francisco"]}
Use an alias or a 22-character encrypted business ID:
{"businesses": ["WavvLdfdP6g8aZTtbBQHTw"],"maxReviewsPerBusiness": 10}
Filter and sort reviews:
{"businesses": ["gary-danko-san-francisco"],"sortBy": "RATING_ASC","ratings": ["1", "2"],"maxReviewsPerBusiness": 50}
Search review text:
{"businesses": ["gary-danko-san-francisco"],"query": "service","maxReviewsPerBusiness": 20}
Request Yelp's German language view and translations:
{"businesses": ["gary-danko-san-francisco"],"languageCode": "de","maxReviewsPerBusiness": 20}
Input
| Field | Type | Default | Description |
|---|---|---|---|
businesses | string[] | required | One or more Yelp business URLs, aliases, or 22-character encrypted business IDs. Blank arrays and values are rejected. Inputs that resolve to the same business are processed once, in first-appearance order. |
sortBy | string | DATE_DESC | DATE_DESC, DATE_ASC, RATING_DESC, RATING_ASC, or ELITES_DESC. |
ratings | string[] | ["1","2","3","4","5"] | One or more unique star ratings from "1" through "5". |
maxReviewsPerBusiness | integer | 20 | Maximum saved reviews per business. Use 0 to request all available reviews. |
query | string | "" | Optional review search text. Search results use Yelp's relevance order, so sortBy is not applied and Yelp may not apply the rating filter. |
languageCode | string | "en" | Non-empty Yelp language code such as en, de, or zh. translatedText is populated when Yelp provides a translation. |
proxyConfiguration | object | {"useApifyProxy":true} | Apify Proxy settings or custom proxy URLs. Set useApifyProxy to false to connect directly. |
A raw 22-character value containing letters, numbers, _, or - is interpreted as an encrypted business ID. Use the full Yelp URL if a business alias happens to have that exact shape.
Result storage and behavior
The default dataset stores reviews. Review order follows the selected Yelp order; search mode uses relevance. Duplicate review IDs returned across pages are saved once.
The named businesses dataset stores one business record for each resolved target. It is still written when a valid search returns zero reviews. Direct-ID input skips the business page, so page-derived fields such as categories and coordinates can be null; review-feed and business-detail fields remain available.
Businesses are processed independently and records are saved incrementally. If one fails, completed records from the other businesses remain available, and a business row or completed review page from the failed target can also remain. The Actor run finishes as failed so callers do not mistake partial output for a complete result. A valid business with zero matching reviews succeeds.
Review output
This example contains selected, unchanged fields from one record in a validated live run on July 30, 2026. Reviewer identity fields are omitted.
{"id": "4c5hsfXxkQnRs_gierUmvQ","businessAlias": "gary-danko-san-francisco","businessName": "Gary Danko","businessEncId": "WavvLdfdP6g8aZTtbBQHTw","rating": 5,"text": "Amazing Food! Service was superb! My wife and I really enjoy our Anniversary dinner! It was our first visit to SF in a long a time. We brought our daughter and we feel in love of the food. Very beautiful setting inside restaurant.","translatedText": null,"language": "en","createdAt": "2026-07-27T21:02:17Z","localDateTime": "2026-07-27T14:02:17-07:00","feedback": {"usefulCount": 0,"funnyCount": 0,"coolCount": 0},"reactions": [],"photos": [],"ownerReply": null,"scrapedAt": "2026-07-30T05:20:11.595Z"}
Each full review record also contains:
author: public profile ID, display name and location, review/friend/photo counts, elite status, and profile photophotosandvideos: media IDs, URLs, captions, dimensions, upload details, keywords, and reaction counts when availablepreviousReviewIds,tags,expertRecognition, anduserSpecifiedTimeOfExperience
Optional upstream values are represented as null or empty arrays instead of being invented.
Business output
This example contains selected, unchanged fields from the matching businesses record in the same validated live run.
{"id": "WavvLdfdP6g8aZTtbBQHTw","alias": "gary-danko-san-francisco","name": "Gary Danko","rating": 4.5,"reviewCount": 6133,"reviewCountsByRating": [124, 216, 484, 1095, 4219],"reviewCountsByLanguage": [{"language": "en","count": 6135},{"language": "zh","count": 2},{"language": "de","count": 1}],"primaryPhotoUrl": "https://s3-media0.fl.yelpcdn.com/bphoto/5dbjkeTld05HumeToIAhRQ/60s.jpg","coordinates": {"latitude": 37.805823482811675,"longitude": -122.42060564460563},"countryCode": "US","formattedAddress": {"addressLine1": "800 N Point St","city": "San Francisco","regionCode": "CA","postalCode": "94109"},"isCurrentlyOpen": false,"scrapedAt": "2026-07-30T05:20:11.582Z"}
The full business record also includes nullable groups for categories, operating hours, phone and price display, attributes, media totals, review highlights, owner information, special hours, category ancestry, cost guides, and related links.
Known limits
- Yelp controls search matching and relevance. A term without an exact text match can still return broader results.
- Search can ignore
sortByand the rating filter. Combining search with a non-English language can also produce no matches. - Translation and optional enrichment fields depend on what Yelp returns for the business and language.
maxReviewsPerBusiness: 0can take a long time for businesses with thousands of reviews.- Yelp can change or temporarily restrict its responses, which can cause a business to fail.
- Direct-ID mode cannot provide fields that are available only on the business page.
Review records can include public profile names, locations, profile images, and user-uploaded media. Keep only the fields you need and apply an appropriate retention policy for your use case.