Tripadvisor Hotel Scraper
Pricing
from $0.80 / 1,000 results
Tripadvisor Hotel Scraper
Extract hotel data from TripAdvisor anonymously — no login needed. Search hotels by name, city or URL; pull real per-provider OTA rates (Booking.com, Expedia, Agoda & more) side by side; or get a city's total hotel count and listing. Reads TripAdvisor's own embedded data, not guessed-at page text.
Pricing
from $0.80 / 1,000 results
Rating
0.0
(0)
Developer
MrDoe
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Scrape TripAdvisor hotel data — hotel names, addresses, phone numbers, coordinates, guest ratings, review counts, price ranges, and real per-OTA-provider room rates (Booking.com, Expedia, Hotels.com, Agoda, Priceline, Vio.com, and more) — without a TripAdvisor account, login, or official API. The TripAdvisor Hotel Scraper takes a hotel name, a TripAdvisor URL, a numeric hotel ID, or a city, and returns clean structured JSON for hotel rate comparison, competitor research, and building your own TripAdvisor hotel dataset or API feed.

What is the TripAdvisor Hotel Scraper?
The TripAdvisor Hotel Scraper is an Apify Actor that extracts publicly visible hotel data from TripAdvisor in three operations: search looks up hotels by name, URL, ID, or city and returns one row per hotel with contact details, coordinates, rating, and price range; roomRates adds one row per connected OTA provider showing that provider's price, cancellation policy, and whether TripAdvisor flags it as the lowest; and location counts and lists a city's hotels. Output is one flat JSON row per hotel, rate, or city, ready for Excel, Google Sheets, or an API integration.
How to scrape TripAdvisor hotel prices
- Choose an Operation:
Hotel Search,Room & OTA Rate Details, orLocation Hotel Count & List. - Fill the matching field —
hotelQuery(a hotel name, city, TripAdvisorHotel_Review-...URL, or numeric hotel ID) orlocation(a city name or numeric geo ID). Use the batch fields for many. - Set
maxItemsto cap hotel-summary rows. - Keep
proxyConfigurationon residential (required). - Click Start. Export as JSON, CSV, Excel, or via the dataset API.
What data can I extract from TripAdvisor?
| Field | Type | Description |
|---|---|---|
_operation | string | search, roomRates, or location |
status | string | success, unavailable, or error |
kind | string | hotelSummary, rate, or locationSummary |
geoId | string | TripAdvisor's internal geo ID for the city |
hotelId | string | TripAdvisor's internal hotel ID (the d number) |
hotelName | string | Hotel name |
url | string | Canonical TripAdvisor hotel review URL |
address | string | Full street address |
city / country | string | Location |
phone | string | Hotel phone number |
latitude / longitude | number | Coordinates |
rating | number | Overall guest rating out of 5 |
reviewCount | integer | Number of guest reviews |
priceFrom / priceMax | number | TripAdvisor's displayed price range |
offerCount | integer | Number of OTA offers for the hotel (rate rows) |
provider | string | OTA provider name, e.g. Booking.com (rate rows) |
price | number | That provider's nightly price (rate rows) |
strikeThroughPrice | string | Pre-discount price when shown |
isLowestPrice | boolean | Whether TripAdvisor flags this as the lowest offer |
freeCancellation | boolean | Whether the offer includes free cancellation |
offerStatus | string | e.g. AVAILABLE |
currency | string | Currency code for prices in the row |
hotelCount | integer | Total hotels TripAdvisor lists for the city (locationSummary, best-effort) |
hotelsListed | integer | How many hotel rows this run returned (locationSummary) |
errorMessage | string | Why a lookup failed |
Input example
{"operation": "roomRates","hotelQuery": "The Bryant Park Hotel, New York City","maxItems": 5,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
Output example
[{"_operation": "roomRates","status": "success","kind": "hotelSummary","geoId": "60763","hotelId": "224214","hotelName": "The Bryant Park Hotel","address": "40 West 40th Street, New York City, New York, 10018-2602","city": "New York City","country": "US","phone": "1 (212) 869-0100","latitude": 40.752895,"longitude": -73.983696,"rating": 4.8,"reviewCount": 5560,"priceFrom": 368,"priceMax": 1201,"url": "https://www.tripadvisor.com/Hotel_Review-g60763-d224214-Reviews-The_Bryant_Park_Hotel-New_York_City_New_York.html"},{"_operation": "roomRates","status": "success","kind": "rate","hotelId": "224214","hotelName": "The Bryant Park Hotel","offerCount": 12,"provider": "Booking.com","price": 570,"currency": "USD","strikeThroughPrice": null,"isLowestPrice": false,"offerStatus": "AVAILABLE","freeCancellation": true}]

What you get vs. browsing TripAdvisor manually
| Task | Manually on TripAdvisor | With the TripAdvisor Hotel Scraper |
|---|---|---|
| Compare every OTA's price for one hotel | Read the "view deals" row | roomRates — one row per provider, side by side |
| See which OTA is cheapest | Eyeball the list | isLowestPrice flag on the rate rows |
| Pull contact details + coordinates for many hotels | Open each page | One search batch, one dataset |
| Count how many hotels a city has | Estimate from the listing | hotelCount on the summary row |
| Get the data into Excel / a database | Manual copy-paste | Built-in JSON / CSV / Excel + dataset API |
How to use it (step by step)
- Pick the operation —
searchfor hotel profiles,roomRatesfor cross-OTA price shopping,locationfor city counts. - Provide the query — a direct TripAdvisor
Hotel_ReviewURL or numeric hotel ID is the most reliable; a hotel or city name resolves through a curated major-city list. - Set
maxItems. - Keep the residential proxy on — it is required.
- Run and export — dataset tab or
GET /v2/datasets/{id}/items. - Schedule it for recurring rate tracking.
Pricing
Pay-per-event: a small run-start charge, then a per-row charge for each hotel-summary row and each OTA-rate row. Rows with status error or unavailable are not charged. Exact rates are on the Actor's Pricing tab. [PRICING TBD]
FAQ
What is the TripAdvisor Hotel Scraper? An Apify Actor that extracts publicly available TripAdvisor hotel data — hotel profiles, per-OTA room rates, and city listings — as structured JSON, CSV, or Excel.
Do I need a TripAdvisor account, API key, or login? No.
Why did I get 0 OTA rate offers for a hotel? TripAdvisor had no connected/available provider rates for that hotel at fetch time — the hotel summary row is still returned, and the unavailable rate row is not charged.
Can I pick my own check-in / check-out dates for rates? Not on this anonymous path — the rate-comparison data reflects TripAdvisor's own default near-term date window.
Which cities resolve from a name? Amsterdam, Bangkok, Barcelona, Berlin, Boston, Chicago, Dubai, Hong Kong, Istanbul, Las Vegas, London, Los Angeles, Miami, New York City, Orlando, Paris, Rome, San Francisco, Seoul, Singapore, Sydney, Tokyo, Toronto, Washington DC. Any other city works with its numeric TripAdvisor geo ID.
Is a proxy required? Yes — a residential proxy is required. TripAdvisor blocks datacenter IPs. Occasional runs may still land on a status: error row after retries; re-run those.
What export formats are available? JSON, CSV, Excel, HTML table, RSS, or the Apify dataset API.
Is scraping TripAdvisor legal? The Actor accesses only publicly available data shown to anonymous visitors. You are responsible for compliant use under TripAdvisor's terms and the laws that apply to you. Not affiliated with TripAdvisor.
My other travel scrapers on Apify
| Actor | What it does |
|---|---|
| TripAdvisor Review Scraper | Full guest reviews and sub-ratings from TripAdvisor |
| Booking.com Listings Scraper | Hotel prices, ratings, and room types from Booking.com |
| Booking.com Review Scraper | Guest review text and scores from Booking.com |
| Expedia Hotel Scraper | Hotel listings and per-room rates from Expedia |
| Expedia Review Scraper | Traveler reviews and sentiment from Expedia |
| Agoda Hotel Scraper | Hotel details and live city pricing from Agoda |
| Agoda Review Scraper | Guest reviews and stay details from Agoda |
| Trip.com Hotel Scraper | Hotel prices, ratings, and best room rate from Trip.com |
| Trip.com Review Scraper | Guest reviews and stay details from Trip.com |
| Google Hotels Scraper | Hotel prices, ratings, and coordinates from Google Hotels |
| Airbnb Search Scraper | Listings, prices, and hosts from Airbnb search |
| Airbnb Room Reviews Scraper | Reviews, ratings, and host replies from Airbnb listings |
| Airbnb & Vrbo Revenue and Occupancy Estimator | Estimated revenue and occupancy for short-term rentals |

Independent tool, not affiliated with or endorsed by TripAdvisor. Accesses only publicly available data. Report bugs or request features on the Issues tab.