Booking.com Reviews Scraper avatar

Booking.com Reviews Scraper

Pricing

from $23.99 / 1,000 result items

Go to Apify Store
Booking.com Reviews Scraper

Booking.com Reviews Scraper

Scrapes Booking.com guest reviews from hotel URLs and returns each review as a flat row with score, title, body text, reviewer country, stay date, and photo URLs.

Pricing

from $23.99 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

1

Bookmarked

11

Total users

2

Monthly active users

6 days ago

Last modified

Share

ParseForge

Booking.com Reviews Scraper

Scrape Booking.com hotel reviews from any property URL, up to a million per run. Each review comes with the score, title, full text, reviewer country, stay date, and photos. No login or API key. Export to CSV, JSON, Excel, or XML.

Booking.com does not offer a public API for guest reviews, so collecting them at scale means manual copy-paste or brittle custom scripts. This Actor reads the public review pages directly, filters by score, date, reviewer country, or photo presence, and returns every match in one consistent flat schema. It handles pagination, language selection, and hotel-to-review URL conversion automatically.

Who uses itWhat they scrape Booking.com for
Hotel revenue managersMonitor guest sentiment and recurring complaints across their own properties.
Market researchersCompare review scores and keywords for competing hotels in a destination.
Data analystsBuild a dataset of verified stay reviews for sentiment analysis or pricing models.
Travel bloggersGather real guest opinions to support hotel roundups and destination guides.

What it does

This Actor collects Booking.com guest reviews from one or more hotel URLs and returns each review as a flat row with the score, title, body text, reviewer country, stay date, and photo URLs.

  • ๐Ÿ“Š Score filters: collect only Superb (9-10), Good (7-8.9), Average (5-6.9), or Poor (0-4.9) reviews, or set a custom minimum score.
  • ๐Ÿ“ธ Photo filter: restrict the run to reviews that include guest photos.
  • ๐ŸŒ Reviewer country filter: keep only reviews where the reviewer country contains a given string, like 'United'.
  • ๐Ÿ“… Date cutoff: stop collecting when reviews older than a chosen date appear, so you only get recent feedback.
  • ๐Ÿ”ข Per-hotel cap: set a maximum number of reviews to collect from each hotel URL in a single run.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Booking.com data

๐Ÿ“ˆ Monitor guest satisfaction.

A hotel revenue manager runs the Actor weekly on their property URL with a recent cutoff date to track score trends and spot new complaints in the review text.

๐Ÿจ Benchmark competing hotels.

A market researcher feeds in URLs for five rival hotels in the same city, filters to the last six months, and compares average scores and keyword frequency.

๐Ÿง  Train a sentiment model.

A data scientist collects 100,000 reviews across multiple score brackets, exports the body text and score to CSV, and uses it as labeled training data.

โœ๏ธ Write a data-backed travel guide.

A travel blogger scrapes reviews for a shortlist of hotels, filters for reviews with photos, and quotes real guest experiences in a 'best of' article.

Why choose this scraper

What you get
No official APIBooking.com does not provide a public reviews API; this Actor reads the live site for you.
Fixed flat schemaEvery review lands as one row with the same columns, ready for analysis or a database.
Built-in filtersFilter by score, date, reviewer country, and photo presence without post-processing.
Language supportRequest review pages in any language Booking.com supports, like en-gb, es, fr, or de.

How it compares

No other Store actor targets Booking.com the same way, so the honest comparison is with the alternatives teams actually weigh.

Booking.com Reviews ScraperBuild it in-houseBy hand
SetupRun it now, zero configDays of engineeringNone, but hours per pull
When Booking.com changesMaintained for youYou fix itYou re-learn the page
Proxies, retries, anti-botBuilt inYour problemBrowser only
OutputFixed JSON schema, CSV/Excel exportWhatever you buildCopy-paste
CostPay per resultEngineering timeAnalyst hours

Configure the run

Drive the Actor from one or more Booking.com hotel or reviews page URLs, and filters run as each review is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
"startUrls": [
{
"url": "https://www.booking.com/reviews/us/hotel/the-plaza.en-gb.html"
}
],
"maxItems": 10
}

Only the popular results:

{
"startUrls": [
{
"url": "https://www.booking.com/reviews/us/hotel/the-plaza.en-gb.html"
}
],
"maxItems": 200,
"minScore": 10
}

Pricing

Pay-per-result: $0.03199 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$3.20
1,000 results$31.99
10,000 results$319.90

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Booking.com Reviews Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Booking.com through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/booking-com-reviews-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that your start URLs point to real Booking.com hotel or reviews pages. Also check your filters: a very tight score range, a recent cutoff date, or a strict reviewer country string can exclude all reviews.

The Actor stops after only a few reviews.

Make sure maxItems and maxReviewsPerHotel are set high enough. If you are using a cutoffDate, the Actor stops as soon as it sees a review older than that date, which can happen early on the first page.

I am getting reviews in the wrong language.

Set the Language input field to the locale code you want, such as 'fr' for French or 'de' for German. The Actor requests the review page in that language.

The run is taking a long time.

Large maxItems values and many hotel URLs will increase run time. Try lowering maxItems or maxReviewsPerHotel, or use a cutoffDate to limit the pages the Actor must visit.

Some reviews are missing the reviewer country.

Booking.com does not always show the reviewer's country. If a review does not display it on the site, the field will be empty in your dataset.

FAQ

QuestionAnswer
Can I scrape reviews from multiple hotels in one run?Yes. Add as many hotel or reviews page URLs as you need to the startUrls field. The Actor processes them one after another.
Does this Actor require a Booking.com login?No. It reads the public review pages that anyone can see in a browser. No account, password, or API key is needed.
What format are the dates in?The stay date and review date are returned as strings in the format shown on Booking.com. You can set a cutoff date in YYYY-MM-DD format to stop collecting older reviews.
Can I get only reviews that include photos?Yes. Enable the 'Only Reviews With Photos' checkbox and the Actor will skip any review that does not have guest photos attached.
How do I filter reviews by score?Use the Review Scores Filter to pick a band like 'Superb (9-10)', or set a custom minimum score with the Minimum Score field. Both filters can be combined.
What does the reviewer country filter do?It keeps only reviews where the reviewer's country contains the text you enter. For example, typing 'United' will match 'United States' and 'United Kingdom'.
How many reviews can I collect in one run?You can set the maximum up to 1,000,000 reviews. You can also cap the number of reviews per hotel with the Max Reviews Per Hotel field.
Can I choose the language of the review page?Yes. Set the Language field to a Booking.com locale code like en-gb, en-us, es, fr, or de. This changes the page chrome and any translated review text.
Does the Actor handle pagination automatically?Yes. It follows the 'next page' links on the reviews page until it hits your maxItems, maxReviewsPerHotel, or cutoffDate limit.
Can I export the data to Excel?Yes. After the run finishes, you can download the dataset as CSV, JSON, Excel, or XML directly from the Apify storage tab.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Booking.com B.V. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.