# 🍽️ Yelp Elite Squad & Local Food Critic Outreach Engine (`automation_studio/yelp-elite-outreach-engine`) Actor

Scout top-tier Yelp Elite reviewers, food critics, and culinary micro-influencers by city. Extracts review volume, Elite badges, Instagram handles, TikTok profiles, food blogs, and generates personalized VIP tasting dinner invitation pitches.

- **URL**: https://apify.com/automation\_studio/yelp-elite-outreach-engine.md
- **Developed by:** [Automation Studio](https://apify.com/automation_studio) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.50 / 1,000 verified yelp elite critic leads

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 🍽️ Yelp Elite Squad & Local Food Critic Outreach Engine

> **Fill your dining room on opening night by connecting directly with local culinary royalty and top-tier Yelp Elite food reviewers.**

The **Yelp Elite Squad & Local Food Critic Outreach Engine** is an investor-grade influencer scouting pipeline built specifically for **restaurant marketing agencies, boutique hospitality PR firms, craft bakeries, cocktail bars, and culinary event organizers**.

***

### 🌟 Why Yelp Elite Reviewers Make or Break New Venues

When launching a new restaurant or hospitality concept, **the first 30 days dictate your trajectory**:

- **Algorithmic Dominance**: Yelp's search algorithm heavily weights reviews from **Yelp Elite badge holders** (`Elite '26`, 5-Year Gold Badge, 10-Year Black Badge). A 5-star review from an Elite critic stays pinned to the top of search results for months.
- **Micro-Influencer Amplification**: Over 70% of Yelp Elite reviewers maintain active culinary Instagram accounts, TikTok channels, and food blogs with dedicated local followings.
- **The High Cost of PR**: Traditional hospitality PR firms charge **$3,000–$7,500/month** to manually hunt food critics and send media tasting invitations. This Actor automates the entire discovery and outreach process in **under 3 minutes**.

***

### ⚡ Key Capabilities & Unfair Advantage

| Feature | Standard Scrapers | Our Yelp Elite Outreach Engine |
| :--- | :---: | :---: |
| **Reviewer Focus** | Dumps raw restaurants | **Isolates vetted Yelp Elite critics only** |
| **Social Contact Discovery** | None | **Captures Instagram, TikTok & food blogs** |
| **Authority Grading** | Basic star ratings | **1–100 Calculated Influence Score** |
| **VIP Tasting Pitch** | None | **Auto-generates tailored event invitations** |
| **Executive Reporting** | None | **Market scorecard in `OUTPUT.md` & `SUMMARY.json`** |
| **Output Schema Validation** | Warning / Not Set | **100% compliant Apify Output & Dataset Schema** |

***

### 📥 Input Parameters

| Parameter | Type | Default | Description |
| :--- | :---: | :---: | :--- |
| `location` | String | `"Austin, TX"` | Target city, state, or metropolitan area to scout. |
| `cuisineCategories` | Array | `[]` | Optional cuisine filter (e.g., `["Italian", "Bakeries", "Cocktail Bars"]`). Leave empty for all food categories. |
| `minEliteYears` | Integer | `1` | Minimum years holding the Yelp Elite badge (1 = Rising, 5 = Gold Veteran). |
| `onlyWithSocials` | Boolean | `false` | When true, filters for critics with direct Instagram, TikTok, or food blog handles. |
| `restaurantName` | String | `"The Olive & Oak"` | Your venue or concept name used to personalize VIP tasting invitations. |
| `invitationType` | String | `"VIP Media Tasting Dinner"` | Format of event invitation (`VIP Media Tasting Dinner`, `Soft Opening Pre-Launch`, `Chef's Table Experience`). |
| `maxResults` | Integer | `50` | Maximum number of reviewer profiles to scout (1 to 1,000). |
| `proxyConfiguration` | Object | `RESIDENTIAL` | Apify residential proxy configuration for reliable, ban-free discovery. |

***

### 📤 Output Schema

Every extracted reviewer lead contains **20 uniform, typed fields** with zero null values:

```json
{
  "reviewerId": "eEdjf1w-5ocoEdmcvNsvS3",
  "displayName": "Jessica M.",
  "profileUrl": "https://www.yelp.com/search?find_desc=Jessica+M.&find_loc=Austin%2C+TX",
  "avatarUrl": "https://s3-media0.fl.yelpcdn.com/assets/srv0/yelp_styleguide/bf5c8a9ccd85/assets/img/default_avatars/user_60_square.png",
  "city": "Austin, TX",
  "metroArea": "Greater Austin Metropolitan Area",
  "isElite": true,
  "eliteBadge": "Elite '26, 5-Year Elite (Gold)",
  "eliteYearsCount": 5,
  "eliteTier": "Gold Elite (5+ Years)",
  "totalReviewsCount": 385,
  "totalPhotosUploaded": 1540,
  "complimentsCount": 680,
  "fansCount": 78,
  "influenceScore": 89.2,
  "topCuisines": "Craft Bakeries, Specialty Coffee, French Patisserie",
  "instagramHandle": "@jessica.austin.eats",
  "tikTokHandle": "@jessica.austin.fooddiary",
  "foodBlogUrl": "https://austin.eater.com",
  "vipTastingPitch": "Hi Jessica! We've been following your fantastic culinary reviews around Austin (especially your passion for Craft Bakeries). We are hosting an exclusive, private VIP Media Tasting Dinner for The Olive & Oak and would be thrilled to have you as our honored guest with a complimentary +1. Chef will be preparing an exclusive multi-course menu paired with craft pairings. Would love to send over your private VIP invite card — what is the best email or date for you?",
  "scrapedAt": "2026-09-24T11:45:00Z"
}
```

***

### 🏆 Dual Output Architecture: Key-Value Store Artifacts

In addition to tabular rows in the default dataset, each run generates:

- **`OUTPUT` (Markdown)**: Executive market intelligence briefing containing average reviewer influence, social media penetration rates, authority tier breakdown, and copy-paste VIP tasting invitation templates.
- **`SUMMARY` (JSON)**: Machine-readable summary metrics including total critics found, average influence scores, and contactability rates.

***

### 💰 Competitive Pay-Per-Event (PPE) Pricing

This Actor utilizes Apify's modern **Pay-Per-Event (PPE)** pricing model, engineered to provide maximum value at fractional costs compared to generic scrapers on the store:

| Event | Event Description | Price (USD) |
| :--- | :--- | :---: |
| **`apify-actor-start`** | Actor initialization and configuration validation | **$0.001** |
| **`apify-default-dataset-item`** | Single verified Yelp Elite reviewer lead with socials & pitch | **$0.004** |

#### 📉 Tiered Volume Discounts for Apify Subscription Plans

| Apify Plan | Dataset Item Price | Cost per 1,000 Verified Leads |
| :--- | :---: | :---: |
| **Free** | $0.0040 | $4.00 |
| **Bronze** | $0.0030 | $3.00 |
| **Silver** | $0.0025 | $2.50 |
| **Gold / Platinum / Diamond** | $0.0020 | $2.00 |

#### 🥊 How We Outperform Generic Store Competitors

| Feature | Generic Yelp Scrapers (`epctex`, `api-ninja`, `web_wanderer`) | 🍽️ Our Yelp Elite Outreach Engine |
| :--- | :--- | :--- |
| **Startup Fee** | $0.005 – $0.010 per run | **$0.001** (90% cheaper entry) |
| **Target Focus** | Raw, unsegmented business directories | **Vetted Yelp Elite food critics & tastemakers** |
| **Contact Enrichment** | None (only Yelp business address) | **Direct Instagram, TikTok & food blog URLs** |
| **Outreach Copy** | None (manual copywriting needed) | **Tailored VIP tasting dinner pitches ready to send** |
| **URL Reliability** | Frequent 404s on unindexed user profiles | **100% verified 200 OK deep-search links** |
| **Effective ROI** | $5.00–$10.00 for raw data | **$0.40 for 100 high-converting influencer leads** |

# Actor input Schema

## `location` (type: `string`):

Target city, state, or metropolitan area to scout Yelp Elite food critics (e.g., 'Austin, TX', 'Miami, FL', 'Los Angeles, CA', 'New York, NY', 'Chicago, IL', 'Dallas, TX').

## `cuisineCategories` (type: `array`):

Optional filter for specific food and dining categories (e.g., 'Italian', 'Sushi', 'Cocktail Bars', 'Bakeries', 'Steakhouses', 'Tacos', 'Brunch'). Leave empty to scout across all food categories.

## `minEliteYears` (type: `integer`):

Filter reviewers by minimum number of years holding the official Yelp Elite badge (1 = Rising Elite, 3 = Established, 5 = Veteran Gold Badge).

## `onlyWithSocials` (type: `boolean`):

When enabled, filters for food critics who have directly discoverable Instagram handles, TikTok links, or personal food blogs for immediate DM outreach.

## `restaurantName` (type: `string`):

Enter the name of your restaurant, bar, or culinary concept to automatically customize the generated VIP tasting dinner invitation messages.

## `invitationType` (type: `string`):

Select the format of the VIP media invitation automatically generated for each critic.

## `maxResults` (type: `integer`):

Maximum number of Yelp Elite reviewer profiles to collect and enrich (1 to 1,000).

## `proxyConfiguration` (type: `object`):

Apify Proxy configuration. Residential proxies are recommended for high-volume Yelp directory discovery.

## Actor input object example

```json
{
  "location": "Austin, TX",
  "cuisineCategories": [],
  "minEliteYears": 1,
  "onlyWithSocials": false,
  "restaurantName": "The Olive & Oak",
  "invitationType": "VIP Media Tasting Dinner",
  "maxResults": 50,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

Tabular dataset containing 20 structured fields per reviewer including elite badges, review volume, photo uploads, social handles, and outreach pitches

## `summary` (type: `string`):

Executive scorecard summarizing total reachable food critics, average influence scores, social media penetration rates, and top dining categories

# 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 = {
    "location": "Austin, TX",
    "cuisineCategories": [],
    "restaurantName": "The Olive & Oak"
};

// Run the Actor and wait for it to finish
const run = await client.actor("automation_studio/yelp-elite-outreach-engine").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 = {
    "location": "Austin, TX",
    "cuisineCategories": [],
    "restaurantName": "The Olive & Oak",
}

# Run the Actor and wait for it to finish
run = client.actor("automation_studio/yelp-elite-outreach-engine").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 '{
  "location": "Austin, TX",
  "cuisineCategories": [],
  "restaurantName": "The Olive & Oak"
}' |
apify call automation_studio/yelp-elite-outreach-engine --silent --output-dataset

```

## MCP server setup

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

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/MdD2MpJ5Juu2U2c3C/builds/wp6XJdURnR4RCGyvn/openapi.json
