Yelp Reviews Deep Scraper - Ratings, Photos & Tips avatar

Yelp Reviews Deep Scraper - Ratings, Photos & Tips

Pricing

Pay per usage

Go to Apify Store
Yelp Reviews Deep Scraper - Ratings, Photos & Tips

Yelp Reviews Deep Scraper - Ratings, Photos & Tips

Extract Yelp reviews with full text, star ratings, reviewer profiles, photos, useful/funny/cool votes, tips, and owner responses. Search by URL or keyword with sorting and pagination. For reputation monitoring, sentiment analysis, and competitor research.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Ricardo Akiyoshi

Ricardo Akiyoshi

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 minutes ago

Last modified

Categories

Share

Yelp Reviews Deep Scraper

Extract detailed reviews from any Yelp business page. Goes far beyond basic business listing scrapers — this actor focuses on deep review extraction with full text, star ratings, reviewer profiles, photos, votes, tips, and owner responses.

What it scrapes

Per Review

FieldDescription
textFull review text (no truncation)
ratingStar rating (1-5)
dateReview publication date (YYYY-MM-DD)
reviewerNameReviewer display name
reviewerLocationReviewer's city/state
reviewerUrlLink to reviewer's Yelp profile
reviewerFriendsNumber of friends
reviewerReviewsTotal reviews by this reviewer
reviewerPhotosTotal photos by this reviewer
reviewerEliteWhether the reviewer has Elite status
useful"Useful" vote count
funny"Funny" vote count
cool"Cool" vote count
photosArray of photo URLs attached to the review
ownerResponseBusiness owner's reply text
ownerResponseDateDate of owner response
previousReviewPrevious version if the review was updated
checkInNumber of check-ins mentioned

Per Business

FieldDescription
businessNameBusiness name
overallRatingOverall star rating
totalReviewsTotal number of reviews
priceRangePrice level ($, $$, $$$, $$$$)
categoriesBusiness categories
addressFull address
phonePhone number
websiteExternal website URL
hoursOperating hours
neighborhoodNeighborhood name
latitude / longitudeGPS coordinates
claimedStatusWhether the business is claimed
yearEstablishedYear the business was established
photoCountTotal photos on the business page

Tips

FieldDescription
textTip text
authorWho left the tip
dateWhen the tip was posted
likesNumber of likes on the tip

Input options

Business URLs

Provide direct Yelp business page URLs for targeted review extraction:

{
"businessUrls": [
"https://www.yelp.com/biz/gary-danko-san-francisco",
"https://www.yelp.com/biz/tartine-bakery-san-francisco"
],
"maxReviews": 500
}

Search-based discovery

Search for businesses by keyword and location, then scrape reviews from all results:

{
"searchTerms": ["best pizza", "italian restaurants"],
"location": "New York, NY",
"maxReviews": 200,
"sortBy": "date_desc"
}

Combined approach

Mix both methods — provide specific URLs plus search terms:

{
"businessUrls": ["https://www.yelp.com/biz/gary-danko-san-francisco"],
"searchTerms": ["fine dining"],
"location": "San Francisco, CA",
"maxReviews": 1000,
"sortBy": "relevance_desc"
}

Sort options

ValueDescription
relevance_descMost relevant (Yelp default)
date_descNewest first
date_ascOldest first
rating_descHighest rated first
rating_ascLowest rated first
elites_descElite reviewers first

Use cases

  • Reputation monitoring — Track what customers say about your business or competitors
  • Sentiment analysis — Analyze review text and ratings for trends over time
  • Competitor research — Compare review volumes, ratings, and common complaints
  • Local SEO — Understand which businesses dominate local search and why
  • Market research — Identify underserved niches based on review feedback
  • Lead generation — Find businesses with poor reviews (potential clients for services)
  • Academic research — Study consumer behavior and review patterns

Proxy recommendation

Yelp aggressively blocks automated access. For reliable results:

  • Small runs (< 100 reviews): Datacenter proxies may work
  • Medium runs (100-1,000 reviews): Residential proxies recommended
  • Large runs (1,000+ reviews): Residential proxies required

Configure proxy in the input:

{
"proxy": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Output example

Review record

{
"type": "review",
"businessName": "Gary Danko",
"businessUrl": "https://www.yelp.com/biz/gary-danko-san-francisco",
"businessRating": 4.5,
"businessTotalReviews": 5287,
"reviewId": "abc123xyz",
"text": "Absolutely phenomenal dining experience. The glazed oysters were divine and the lobster bisque was the best I've ever had. Service was impeccable — our waiter anticipated every need. The prix fixe menu is well worth it.",
"rating": 5,
"date": "2024-10-15",
"reviewerName": "Sarah M.",
"reviewerLocation": "San Francisco, CA",
"reviewerUrl": "https://www.yelp.com/user_details?userid=xyz123",
"reviewerFriends": 245,
"reviewerReviews": 89,
"reviewerPhotos": 312,
"reviewerElite": true,
"useful": 12,
"funny": 3,
"cool": 8,
"photos": [
"https://s3-media0.fl.yelpcdn.com/bphoto/abc/o.jpg",
"https://s3-media0.fl.yelpcdn.com/bphoto/def/o.jpg"
],
"ownerResponse": "Thank you for the wonderful review, Sarah! We're thrilled you enjoyed the glazed oysters. Hope to see you again soon!",
"ownerResponseDate": "2024-10-17",
"previousReview": null,
"checkIn": 3,
"scrapedAt": "2026-03-02T12:00:00.000Z"
}

Business record

{
"type": "business",
"businessName": "Gary Danko",
"overallRating": 4.5,
"totalReviews": 5287,
"priceRange": "$$$$",
"categories": "French, American (New)",
"address": "800 N Point St, San Francisco, CA 94109",
"phone": "(415) 749-2060",
"website": "https://www.garydanko.com",
"hours": "Mon-Sun: 5:00 PM - 10:00 PM",
"neighborhood": "Fisherman's Wharf",
"latitude": 37.8059,
"longitude": -122.4219,
"claimedStatus": "Claimed",
"yearEstablished": 1999,
"photoCount": 3421,
"highlightedReviews": ["One of the best dining experiences in SF"],
"scrapedAt": "2026-03-02T12:00:00.000Z"
}

Pricing

This actor uses Pay Per Event pricing:

  • $0.004 per review extracted
  • $0.005 per business profile extracted

Example: Scraping 500 reviews from 5 businesses = (500 x $0.004) + (5 x $0.005) = $2.025

Technical details

  • Engine: CheerioCrawler (fast, lightweight HTTP-based scraping)
  • Extraction: Dual strategy — embedded JSON parsing + DOM selectors with multiple fallbacks
  • Rate limiting: Built-in respectful throttling (15 requests/minute max)
  • Deduplication: Reviews are deduplicated by ID and content hash
  • Pagination: Automatic — crawls through all review pages until maxReviews reached
  • Anti-bot: Rotates User-Agent strings and uses browser-like request headers

Limitations

  • Yelp may filter or hide some reviews (Yelp's "recommended reviews" algorithm)
  • Very old reviews may not be accessible through pagination
  • CAPTCHA/blocks may interrupt large scraping runs without residential proxies
  • Review text language depends on the reviewer (no auto-translation)

Support

Built by Sovereign AI. For issues, feature requests, or custom scraping needs, open an issue on the actor page.

Integration — Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("sovereigntaylor/yelp-reviews-scraper").call(run_input={
"searchTerm": "yelp reviews",
"maxResults": 50
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"{item.get('title', item.get('name', 'N/A'))}")

Integration — JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('sovereigntaylor/yelp-reviews-scraper').call({
searchTerm: 'yelp reviews',
maxResults: 50
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach(item => console.log(item.title || item.name || 'N/A'));