Booking Reviews Scraper
Pricing
from $1.66 / 1,000 review saveds
Booking Reviews Scraper
Export public Booking.com guest reviews with ratings, dates, room details, traveler type, reviewer country, positives, negatives, and replies.
Pricing
from $1.66 / 1,000 review saveds
Rating
0.0
(0)
Developer
Hanna Nosova
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Export public Booking.com guest reviews from hotel and destination review pages to CSV, JSON, Excel, or API workflows.
Use this Actor to monitor hotel reputation, analyze guest feedback, compare traveler sentiment, or feed public Booking.com reviews into BI and support workflows.
Who is it for?
- Hotel operators tracking guest satisfaction and recurring issues.
- Travel reputation teams exporting public guest feedback for reporting.
- OTAs, tourism researchers, and analysts comparing review signals by property or market.
- Automation teams feeding Booking.com review datasets into dashboards, alerts, or LLM workflows.
Input recipes
- Smoke test: one Booking.com hotel URL,
maxReviews: 10. - Hotel monitoring: add one or more public Booking.com hotel pages and schedule repeat runs.
- Destination research: add public Booking.com review pages for a city or market and cap saved reviews.
Example input
{"startUrls": [{ "url": "https://www.booking.com/hotel/us/the-new-yorker.html" }],"maxReviews": 10,"sort": "source","language": "en-US","proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Example output
{"hotelUrl": "https://www.booking.com/hotel/us/the-new-yorker.html","hotelName": "The New Yorker, Whitefish (updated prices 2026)","reviewId": "https://www.booking.com/hotel/us/the-new-yorker.html#review-1","reviewTitle": null,"reviewText": "Guest review text from Booking.com...","score": 9.0,"reviewerName": null,"reviewerCountry": null,"scrapedAt": "2026-07-12T08:30:00.000Z"}
What data can you extract?
| Field | Description |
|---|---|
hotelUrl | Source Booking.com hotel or review URL. |
hotelName | Hotel or page title found on Booking.com. |
reviewId | Stable review row identifier when available or generated from the source URL. |
reviewUrl | Direct review URL when available. |
reviewTitle | Review title when visible. |
reviewText | Combined public guest review text. |
positiveText | Positive part of the review when Booking.com separates it. |
negativeText | Negative part of the review when Booking.com separates it. |
score | Review score when visible. |
maxScore | Maximum score scale, usually 10. |
reviewDate | Date the review was published. |
stayDate | Stay month/date shown by Booking.com. |
roomType | Room type mentioned on the review. |
travelerType | Traveler type or trip context. |
reviewerName | Reviewer name when visible. |
reviewerCountry | Reviewer country when visible. |
language | Locale hint used for the run. |
hotelReply | Hotel response when visible. |
scrapedAt | ISO timestamp when the review was saved. |
Input configuration
| Setting | JSON key | Use it for | Example |
|---|---|---|---|
| Booking.com URLs | startUrls | Public hotel or review pages to scrape. | [{"url":"https://www.booking.com/hotel/us/the-new-yorker.html"}] |
| Maximum reviews | maxReviews | Cap saved reviews and control spend. | 10 |
| Sort order | sort | Prefer source default, recent, or score-based ordering when available. | source |
| Language / locale | language | Locale hint for Booking.com review pages. | en-US |
| Proxy configuration | proxyConfiguration | Use Apify Proxy; residential is recommended for Booking.com. | {"useApifyProxy":true,"apifyProxyGroups":["RESIDENTIAL"]} |
Pricing
| Tier | Run start | Review saved |
|---|---|---|
| Free | $0.010 | $0.00318 |
| Bronze | $0.010 | $0.00276 |
| Silver | $0.010 | $0.00216 |
| Gold | $0.010 | $0.00166 |
| Platinum | $0.010 | $0.00111 |
| Diamond | $0.010 | $0.00077 |
Tips and limits
- Start with
maxReviews: 10for the first run. - Use only public Booking.com pages; the Actor does not use accounts, cookies, or private credentials.
- Large runs may need residential proxy bandwidth, so scale gradually after checking output quality.
API usage
Node.js:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('fetch_cat/booking-reviews-scraper').call({startUrls: [{ url: 'https://www.booking.com/hotel/us/the-new-yorker.html' }],maxReviews: 10,});console.log(run.defaultDatasetId);
Python:
from apify_client import ApifyClientclient = ApifyClient('APIFY_TOKEN')run = client.actor('fetch_cat/booking-reviews-scraper').call(run_input={'startUrls': [{'url': 'https://www.booking.com/hotel/us/the-new-yorker.html'}],'maxReviews': 10,})print(run['defaultDatasetId'])
cURL:
curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~booking-reviews-scraper/runs?token=APIFY_TOKEN' \-H 'Content-Type: application/json' \-d '{"startUrls":[{"url":"https://www.booking.com/hotel/us/the-new-yorker.html"}],"maxReviews":10}'
MCP / agent usage
Use the Apify MCP server with ?tools=fetch_cat/booking-reviews-scraper to let agents run Booking.com review exports and retrieve datasets.
Claude CLI add command:
$claude mcp add apify-booking-reviews https://mcp.apify.com/?tools=fetch_cat/booking-reviews-scraper
JSON config block:
{"mcpServers": {"apify-booking-reviews": {"url": "https://mcp.apify.com/?tools=fetch_cat/booking-reviews-scraper"}}}
Example prompts:
- "Run Booking Reviews Scraper for this Booking.com hotel URL and summarize low-score complaints."
- "Export 25 public Booking.com reviews and return the dataset URL."
Legality and responsible use
This Actor extracts publicly available Booking.com review information. Use it responsibly, respect Booking.com terms, avoid collecting personal data you do not need, and comply with privacy laws and internal retention policies.
Related actors
FAQ
Do I need a Booking.com login? No. This Actor is designed for public pages only.
Can I export the data? Yes. Apify datasets export to CSV, JSON, Excel, XML, and API.
Why use a proxy? Booking.com may challenge direct traffic; Apify Proxy helps runs behave like normal browsing sessions.
Support
Questions or issues? Open an issue on the Actor page in Apify Console and include:
- run ID
- input JSON
- reproducible public URL
- expected output
- actual output