Fast TripAdvisor Reviews Scraper API | Hotel, Restaurant Review
Pricing
$0.50 / 1,000 reviews
Fast TripAdvisor Reviews Scraper API | Hotel, Restaurant Review
High-performance TripAdvisor review scraper delivering 100-200 reviews per second with precision filtering by language, ratings, and dates. Affordable at $0.50 per 1,000 reviews, with rich data output and custom mapping capabilities. Perfect for research, analytics, and market intelligence.
Pricing
$0.50 / 1,000 reviews
Rating
3.2
(9)
Developer
Agents
Maintained by CommunityActor stats
15
Bookmarked
252
Total users
7
Monthly active users
18 hours ago
Last modified
Categories
Security
Limited permissionsShare
TripAdvisor Reviews Scraper: The Fastest, Cheapest and Most Reliable
Built by Agents — Intelligence. Precision. Impact.
🚀 Overview
Our TripAdvisor Reviews Scraper is engineered for high-performance data extraction, delivering real-time, granular insights to empower:
- Speed: Scrape 100-200 reviews per second
- Precision: Filter by language, ratings, and dates
- Flexibility: Transform data with custom mapping functions
- Rich Data: Access comprehensive review details and metadata
Whether you need to monitor guest sentiment or fuel deep intelligence research, our tool provides actionable review data with unmatched speed and accuracy. Built by Agents—a team of ex-Big Tech engineers and data specialists—this scraper is part of a cross-platform review intelligence suite covering TripAdvisor, Trustpilot, and Yelp.
Agents Review Intelligence Suite
| Tool | What It Extracts | Best For |
|---|---|---|
| ⭐ TripAdvisor Reviews Scraper | Hotel/restaurant reviews, ratings | Hospitality intelligence (You are here) |
| ⭐ Trustpilot Reviews Scraper | Reviews, TrustScores, company replies | SaaS/B2B analysis |
| ⭐ Yelp Reviews Scraper | Yelp reviews, ratings, reviewer profiles | Restaurant/hospitality |
| 🏪 Yelp Business Scraper | Business profiles, ratings, contact | Lead generation |
💰 Pricing
- $0.50 per 1,000 reviews
- Demo Mode Available for Free Users (5 runs per month, each capped at 10 items, API not available)
🔍 How It Works
-
Set Your Targets:
Provide TripAdvisor URLs for the reviews you want to extract. -
Define Your Parameters:
Configure filters like publication date (since), ratings, languages, and review limits. -
Run and Analyze:
Execute the scraper to receive detailed review data at high speed.
Input Definitions
| Field | Type | Description | Default |
|---|---|---|---|
startUrls | array | TripAdvisor URLs from which to extract reviews | [] |
since | string | Filter reviews published after this date | null |
startPage | number | Starting page number for scraping | 1 |
locale | string | Auto-translate reviews to a target language (TripAdvisor translation). Results may vary — TripAdvisor's translation is unreliable. | none |
ratings | string | Filter reviews by specific ratings | [] |
languages | array | Filter reviews by language | [] |
maxItems | number | Maximum number of reviews to retrieve | Infinity |
customMapFunction | string | JavaScript function to transform each output review. Ignored with a warning if it is not a usable function (see Custom Map Function) | null |
outputConnector | string | MCP connector to deliver the reviews to (see Send Results to Notion, Todoist and More) | null |
deliverTarget | string | Where the connector writes — paste the URL or ID (Notion example: https://www.notion.so/My-Reviews-24f8a1b2c3d44e5f8a9b0c1d2e3f4a5b); some services need none | null |
deliverMode | string | perPost (one record per review) or summary (one roll-up per run) | perPost |
deliverMaxItems | number | Optional cap on how many records perPost delivers (ignored in summary) | null |
🧩 Custom Map Function
Transform output using the customMapFunction parameter. This JavaScript function receives each review object and returns your desired format-add computed fields, flatten nested data, or remove fields you do not need.
Important: Custom map function is for data transformation-not for filtering. Filtering items may result in automatic restrictions. Returning an empty object does not remove the item from the dataset-it is saved as { "noResults": true } instead.
(object) => ({...object,isPositive: object.rating >= 4,textLength: object.text?.length ?? 0,locationName: object.location?.name,location: undefined})
Requirements & Error Handling
The value must be a single JavaScript function that takes one item and returns the transformed item. Arrow functions and regular functions both work; async and generator functions are not supported.
Limits: the function runs in an isolated sandbox. It must be synchronous and finish within about 1 second per item, and only plain JavaScript is available (no network requests, require or console). Each item is passed in as plain JSON data.
An unusable function never stops your run. The actor logs a warning, ignores the function, and saves the original, unmodified items instead-so you still get your data:
| Situation | What happens |
|---|---|
| Not valid JavaScript (for example, plain text pasted into the field) | Rejected before the first request; original items are saved |
| Valid JavaScript but not a function (for example, an object) | Rejected before the first request; original items are saved |
async or generator function | Rejected before the first request; original items are saved |
Returns a Promise (for example, (object) => Promise.resolve(object)) | Rejected at that point; the remaining items are saved unmodified |
Returns something other than an object (for example, a number or null) | Rejected at that point; the remaining items are saved unmodified |
| Throws while transforming an item | Rejected at that point; the remaining items are saved unmodified |
| Takes longer than about 1 second on one item (for example, an endless loop) | Rejected at that point; the remaining items are saved unmodified |
Uses date operations (new Date, Date.now, 1970) | Rejected-use the since input to filter by date instead |
If your output does not look transformed, check the run log for a warning that starts with Your "customMapFunction" input was rejected:-it explains exactly what was wrong.
If you do not need to transform the output, simply leave this field empty.
🔗 Send Results to Notion, Todoist and More
Skip the manual exports — the TripAdvisor Reviews Scraper can deliver its results directly into the tools you already work in, through Apify MCP Connectors:
- Authorize a connector (Notion, Todoist, or any service whose MCP server offers non-destructive write tools) once in Console → Settings → API & Integrations → MCP connectors.
- Pick it from the Send results to Notion, Todoist, … dropdown.
- Fill in where and how to write:
- Destination target — paste the URL or ID (Notion example:
https://www.notion.so/My-Reviews-24f8a1b2c3d44e5f8a9b0c1d2e3f4a5b); share it with your connector first via Notion's ••• → Connections menu. For structured columns use a page URL (the Actor builds the database for you) or a database that already has columns — an empty database only receives titles. (Some services need no target.) - Write mode —
perPostwrites one record per review;summarywrites a single roll-up for the run. - Max records to deliver (optional) — cap on how many records
perPostdelivers.
- Destination target — paste the URL or ID (Notion example:
Notion, structured like a spreadsheet: for a table of typed columns, point the target at a Notion page — the Actor auto-creates a database from the data, one matching, correctly-typed column per field (URL, number, date, text). Pointing at an existing database fills the columns it already has (matched by name); an empty database receives only the title, and the rest of each record goes to the row body — the connector can't add columns to an existing database without destructive access it never requests. Nested fields such as userProfile or location are flattened into columns too, so everything is sortable and filterable in the grid. Fields that don't fit a column go to the row's page body, so nothing is lost.
Your credentials stay yours: the Actor talks to your services exclusively through your own authorized connector and only ever uses non-destructive write tools — it cannot delete or overwrite anything you already have. Delivery is best-effort and runs after the scrape: if a connector is misconfigured or a delivery fails, your run still finishes normally with all results intact — the failure is reported in the run log, never by failing the run. If the run is about to hit its timeout, delivery stops early so the run still succeeds, and the log tells you how many records were delivered.
⚙️ Sample Output
A typical review appears as follows:
{"id": "986902418","createdDate": "2024-12-29","publishedDate": "2024-12-29","rating": 5,"title": "Great staff","text": "Jeffrey is great! Experienced some minor error during check in...","language": "en","username": "songh455","location": {"name": "SpringHill Suites New York Manhattan/Times Square South"}}
👍 Who Benefits
- Data Scientists: Uncover patterns and drive actionable decisions
- Academic Researchers: Gather empirical data for studies
- Hospitality Professionals: Monitor guest feedback
- Market Researchers: Extract competitive intelligence
- Reputation Managers: Track guest sentiment across properties
- Travel Industry Analysts: Benchmark competitors and identify trends
🛠 Troubleshooting & Tips
-
Result Quantity Adjustments:
Adjust themaxItemsparameter if you receive unexpected quantities. Excess data is free—you'll only be billed for your specified amount. -
Missing Data?
Check the Storage tab for complete results. Verify your input parameters for accuracy. -
Need Help?
Our support team is ready to assist with any issues or questions.
📌 Contact & Support
Built by Agents — 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:
- Discord: Join our community to connect with our support team
- Email: Reach out at whoaretheagents@gmail.com
Ready to start extracting TripAdvisor review data? With simple per-review pricing, demo mode for free testing, and no API required, this TripAdvisor Reviews Scraper by Agents is the ultimate tool for hospitality intelligence, guest sentiment analysis, and competitive benchmarking. Start scraping today! ⭐