# Fast Yelp Reviews Scraper API | Extract Review Text & Ratings (`theagents/yelp-reviews`) Actor

Transform Yelp reviews into actionable insights with our high-performance scraper. Access detailed customer feedback, ratings, and reviewer profiles at competitive prices. Perfect for monitoring restaurant reputation, tracking service quality, and analyzing market trends across the Yelp ecosystem.

- **URL**: https://apify.com/theagents/yelp-reviews.md
- **Developed by:** [Agents](https://apify.com/theagents) (community)
- **Categories:** Social media, Travel, Jobs
- **Stats:** 258 total users, 30 monthly users, 100.0% runs succeeded, 17 bookmarks
- **User rating**: 4.63 out of 5 stars

## Pricing

Pay per event

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## ⭐ Fast Yelp Reviews Scraper API: Extract Review Text, Ratings & Reviewer Profiles at Scale

The **Yelp Reviews Scraper** is an Apify Actor that extracts full review text, star ratings, reviewer profiles, and reaction counts from any Yelp business listing—without requiring a Yelp API key. This **yelp review scraper api** collects 15+ data fields per review including review date, useful/funny/cool counts, and complete reviewer information.

**Why scrapers instead of the Yelp API?** Yelp removed the reviews endpoint from its free Fusion API tier, making scrapers the primary accessible alternative for developers who need review data. **No API key required**—extract review text, ratings, and reviewer profiles at scale. First 40 reviews FREE with every query.

Use this **yelp review data extractor** for sentiment analysis, reputation monitoring, competitor research, or NLP pipeline training. **Download Yelp reviews** to JSON, CSV, or Excel for customer feedback analysis, voice of customer (VoC) research, and brand monitoring.

**💰 Event-Based Pricing:** $0.016/query (first 40 reviews FREE) | $0.0004/review | **🔓 No Yelp API key required**

***

### 📋 Table of Contents

1. [What Does the Yelp Reviews Scraper Do?](#-what-does-the-yelp-reviews-do)
2. [Features & Capabilities](#-features--capabilities)
3. [Recommended vs. Non-Recommended Reviews](#-recommended-vs-non-recommended-reviews)
4. [Pricing](#-pricing)
5. [Input Parameters](#-input-parameters)
6. [Yelp Reviews Scraper Strategy Guide](#-yelp-reviews-strategy-guide)
7. [Output Format](#-output-format)
8. [Custom Map Function](#-custom-map-function)
9. [Related Scrapers](#-relateds)
10. [Automated Monitoring & Scheduling](#-automated-monitoring--scheduling)
11. [Demo Mode & Free Testing](#-demo-mode--free-testing)
12. [Troubleshooting](#-troubleshooting)
13. [Use Cases & Industries](#-use-cases--industries)
14. [Quick Start Guide](#-quick-start-guide)
15. [FAQ](#-frequently-asked-questions)
16. [Contact](#-contact)

***

### 🧭 What Does the Yelp Reviews Scraper Do?

**Yelp reviews scraper** is a tool that automates the extraction of customer reviews, star ratings, reviewer profiles, and engagement metrics from Yelp business listings. This **yelp review data extractor** enables sentiment analysis, reputation monitoring, and competitive research by collecting review text, ratings, reaction counts, and full reviewer information from any Yelp business page.

The **Yelp Review Scraper API** retrieves comprehensive review data—including review IDs, review URLs, star ratings (1-5), review text, publish dates, useful/funny/cool counts, reviewer usernames, reviewer locations, review counts, friend counts, and Elite status—by business URL or place ID. This tool operates without requiring Yelp Fusion API keys, OAuth authentication, or complex setup.

This **scrape yelp reviews** tool serves as a practical alternative to the official Yelp Fusion API for bulk review collection. Yelp removed the reviews endpoint from its free API tier—this scraper fills that gap. No API quotas, no rate limit headaches—just straightforward review data access through Apify's infrastructure. **Extract Yelp reviews** from any business in minutes.

#### Why Choose This Yelp Reviews Scraper?

| Feature               | This Scraper          | Yelp Fusion API          | Other Scrapers  |
| --------------------- | --------------------- | ------------------------ | --------------- |
| **API Key Required**  | ❌ No                  | ✅ Yes                    | Varies          |
| **Reviews Endpoint**  | ✅ Full text           | ❌ Removed from free tier | Varies          |
| **Free Tier**         | 40 reviews FREE       | Limited/paid only        | Limited         |
| **Data Fields**       | 15+ fields per review | 3 fields max             | 5-10 fields     |
| **Reviewer Profiles** | ✅ Full extraction     | ❌ Not available          | ⚠️ Partial       |
| **Reaction Counts**   | ✅ Useful/funny/cool   | ❌ Not available          | ❌ Not available |
| **Elite Status**      | ✅ Supported           | ❌ Not available          | ❌ Not available |
| **Export Formats**    | JSON, CSV, Excel      | JSON only                | Varies          |

#### What Data Can You Extract?

##### Review-Level Data

- **Review ID** — Unique Yelp review identifier
- **Review URL** — Direct link to the review
- **Review text** — Full review body/message
- **Star rating (1-5)** — Individual review rating
- **Review date** — When the review was published
- **Review language** — Language of the review text
- **Useful count** — Number of "useful" reactions
- **Funny count** — Number of "funny" reactions
- **Cool count** — Number of "cool" reactions
- **Review photos** — Images attached to the review
- **Is recommended** — Whether Yelp displays this review prominently

##### Reviewer-Level Data

- **Reviewer ID** — Unique Yelp user identifier
- **Reviewer username** — Display name
- **Reviewer profile URL** — Link to reviewer's profile
- **Reviewer location** — City, state of reviewer
- **Reviewer review count** — Total reviews written by this user
- **Reviewer friend count** — Number of Yelp friends
- **Reviewer photo count** — Total photos uploaded
- **Is Yelp Elite member** — Elite reviewer status
- **Elite years** — Years of Elite membership
- **Member since date** — When reviewer joined Yelp

##### Business Context Data

- **Business ID** — Unique Yelp business identifier
- **Business name** — Name of the reviewed business
- **Business URL** — Link to business listing
- **Overall star rating** — Business average rating
- **Total review count** — Total reviews for business
- **Business city, state** — Location
- **Business category** — Industry/type
- **Price range** — $ to $$$$ indicator

***

### ⚡ Features & Capabilities

#### 6 Sort Options for Targeted Extraction

| Sort Option     | What It Returns                  | Best For                                           |
| --------------- | -------------------------------- | -------------------------------------------------- |
| `yelp`          | Yelp's default recommended order | General analysis                                   |
| `newest`        | Most recent reviews first        | Trend monitoring, new feedback                     |
| `oldest`        | Oldest reviews first             | Historical analysis                                |
| `highestRating` | 5-star reviews first             | Positive sentiment extraction                      |
| `lowestRating`  | 1-star reviews first             | **Negative review tracking**, pain point discovery |
| `elites`        | Yelp Elite reviewer reviews only | High-quality, detailed reviews                     |

#### Core Features

- **🚀 High-Speed Extraction** — Extract hundreds of reviews efficiently
- **🆓 Free Tier** — First 40 reviews FREE with every query
- **🔓 No API Key** — No Yelp Fusion API key or OAuth required
- **⭐ Full Review Text** — Complete review body, not truncated excerpts
- **👤 Reviewer Profiles** — Full reviewer data including Elite status
- **📊 Reaction Counts** — Useful, funny, cool engagement metrics
- **📁 Multiple Export Formats** — JSON, CSV, Excel direct download
- **⚙️ Custom Transformations** — Shape output with custom map functions
- **🔗 API Integration** — RESTful API for Python, Node.js, or any HTTP client
- **⏰ Scheduled Runs** — Automate recurring extraction for **reputation monitoring**

#### Agents Review Intelligence Suite

This **yelp reviews scraper** is part of the [Agents](https://apify.com/theagents?fpr=yhdrb) cross-platform review intelligence suite on Apify—built by ex-Big Tech engineers and data specialists for precision at scale:

| Tool                                                                                        | What It Extracts                               | Best For                              |
| ------------------------------------------------------------------------------------------- | ---------------------------------------------- | ------------------------------------- |
| ⭐ **Yelp Reviews Scraper**                                                                  | Reviews, ratings, reviewer profiles, reactions | Sentiment analysis **(You are here)** |
| 🏪 **[Yelp Business Scraper](https://apify.com/theagents/yelp-business?fpr=yhdrb)**             | Business profiles, ratings, amenities, contact | Business data, lead generation        |
| ⭐ **[Trustpilot Reviews Scraper](https://apify.com/theagents/trustpilot-reviews?fpr=yhdrb)**   | Reviews, TrustScores, company replies          | SaaS/B2B analysis                     |
| ⭐ **[TripAdvisor Reviews Scraper](https://apify.com/theagents/tripadvisor-reviews?fpr=yhdrb)** | Hotel/restaurant reviews, ratings              | Hospitality intelligence              |

***

### 🔍 Recommended vs. Non-Recommended Reviews

**This is critical to understand:** Yelp filters a significant portion of reviews into a "not recommended" section that most users never see. These filtered reviews don't appear in the main review feed and aren't counted in the business's displayed review count.

#### Why Does Yelp Filter Reviews?

Yelp's recommendation software evaluates reviews based on:

- **Reviewer activity** — New accounts or inactive users get filtered
- **Review patterns** — Sudden spikes in reviews may be flagged
- **Content quality** — Very short or generic reviews
- **Account verification** — Unverified accounts

#### What This Scraper Extracts

| Review Type                 | Extracted? | Notes                                  |
| --------------------------- | ---------- | -------------------------------------- |
| **Recommended reviews**     | ✅ Yes      | Main review feed, counted in totals    |
| **Non-recommended reviews** | ⚠️ Partial  | Available via direct URL if accessible |

#### Why This Matters for Your Analysis

- **Sentiment analysis** — Filtered reviews may skew toward negative (frustrated users)
- **Review fraud detection** — Non-recommended reviews often contain fake review patterns
- **Complete picture** — Understanding both sets gives fuller business intelligence
- **Competitor analysis** — Competitors may have significant hidden negative reviews

**Pro Tip:** When analyzing a business, note the gap between "total reviews" and visible reviews—a large gap may indicate review quality issues or aggressive filtering.

***

### 💰 Pricing

#### Event-Based Cost Structure

Pay only for what you scrape—no subscriptions, no hidden fees. This **yelp sentiment analysis scraper** uses transparent pay-per-event pricing:

| Event Type       | Price           | What's Included                  |
| ---------------- | --------------- | -------------------------------- |
| **Query**        | $0.016/business | First 2 pages (~40 reviews) FREE |
| **Dataset Item** | $0.0004/review  | Each review in results           |

#### Cost Examples

| Scenario                        | What You Pay          |
| ------------------------------- | --------------------- |
| 1 business, 40 reviews          | **$0.016** (all free) |
| 1 business, 100 reviews         | **$0.04**             |
| 5 businesses, 200 reviews total | **$0.16**             |
| 10 businesses, 50 reviews each  | **$0.36**             |
| 1 business, 500 reviews         | **$0.22**             |

#### Why This Pricing Works

- **No monthly fees** — Pay only for reviews extracted
- **First 40 reviews FREE** — Generous free tier with every query
- **Predictable costs** — Calculate exact spend before running
- **Scales linearly** — Same rate whether extracting 100 or 10,000 reviews

***

### 🍚 Input Parameters

Configure your **yelp reviews scraper** extraction with these parameters. Whether you want to **scrape Yelp reviews** by URL or place ID, these settings control what data you collect.

| Field               | Type   | Description                                                                          | Default |
| ------------------- | ------ | ------------------------------------------------------------------------------------ | ------- |
| `startUrls`         | array  | Direct Yelp business URLs to extract reviews from.                                   | `[]`    |
| `placeIds`          | array  | Yelp place IDs (alternative to URLs).                                                | `[]`    |
| `sortBy`            | string | Review order: `yelp`, `newest`, `oldest`, `highestRating`, `lowestRating`, `elites`. | `yelp`  |
| `maxItems`          | number | Maximum reviews to extract per business.                                             | `30`    |
| `customMapFunction` | string | JavaScript function to transform output. Not for filtering.                          | `null`  |

#### Parameter Examples

**Extract Reviews from Single Business:**

```json
{
  "startUrls": ["https://www.yelp.com/biz/restaurant-name-city"],
  "maxItems": 100
}
```

**Extract Newest Reviews (Trend Monitoring):**

```json
{
  "startUrls": ["https://www.yelp.com/biz/restaurant-name-city"],
  "sortBy": "newest",
  "maxItems": 50
}
```

**Extract Negative Reviews Only (Pain Point Discovery):**

```json
{
  "startUrls": ["https://www.yelp.com/biz/restaurant-name-city"],
  "sortBy": "lowestRating",
  "maxItems": 100
}
```

**Extract Elite Reviews Only (High-Quality Feedback):**

```json
{
  "startUrls": ["https://www.yelp.com/biz/restaurant-name-city"],
  "sortBy": "elites",
  "maxItems": 50
}
```

**Extract from Multiple Businesses:**

```json
{
  "startUrls": [
    "https://www.yelp.com/biz/business-1",
    "https://www.yelp.com/biz/business-2",
    "https://www.yelp.com/biz/business-3"
  ],
  "maxItems": 100
}
```

***

### 📖 Yelp Reviews Scraper Strategy Guide

Master the art of **yelp review data** extraction with these proven strategies. Whether you're building sentiment analysis pipelines, monitoring reputation, or researching competitors, this guide covers the optimal approach for each use case.

***

#### 🎯 Strategy 1: Sentiment Analysis & NLP Pipeline

**Goal:** Build datasets for sentiment analysis, opinion mining, or NLP model training

**Best Input:**

```json
{
  "startUrls": ["https://www.yelp.com/biz/restaurant-name-city"],
  "sortBy": "yelp",
  "maxItems": 500
}
```

**Why This Works:**

- Extract full review text for **sentiment analysis** processing
- Collect star ratings as ground truth labels for ML training
- Build **NLP pipeline** datasets with real customer language
- Support **opinion mining** and aspect-based sentiment analysis

**Pro Tips:**

- Use `sortBy: "yelp"` for balanced sentiment distribution
- Extract 500+ reviews for statistically significant datasets
- Include reaction counts (useful/funny/cool) as engagement signals

***

#### 🎯 Strategy 2: Reputation Monitoring & Brand Tracking

**Goal:** Monitor new reviews and track reputation changes over time

**Best Input:**

```json
{
  "startUrls": ["https://www.yelp.com/biz/your-business-name"],
  "sortBy": "newest",
  "maxItems": 20
}
```

**Why This Works:**

- Capture new reviews as they appear for **reputation management**
- Track **review velocity** (how fast new reviews arrive)
- Enable rapid **review response strategy** for negative feedback
- Support **brand monitoring** workflows

**Pro Tips:**

- Schedule daily or weekly runs via Apify Console
- Set up webhooks for automated alerts on new reviews
- Compare against competitor review velocity

***

#### 🎯 Strategy 3: Competitor Analysis & Benchmarking

**Goal:** Analyze competitor strengths, weaknesses, and customer sentiment

**Best Input:**

```json
{
  "startUrls": [
    "https://www.yelp.com/biz/competitor-1",
    "https://www.yelp.com/biz/competitor-2",
    "https://www.yelp.com/biz/competitor-3"
  ],
  "sortBy": "lowestRating",
  "maxItems": 100
}
```

**Why This Works:**

- Extract negative reviews for **competitor analysis** insights
- Identify competitor weaknesses for **competitive benchmarking**
- Discover customer pain points you can address
- Build **competitive intelligence** datasets

**Pro Tips:**

- Extract both `lowestRating` and `highestRating` for full picture
- Analyze review text for recurring complaint themes
- Compare reaction counts across competitors

***

#### 🎯 Strategy 4: Voice of Customer (VoC) Research

**Goal:** Understand customer needs, preferences, and pain points

**Best Input:**

```json
{
  "startUrls": ["https://www.yelp.com/biz/business-name"],
  "sortBy": "elites",
  "maxItems": 200
}
```

**Why This Works:**

- Elite reviewers write detailed, thoughtful reviews
- Extract high-quality feedback for **customer feedback analysis**
- Support **voice of customer (VoC)** research initiatives
- Enable **product/service improvement** insights

**Pro Tips:**

- Elite reviews often contain specific, actionable feedback
- Analyze reviewer profiles for demographic insights
- Cross-reference with reaction counts for most impactful reviews

***

### 📊 Output Format

Clean, structured JSON output with comprehensive review data. Each review object contains 15+ fields covering review content, ratings, reactions, and full reviewer profiles—everything you need to **extract Yelp reviews** for analysis.

#### Review Output Example

The following output shows the key fields extracted from each Yelp review:

```json
{
  "businessId": "RJNAeNA-209sctUO0dmwuA",
  "type": "review",
  "reviewUrl": "https://www.yelp.com/biz/RJNAeNA-209sctUO0dmwuA?hrid=W4jnl3_8iCBFdYeMsOej3g",
  "rating": 4,
  "message": "The serving sizes are massive. The cheese curds are great. Our server was very nice. The fries could've been in the fryer for longer. They get stale after ten minutes. The burger was good for a thick patty. It's a little loud but it has a bar. The TVs have captioning at least.",
  "language": "en",
  "publishedAt": "2025-03-10T07:41:50-05:00",
  "photos": [
    { "url": "https://s3-media0.fl.yelpcdn.com/bphoto/.../348s.jpg", "caption": null }
  ],
  "reactions": {
    "useful": 0,
    "funny": 0,
    "cool": 0
  },
  "reviewer": {
    "id": "DQ67yxuUYUMiIWHHKP2VcQ",
    "reviewerUrl": "https://www.yelp.com/user_details?userid=DQ67yxuUYUMiIWHHKP2VcQ",
    "name": "Wendy H.",
    "location": "Chicago, United States",
    "friendCount": 51,
    "photoCount": 1940,
    "reviewCount": 339
  },
  "scrapedAt": "2025-04-04T12:17:58.564Z"
}
```

#### Field Availability Guarantees

| Field                  | Availability | Data Type | Notes                       |
| ---------------------- | ------------ | --------- | --------------------------- |
| `businessId`           | ✅ Always     | string    | Unique Yelp business ID     |
| `reviewUrl`            | ✅ Always     | string    | Direct link to review       |
| `rating`               | ✅ Always     | number    | 1-5 star rating             |
| `message`              | ✅ Always     | string    | Full review text            |
| `language`             | ✅ Always     | string    | Review language code        |
| `publishedAt`          | ✅ Always     | string    | ISO 8601 date               |
| `reactions`            | ✅ Always     | object    | Useful/funny/cool counts    |
| `reviewer.name`        | ✅ Always     | string    | Reviewer display name       |
| `reviewer.location`    | ⚠️ Sometimes  | string    | If reviewer shares location |
| `reviewer.reviewCount` | ✅ Always     | number    | Total reviews by user       |
| `reviewer.friendCount` | ✅ Always     | number    | Yelp friends                |
| `reviewer.photoCount`  | ✅ Always     | number    | Photos uploaded             |
| `photos`               | ⚠️ Sometimes  | array     | If review has photos        |

#### Export Options

- **JSON:** Complete datasets with nested objects—ideal for **NLP pipeline** processing
- **CSV:** Direct download from Apify Console—perfect for **export Yelp reviews to CSV**
- **Excel:** Spreadsheet-compatible format for business users

***

### 🧩 Custom Map Function

Transform output using the `customMapFunction` parameter. This JavaScript function receives each review object and returns your desired format—flatten nested data, extract specific fields, or restructure for your **sentiment analysis** pipeline.

**Important:** Custom map function is for data transformation—**not for filtering**. Filtering items may result in automatic restrictions.

#### Example: Sentiment Analysis Output

```javascript
(object) => ({
  reviewId: object.reviewUrl?.split("hrid=")?.[1],
  text: object.message,
  rating: object.rating,
  date: object.publishedAt,
  language: object.language,
  usefulCount: object.reactions?.useful,
  funnyCount: object.reactions?.funny,
  coolCount: object.reactions?.cool,
  reviewerName: object.reviewer?.name,
  reviewerLocation: object.reviewer?.location,
  reviewerTotalReviews: object.reviewer?.reviewCount
})
```

#### Common Transformations

| Use Case                  | What to Extract                                     |
| ------------------------- | --------------------------------------------------- |
| **Sentiment Analysis**    | `message`, `rating`, `publishedAt`, `language`      |
| **Reputation Monitoring** | `rating`, `message`, `publishedAt`, `reviewer.name` |
| **NLP Training Data**     | `message`, `rating` (as label), `language`          |
| **Competitor Analysis**   | `rating`, `message`, `reactions`, `publishedAt`     |

***

### 🌴 Related Scrapers

Expand your Yelp data extraction capabilities with our complete suite of **yelp review data extractor** tools. Each focuses on specific data types for comprehensive business intelligence.

#### 📦 Agents Review Intelligence Suite

All tools below are built and maintained by [Agents](https://apify.com/theagents?fpr=yhdrb)—a team of ex-Big Tech engineers, former ad agency strategists, and data specialists delivering intelligence, precision, and impact at scale.

| Tool                                                                                        | What It Extracts                               | Best For                              |
| ------------------------------------------------------------------------------------------- | ---------------------------------------------- | ------------------------------------- |
| ⭐ **Yelp Reviews Scraper**                                                                  | Reviews, ratings, reviewer profiles, reactions | Sentiment analysis **(You are here)** |
| 🏪 **[Yelp Business Scraper](https://apify.com/theagents/yelp-business?fpr=yhdrb)**             | Business profiles, ratings, amenities, contact | Business data, lead generation        |
| ⭐ **[Trustpilot Reviews Scraper](https://apify.com/theagents/trustpilot-reviews?fpr=yhdrb)**   | Reviews, TrustScores, company replies          | SaaS/B2B analysis                     |
| ⭐ **[TripAdvisor Reviews Scraper](https://apify.com/theagents/tripadvisor-reviews?fpr=yhdrb)** | Hotel/restaurant reviews, ratings              | Hospitality intelligence              |

***

### ⏰ Automated Monitoring & Scheduling

New Yelp reviews appear daily. For **reputation management** and **brand monitoring**, set up automated recurring runs to capture new reviews as they're posted.

#### Why Schedule Review Extraction?

- **Reputation monitoring** — Catch negative reviews early for rapid response
- **Review velocity tracking** — Monitor how fast new reviews arrive
- **Competitive intelligence** — Track competitor review trends over time
- **Compliance** — Maintain audit trails of review history

#### How to Set Up Scheduled Runs

1. **Open Apify Console** — Navigate to your Actor
2. **Click "Schedules"** — Create a new schedule
3. **Set frequency** — Daily, weekly, or custom cron expression
4. **Configure input** — Use `sortBy: "newest"` with low `maxItems`
5. **Enable webhooks** — Get notified when new reviews are found

#### Recommended Schedule Settings

| Use Case                 | Frequency      | `sortBy` | `maxItems`      |
| ------------------------ | -------------- | -------- | --------------- |
| **Daily monitoring**     | Every 24 hours | `newest` | 10-20           |
| **Weekly digest**        | Every 7 days   | `newest` | 50              |
| **Competitor tracking**  | Every 3 days   | `newest` | 30              |
| **Franchise monitoring** | Every 24 hours | `newest` | 10 per location |

#### Webhook Integration

Set up webhooks to receive notifications when runs complete:

- **Slack** — Post new reviews to a channel
- **Email** — Send digest of new reviews
- **Custom API** — Trigger your own processing pipeline
- **Zapier/Make** — Connect to 1000+ apps

***

### 🆓 Demo Mode & Free Testing

If you run on Apify's Free plan, you can still use this **yelp reviews scraper** with limited results. For unrestricted usage and to unlock the full power of this **yelp review scraper api** at scale, subscribe to a paid Apify plan.

**Free Plan Benefits:**

- ✅ First 40 reviews FREE with every query
- ✅ Test the API before committing to larger runs
- ✅ Perfect for validating output format and data quality
- ✅ No credit card required to start

**Upgrade for Full Access:**

- 🚀 Unlimited review extraction from Yelp
- 🚀 High-speed extraction for thousands of reviews
- 🚀 API access for automated workflows and integrations
- 🚀 Scheduled runs with webhooks and cron jobs

For unrestricted usage, [subscribe to a paid Apify plan](https://apify.com/pricing?fpr=yhdrb).

***

### 🔧 Troubleshooting

Having trouble with your extraction? Here are solutions to common issues when you **scrape Yelp reviews** and extract review data.

***

#### ❓ Getting Fewer Reviews Than Expected?

**Problem:** Extraction returns fewer reviews than anticipated

**Solutions:**

✅ **Check `maxItems` setting**—increase the limit if you need more reviews
✅ **Try different `sortBy` options**—`newest`, `oldest`, `highestRating`, `lowestRating`, `elites`
✅ **Verify business has reviews**—some businesses have limited review counts
✅ **Check for filtered reviews**—Yelp hides "not recommended" reviews

***

#### ❓ No Results Returned?

**Problem:** Extraction completes but returns empty dataset

**Solutions:**

✅ **Verify input format**—provide at least one URL or place ID
✅ **Check URL validity**—must be valid Yelp business URLs
✅ **Confirm business exists**—test the URL in your browser first
✅ **Check business has reviews**—new businesses may have zero reviews

***

#### 💰 Unexpected Costs?

**Problem:** Your run cost more than anticipated

**Key pricing to remember:**

| Scenario                  | What You Pay      |
| ------------------------- | ----------------- |
| 1 business, 40 reviews    | $0.016 (all free) |
| 1 business, 100 reviews   | $0.04             |
| 5 businesses, 200 reviews | $0.16             |

**Cost control tips:**

✅ **Use `maxItems` to cap spending**—set hard limits on total extraction
✅ **Start with smaller batches**—test with 40-50 reviews first
✅ **First 40 reviews are FREE**—included with every query

***

#### ❓ Missing Reviewer Data?

**Problem:** Some reviewer fields are missing

**Solutions:**

✅ **Open Storage tab**—full datasets available in Apify Console
✅ **Check field availability**—some reviewers hide location
✅ **Verify reviewer profile exists**—deleted accounts may have partial data

***

### 🎯 Use Cases & Industries

This **yelp reviews scraper** serves professionals who need fast, structured review intelligence—from **sentiment analysis** to **reputation monitoring** and **competitive research**. Use it to **extract Yelp reviews** for any customer feedback analysis need.

***

#### 🎯 Sentiment Analysis & Opinion Mining

Build NLP datasets from real customer reviews.

- Extract full review text for **sentiment analysis** processing
- Collect star ratings as ground truth labels for ML training
- Build **opinion mining** datasets with real customer language
- Support aspect-based sentiment analysis pipelines

**Example:** Extract 1,000 restaurant reviews for **NLP pipeline** training.

***

#### 🔍 Reputation Management & Brand Monitoring

Monitor and respond to customer feedback.

- Track new reviews for **reputation management** workflows
- Enable rapid **review response strategy** for negative feedback
- Monitor **review velocity** and rating trends
- Support **brand monitoring** across multiple locations

**Example:** Daily monitoring of your business for **negative review tracking**.

***

#### 📊 Competitor Analysis & Benchmarking

Analyze competitor strengths and weaknesses.

- Extract competitor reviews for **competitive benchmarking**
- Identify customer pain points for **competitor analysis**
- Build **competitive intelligence** datasets
- Discover opportunities from competitor weaknesses

**Example:** Analyze 500 competitor reviews for **pain point discovery**.

***

#### 🗣️ Voice of Customer (VoC) Research

Understand customer needs and preferences.

- Collect feedback for **voice of customer (VoC)** research
- Support **customer feedback analysis** initiatives
- Enable **product/service improvement** insights
- Build customer persona research datasets

**Example:** Extract Elite reviews for **customer feedback analysis**.

***

#### 🏨 Hospitality & Restaurant Intelligence

Gather insights for hospitality industry analysis.

- Track **restaurant research** trends and ratings
- Analyze **hospitality intelligence** data
- Monitor service quality across locations
- Research cuisine trends and customer preferences

**Example:** Analyze 200 restaurant reviews for **hospitality consulting**.

***

#### 📍 Local SEO & Review Velocity Tracking

Audit local business review performance.

- Track **local SEO auditing** metrics
- Monitor **review velocity tracking** over time
- Analyze review patterns and trends
- Identify optimization opportunities

**Example:** Track review velocity for **local SEO** improvements.

***

#### 🏢 Franchise Performance Monitoring

Monitor multi-location business performance.

- Track **franchise performance monitoring** across locations
- Compare review ratings between locations
- Identify underperforming locations
- Support operational improvements

**Example:** Monitor 50 franchise locations for **multi-location** analysis.

***

#### 💰 Investment Due Diligence

Research business health through review trends.

- Assess **investment due diligence** data
- Analyze review trends as business health signals
- Research customer satisfaction levels
- Evaluate business reputation

**Example:** Analyze review trends for **investment due diligence**.

***

#### 🔬 Academic Research & NLP Training

Build datasets for research and ML training.

- Collect data for **academic research** projects
- Build **machine learning training data** sets
- Support **computational social science** research
- Create **NLP dataset building** pipelines

**Example:** Extract 10,000 reviews for **NLP dataset building**.

***

#### 🕵️ Review Fraud Detection

Analyze review patterns for authenticity.

- Support **review fraud detection** analysis
- Identify **fake review analysis** patterns
- Analyze reviewer behavior for anomalies
- Build fraud detection datasets

**Example:** Analyze reviewer patterns for **fake review analysis**.

***

### 💡 Quick Start Guide

Simple setup—whether extracting reviews from a single business or building a dataset of thousands. This **yelp reviews scraper apify** tool makes it easy to **scrape Yelp reviews** in minutes.

#### Copy-Paste Examples by Persona

**For Data Scientists (Sentiment Analysis):**

```json
{
  "startUrls": ["https://www.yelp.com/biz/restaurant-name"],
  "sortBy": "yelp",
  "maxItems": 500
}
```

→ Run, then **export Yelp reviews to CSV** for NLP processing.

**For Developers (API → JSON):**

```python
from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("agents/yelp-reviews").call(run_input={
    "startUrls": ["https://www.yelp.com/biz/restaurant-name"],
    "sortBy": "newest",
    "maxItems": 100
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
```

**For Marketing Teams (Reputation Monitoring):**

```json
{
  "startUrls": ["https://www.yelp.com/biz/your-business-name"],
  "sortBy": "newest",
  "maxItems": 20
}
```

→ Schedule daily runs for automated **reputation monitoring**.

#### 3 Steps to Get Started

1. **Add input:** Paste business URL or place ID
2. **Configure:** Set `maxItems` limit and `sortBy` preference
3. **Run & Export:** Click Start, then download JSON/CSV from Storage tab

***

#### 📋 Method 1: Extract by Business URL

**Best for:** Single business analysis, reputation monitoring

```json
{
  "startUrls": ["https://www.yelp.com/biz/business-name-city"],
  "maxItems": 100
}
```

***

#### 📋 Method 2: Extract Newest Reviews

**Best for:** Trend monitoring, reputation management

```json
{
  "startUrls": ["https://www.yelp.com/biz/business-name-city"],
  "sortBy": "newest",
  "maxItems": 50
}
```

***

#### 📋 Method 3: Extract from Multiple Businesses

**Best for:** Competitor analysis, market research

```json
{
  "startUrls": [
    "https://www.yelp.com/biz/business-1",
    "https://www.yelp.com/biz/business-2",
    "https://www.yelp.com/biz/business-3"
  ],
  "maxItems": 100
}
```

***

#### 🔧 Best Practices for Yelp Review Scraping

##### ✅ DO:

- **Start with 40-50 reviews**—test before scaling
- **Use `sortBy` strategically**—match sort to your use case
- **Set `maxItems`**—control costs by limiting total extraction
- **Use free tier first**—40 reviews FREE with every query

##### ❌ DON'T:

- **Use customMapFunction for filtering**—this causes automatic blocking
- **Expect all reviews**—Yelp filters "not recommended" reviews
- **Forget to check URL format**—must be valid Yelp business URLs

***

### ❓ Frequently Asked Questions

#### What is a Yelp Reviews Scraper API?

A **yelp reviews scraper api** is a tool that programmatically extracts customer reviews, star ratings, reviewer profiles, and engagement metrics from Yelp business listings. This **yelp review data extractor** serves as an alternative to the Yelp Fusion API—which removed the reviews endpoint from its free tier.

#### Do I need a Yelp API key?

**No!** This **yelp reviews scraper** requires **no Yelp API key**, no Yelp Fusion API access, and no OAuth authentication. Start extracting review data immediately without any Yelp developer account. Yelp removed the reviews endpoint from its free API tier—this scraper fills that gap.

#### How much does it cost to scrape Yelp reviews?

**$0.016 per query** (first 40 reviews FREE), **$0.0004 per additional review**. Extract 100 reviews for about **$0.04**—significantly cheaper than building custom scrapers.

#### What Yelp review data can I extract?

Extract **review text**, **star ratings (1-5)**, **review dates**, **useful/funny/cool counts**, **reviewer usernames**, **reviewer locations**, **reviewer review counts**, **friend counts**, **photo counts**, **Elite status**, and **review photos**—all in structured JSON or CSV format.

#### Can I export Yelp reviews to CSV?

Yes. **Download Yelp reviews** directly from Apify Console in JSON, CSV, or Excel format. Perfect for **export Yelp reviews to CSV** workflows and data analysis.

#### Can I scrape Yelp reviews by location?

Use the **[Yelp Business Scraper](https://apify.com/theagents/yelp-business?fpr=yhdrb)** to find businesses by location first, then extract reviews from those businesses. This enables **scrape Yelp reviews by location** workflows.

#### Can I use Python to scrape Yelp reviews?

Yes! Full Python support via the Apify Client library. See the [Quick Start Guide](#-quick-start-guide) above for **yelp reviews scraper apify** Python integration.

#### Does Yelp have a reviews API?

Yelp's Fusion API removed the reviews endpoint from its free tier. This scraper provides full review text extraction without API key requirements—making it the primary accessible alternative for developers.

#### Can I scrape Yelp Elite reviews only?

Yes! Use `sortBy: "elites"` to extract only reviews from Yelp Elite members. Elite reviewers typically write more detailed, thoughtful reviews.

#### How do I do sentiment analysis on Yelp reviews?

Extract reviews using this **yelp sentiment analysis scraper**, then process the `message` field with your NLP pipeline. Star ratings (1-5) serve as ground truth labels for supervised learning.

#### Can I monitor new Yelp reviews automatically?

Yes! Set up scheduled runs in Apify Console with `sortBy: "newest"` to capture new reviews as they're posted. Enable webhooks for automated alerts.

#### What is the difference between recommended and non-recommended Yelp reviews?

Yelp filters some reviews into a "not recommended" section based on reviewer activity, review patterns, and account verification. See the [Recommended vs. Non-Recommended Reviews](#-recommended-vs-non-recommended-reviews) section for details.

#### Can I extract all reviews from a Yelp business?

Yes—for recommended reviews. Set `maxItems` to a high number to extract all visible reviews. Note that Yelp's "not recommended" reviews are filtered and may not be fully accessible.

#### Is this legal to use?

This tool extracts publicly available data from Yelp. Always ensure your use case complies with Yelp's Terms of Service and applicable data protection regulations.

#### What's the difference between this and Yelp Fusion API?

| Feature           | This Scraper    | Yelp Fusion API          |
| ----------------- | --------------- | ------------------------ |
| API Key Required  | ❌ No            | ✅ Yes                    |
| Reviews Endpoint  | ✅ Full text     | ❌ Removed from free tier |
| Free Tier         | 40 reviews FREE | Limited/paid only        |
| Reviewer Profiles | ✅ Full          | ❌ Not available          |
| Reaction Counts   | ✅ Yes           | ❌ No                     |

***

### 📞 Contact

**Built by [Agents](https://apify.com/theagents?fpr=yhdrb)** — Where others search, we uncover. Our team of ex-Big Tech engineers, growth hackers, and data specialists builds high-performance scraping tools engineered for speed, precision, and reliability.

For questions or further assistance:

- **Email:** Reach out at **whoaretheagents@gmail.com**
- **Discord:** Join our community to connect with our support team

***

**Ready to start extracting Yelp review data?** With transparent event-based pricing, first 40 reviews FREE, and no API key required, this **Yelp Reviews Scraper API** by [Agents](https://apify.com/theagents?fpr=yhdrb) is the ultimate tool for **sentiment analysis**, **reputation monitoring**, **competitor research**, and **NLP pipeline training**. Start scraping today! ⭐

# Actor input Schema

## `startUrls` (type: `array`):

URLs to start with. It should be place URL

## `placeIds` (type: `array`):

Place IDs to start with.

## `sortBy` (type: `string`):

Sorts reviews by the given option.

## `maxItems` (type: `integer`):

Maximum number of items that you want as output.

## `customMapFunction` (type: `string`):

Function that takes each of the objects as argument and returns data that will be mapped by the function itself.

## Actor input object example

```json
{
  "startUrls": [
    "https://www.yelp.com/biz/kokoroll-cafe-torrance-4"
  ],
  "placeIds": [
    "RJNAeNA-209sctUO0dmwuA"
  ],
  "sortBy": "yelp",
  "maxItems": 30,
  "customMapFunction": "(object) => { return {...object} }"
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        "https://www.yelp.com/biz/kokoroll-cafe-torrance-4"
    ],
    "placeIds": [
        "RJNAeNA-209sctUO0dmwuA"
    ],
    "sortBy": "yelp",
    "maxItems": 30,
    "customMapFunction": (object) => { return {...object} }
};

// Run the Actor and wait for it to finish
const run = await client.actor("theagents/yelp-reviews").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": ["https://www.yelp.com/biz/kokoroll-cafe-torrance-4"],
    "placeIds": ["RJNAeNA-209sctUO0dmwuA"],
    "sortBy": "yelp",
    "maxItems": 30,
    "customMapFunction": "(object) => { return {...object} }",
}

# Run the Actor and wait for it to finish
run = client.actor("theagents/yelp-reviews").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    "https://www.yelp.com/biz/kokoroll-cafe-torrance-4"
  ],
  "placeIds": [
    "RJNAeNA-209sctUO0dmwuA"
  ],
  "sortBy": "yelp",
  "maxItems": 30,
  "customMapFunction": "(object) => { return {...object} }"
}' |
apify call theagents/yelp-reviews --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,theagents/yelp-reviews"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/c7MfRDqfYvZWOtMrJ/builds/G97193JiW5IHxYtWa/openapi.json
