TripAdvisor Reviews Scraper - Most Comprehensive
Pricing
from $0.04 / 1,000 reviews
TripAdvisor Reviews Scraper - Most Comprehensive
๐ฅ ~$0.05/1K reviews ๐ฅ Scrape all reviews for any TripAdvisor business. Full review text, ratings, author profiles, trip types, and helpful votes. Accepts business URLs.
Pricing
from $0.04 / 1,000 reviews
Rating
0.0
(0)
Developer
Kai
Maintained by CommunityActor stats
0
Bookmarked
28
Total users
10
Monthly active users
6.2 hours
Issues response
4 days ago
Last modified
Categories
Share
TripAdvisor Reviews Scraper
Collect TripAdvisor reviews as structured dataset records. Add numeric location IDs or TripAdvisor review-page URLs, apply the filters you need, and receive one dataset item per review.
Use it to analyse traveller feedback, compare ratings, monitor new reviews, or collect reviews that mention a topic.
Collect recent reviews
Use a location ID
Collect the 20 most recent reviews for one TripAdvisor location:
{"businesses": ["5572598"]}
Use a review-page URL
You can also start with a TripAdvisor review-page URL:
{"businesses": ["https://www.tripadvisor.com/Restaurant_Review-g60745-d5572598-Reviews-Ostra-Boston_Massachusetts.html"],"maxReviews": 5}
Use supported review URLs
The Actor accepts restaurant, hotel, attraction, and cruise review pages:
{"businesses": ["https://www.tripadvisor.com/Restaurant_Review-g60745-d5572598-Reviews-Ostra-Boston_Massachusetts.html","https://www.tripadvisor.com/Hotel_Review-g60763-d93589-Reviews-The_Michelangelo-New_York_City.html","https://www.tripadvisor.com/Attraction_Review-g60763-d105127-Reviews-Central_Park-New_York_City.html","https://www.tripadvisor.com/Cruise_Review-d25948295-Reviews-MSC_World_America"],"maxReviews": 5}
Filter reviews
Filters are combined. This example keeps English four- and five-star family or couples reviews from January or February that mention service:
{"businesses": ["5572598"],"maxReviews": 10,"language": "en","rating": ["4", "5"],"tripType": ["Couples", "Family"],"months": ["1", "2"],"searchQuery": "service","sortBy": "recent"}
Use since with newest order to set the earliest publication date:
{"businesses": ["5572598"],"since": "2025-01-01","sortBy": "recent"}
Input reference
| Field | Type | Default | Description |
|---|---|---|---|
businesses | string[] | required | One or more numeric location IDs or HTTPS TripAdvisor restaurant, hotel, attraction, or cruise review URLs. |
maxReviews | integer | 20 | Maximum unique reviews for each business. 0 continues until no more review pages are available. |
sortBy | string | recent | recent, detailed for TripAdvisor's detailed-reviews order, or highest for the highest ratings first. |
language | string | all | all or a language code such as en, fr, de, or ja. Results include TripAdvisor's machine translations into that language. Use isTranslated and originalLanguage to keep only original reviews. |
rating | string[] | all ratings | Any combination of 1, 2, 3, 4, and 5. |
tripType | string[] | all trip types | Any combination of Business, Couples, Family, Friends, and Solo. |
since | string | none | Earliest publication date in YYYY-MM-DD format. A since date uses newest order for every sortBy value. |
months | string[] | all months | Publication month numbers from 1 through 12. |
searchQuery | string | none | Text that returned reviews must match. |
proxyConfiguration | object | Apify Proxy enabled | Optional connection settings managed by Apify. |
Filters are combined. Businesses are processed in input order. Repeated businesses and repeated filter values are accepted. Unknown input fields are ignored for compatibility.
Complete input reference example
This valid input shows how the filters fit together. It is a syntax example, not a promise that the selected businesses still have matching reviews.
Review output
The default dataset contains one item per review. The selected fields below are unchanged values from a saved review collected on 2026-10-03. This shortened sample does not show the author object. The field reference gives its full shape and types.
Review fields
| Field | Type | Description |
|---|---|---|
id | string | TripAdvisor review ID. |
locationId | number | Numeric TripAdvisor location ID. |
businessName | string | Place name. |
businessUrl | string | TripAdvisor page path or URL for the place. |
rating | number | Traveller rating. |
title | string | Review title. |
text | string | Review text. |
publishedDate | string | Display publication date. |
dateVisited | string or null | Display visit date. |
tripType | string or null | Visit type. |
author | object | Author details. See the child fields below. |
subratings | object[] | Category ratings. |
photos | object[] | Review photos. |
ownerResponse | string or null | Owner-response text. |
helpfulVotes | number | Helpful-vote total. |
scrapedAt | string | UTC collection timestamp. |
reviewUrl | string or null | TripAdvisor review path. |
placeType | string or null | Place category. |
accommodationCategory | string or null | Accommodation category. TripAdvisor's current review list does not return it, so the value is null. |
isTranslated | boolean | Whether the displayed review is translated. |
isPinned | boolean or null | Whether the business pinned the review. TripAdvisor shows a pinned review first in recent order, whatever its date. null when the source does not say. |
tipText | string or null | Review tip text. |
createdDate | string or null | Review creation date in YYYY-MM-DD format. |
publishedDateISO | string or null | Publication date in YYYY-MM-DD format. |
dateVisitedISO | string or null | Visit date in YYYY-MM-DD format. TripAdvisor publishes only the visit month, so the day is 01. |
language | string or null | Displayed-review language code. |
originalLanguage | string or null | Original-review language code. |
status | string or null | Publication status. |
publishPlatform | string or null | Publication platform. |
translationType | string or null | Translation type. |
reviewTips | object[] | Review-tip objects. |
ownerResponseDetail | object or null | Detailed owner response. See the child fields below. |
Nested fields
| Object | Child fields and types |
|---|---|
author | displayName string; hometown string or null; totalContributions number; helpfulVotes string or null; avatarUrl, profileUrl, userId, and username string or null; isVerified boolean. |
subratings[] | label string; value number. |
photos[] | id, url, and caption strings. |
reviewTips[] | body string; published boolean or null. TripAdvisor's current review list does not return published, so it is null. |
ownerResponseDetail | id number; text, language, publishedDate, and connectionToSubject strings; author object. |
ownerResponseDetail.author | userId and displayName strings; profileUrl and avatarUrl strings or null. |
All records use the same root shape. TripAdvisor can omit source values, so
nullable fields can be null and optional arrays can be empty.
Limits
maxReviewsapplies separately to each business.0removes the Actor-set review cap.- Reviews follow the selected order. Duplicate review IDs are removed before
maxReviewsis applied. highestreads five-star reviews first, then four, three, two, and one. Reviews are newest first within each star level.detaileduses TripAdvisor's detailed-reviews order. The Actor stops a business when TripAdvisor does not confirm that order.- A
sincedate always uses newest order. - TripAdvisor does not return every optional field for every review. Nullable fields can be
null, and optional arrays can be empty.