Blog/Commerce and pricing
5 min read

How to Get Booking.com Hotel Reviews Through an API

Pull every guest review of a Booking.com hotel as rows with score, stay date, room type and traveler type, then read them by segment and by year.

How to Get Booking.com Hotel Reviews Through an API

Get every guest review of a Booking.com hotel as a table you can query. Paste this into your agent:

Set up https://monid.ai/SKILL.md, and then use Monid to pull every guest review of the Booking.com hotel page https://www.booking.com/hotel/us/the-new-yorker1.html with mrscraper /booking/reviews. Summarise review_score by traveler_type and by year of review_date, and list the share of reviews with a negative_comment. Leave reviewer names out of the summary.

One prompt pulls the whole review history. 1 min setup · 10-20 hrs saved.

If you manage revenue or reputation for a hotel, Booking.com is where a large share of your guests leave their verdict. The hotel page we used for this guide reports 14,810 reviews. The page shows them a screen at a time, and the filters it offers are the ones Booking chose, not the cut you need.

The usual routes do not get you the rows. Booking.com's developer portal lists four API programmes, Demand, Connectivity, Metasearch Connect and Data Portability, and all four are for partners, properties or users moving their own data. A scraper you write yourself has to page through the review widget and survive the next redesign. A reputation tool gives you a dashboard and keeps the data.

This guide ends with the full review set as rows, 11 fields each, plus summary tables by traveler type and by year. It runs through Monid, the OpenRouter for agent tools: one key, one balance, every tool priced per call. MrScraper, whose endpoint does the work, is a content partner on this guide; the measurements are ours. Here is the finished product from one call on September 23, 2026.

MeasurementValue
Reviews the Booking.com page reported14,810
Rows returned14,810
Fields per row11
Oldest and newest review date2023-09-24 to 2026-09-24
Mean review score (0 to 10)7.7
Response size6.5 MB
Wall time83 seconds
Charge, Verified 2026-10-26$0.036

Why Booking.com reviews matter before you change a rate

A rate change lands on top of whatever guests already believe about the property, and on Booking.com that belief is public. The review score sits next to the price on every search result, so a low score makes a discount look like an apology and a high score makes a premium look earned.

The score alone hides the parts you can act on. A family that scored the stay 10 and a solo traveler who scored it 4 may have slept in the same room type on the same week. You only find that out with every review as a row, with the stay date, room type and traveler type attached, and then you can ask which segment is slipping before the average does.

That is why the deliverable here is a table, not a number. Once the table exists you can rerun it weekly, compare it with your competitor set, and see the effect of a change in the rows that arrived after it.

The 4 ways to get Booking.com reviews

There are four routes to the rows, and only two of them hand you the data without a partner contract or a maintenance job.

Booking.com's partner APIs

The developer portal lists Demand, Connectivity, Metasearch Connect and Data Portability. They serve affiliates building a booking flow, property owners managing their listings, metasearch sites, and users moving their own data. If you already hold one of those partnerships, start there; none of them is described on the portal as a guest-review feed for a hotel you do not operate. The same partner-only answer comes up for other review sources; the Glassdoor guide walks through it for employer reviews.

Scrape the hotel page yourself

A Python script with a browser can open the reviews panel, page through it and parse the cards. The cost is the maintenance: the panel loads on demand, the markup changes, and the site blocks ordinary fetches. You pay that cost again at every redesign.

A scraping vendor, direct

MrScraper sells a Booking.com review scraper on its own token plans and documents it in its getting started docs. This is the right route when Booking reviews are your one fixed job and you want one vendor relationship.

Monid

The same MrScraper endpoint sits in the hotel tools on monid.ai/tools next to Google Hotels and TripAdvisor readers, under one key and one balance, priced per call. The agent discovers it at run time, so a Booking job and a TripAdvisor job are one line apart.

RouteHow it billsFitsLimit to account for
Monid, MrScraper's Booking reviewsPer call, one hotel page per callA hotel or a competitor set, pulled on a schedule by an agentOne hotel per call, tens of seconds each
Booking.com partner APIsPartner agreementAffiliates, properties, metasearchNot described as a review feed
Scrape it yourselfYour timeOne-off pulls you will not repeatBreaks on redesigns and blocks
MrScraper directToken plansOne fixed job, one vendorA separate account and key

How to get Booking.com reviews with Monid

Four steps: install, find the hotel page URL, run the reviews call, read the table. Monid supplies one key and one balance; an endpoint is the single operation you pick, here MrScraper's Booking review scraper.

Step 1. Install and add your key

For agents. Get an API key at app.monid.ai, then give your agent the key and this setup line. The agent quickstart explains the workflow.

set up https://monid.ai/SKILL.md

For humans. Install the CLI and save your key locally. The CLI quickstart covers the rest.

npm install -g @monid-ai/cli
monid keys add -k <your-api-key> -l main

Step 2. Find the hotel page URL

The reviews call takes the hotel's Booking.com page URL and nothing else, so the only input you need is that address. If you have the hotel name but not the URL, a Google search through MrScraper returns it as structured rows. We ran this one on October 26, 2026.

monid run -p mrscraper -e /serp/google \
  -i '{"query":"the new yorker a wyndham hotel booking.com","region":"us","language":"en"}' \
  -w -j

It returned 9 organic results in about 20 seconds; the first was https://www.booking.com/hotel/us/the-new-yorker1.html. The search card on the MrScraper page lists $0.001 per call, Verified 2026-10-26.

MrScraper's Google search card, $0.001 per call, Verified 2026-10-26.
MrScraper's Google search card, $0.001 per call, Verified 2026-10-26.

Step 3. Run the reviews call

Send the hotel URL to the Booking reviews endpoint. Set a small test first only if you have several hotels; the call itself takes no limit, because it returns the whole review set.

monid run -p mrscraper -e /booking/reviews \
  -i '{"url":"https://www.booking.com/hotel/us/the-new-yorker1.html"}' \
  -w -j

On September 23, 2026 this call completed in 83 seconds with HTTP 200 and 14,810 rows, the number the page itself reported, in a 6.5 MB response. Large responses arrive as a downloadable JSON artifact rather than inline, so save the run.

The Booking Hotel Reviews card on the hotels page: $0.036 per call, Verified 2026-10-26.
The Booking Hotel Reviews card on the hotels page: $0.036 per call, Verified 2026-10-26.

Step 4. Read and export the table

Retrieve the completed run and keep the raw file next to whatever you derive from it. The Google Maps fees guide keeps the same habit, reading the completed run's units and charge beside its output.

monid runs get -r <run-id> -o booking-reviews.json

Every row carries the same 11 keys: reviewer_name, reviewer_country, room_type, stay_duration, stay_date, traveler_type, review_date, review_title, review_score, positive_comment, negative_comment. Drop reviewer_name before the table leaves your machine; the analysis below never needed it.

How do you read the results?

Read the table as segments and as time, because that is where the average hides things. Everything below is computed from the 14,810 rows of the September 23 run; the reviewer names were not used.

By traveler type

Traveler typeReviewsMean scoreShare with a negative comment
Family4,9787.7955%
Couple4,9457.6752%
Solo traveler2,8517.6448%
Group2,0367.6849%

Families score the hotel highest and still complain most often. That is the editorial read, and it is the kind of split a page average cannot show: the segment with the best score is also the one writing the most negative comments, so a fix aimed at families would reach the largest group of complainers without lowering the score you are proudest of.

By year

Year of reviewReviewsWhat it tells you
2023 (from September)1,572The set starts here, three years back
20244,551A full year
20254,799A full year
2026 (to September)3,888Current pace matches 2025

The last 90 days before the run hold 1,200 reviews at a mean of 7.88, above the all-time 7.7. A reputation tool shows you the trend line; the rows let you ask which room types moved it.

By score and by text

38.1% of the reviews score 9 or 10 and 13.6% score 5 or below. 8,816 rows carry a positive comment, 7,675 carry a negative one, and 8,664 have no title at all, so any sentiment pass should read the two comment fields and treat the title as optional. Room type has 8 distinct values and reviewer country 155, with the United States first at 3,078 rows. Those are the two columns worth a filter in whatever you build next, whether that is a weekly sentiment pass or a competitor-set comparison.

How much does it cost?

The Booking reviews call is $0.036 per call, Verified 2026-10-26 against the hotel tools page, and one call is one hotel page with its whole review set. Our 14,810-row pull was one call and one charge.

Two billing rules matter more than the figure. First, the price is per call, not per review, so a hotel with 300 reviews and a hotel with 14,810 cost the same. Second, MrScraper's listing on Monid states that failed and empty runs are not charged, and we saw that rule applied: on the same day two sibling endpoints, Trip.com reviews and Agoda reviews, returned nothing and billed nothing. Discovery and inspection are free, so an agent can look up the endpoint and read its schema on every task without spending anything.

The MrScraper provider page on Monid: 50 endpoints, fixed price per site scraper, failed and empty runs not charged.
The MrScraper provider page on Monid: 50 endpoints, fixed price per site scraper, failed and empty runs not charged.

How do you do this in your own code?

Loop over hotel URLs, submit one call per hotel, store the run id, and retrieve each result when it completes. The reviews call takes tens of seconds, so submit and poll rather than waiting inline when you have a list.

monid run -p mrscraper -e /booking/reviews -i '{"url":"<hotel-page-url>"}' -j
monid runs get -r <run-id> -o <hotel>.json

Three habits keep the output usable. Key each hotel's file by its page URL, not its name, because the name changes on the page and the URL does not. Keep the raw JSON and build your tables from it, so a new question does not mean a new call. And dedupe on the pair of review date and the two comment fields when you merge weekly pulls, since the call returns the full history every time rather than a delta.

Which endpoint for which job?

Use caseBest endpointWhy?
Every review of one Booking.com hotelmrscraper /booking/reviewsTested 2026-09-23, 14,810 rows in one call; $0.036 per call, Verified 2026-10-26
Find the hotel page URL from a namemrscraper /serp/googleTested 2026-10-26, structured organic rows; $0.001 per call, Verified 2026-10-26
Reviews of a Google Hotels propertyserpapi /google/hotels-reviewsInspect-only; takes a property token, paginated, billed per successful search; $0.015 per call, Verified 2026-10-26
Reviews of a TripAdvisor placelitescrape /tripadvisor/reviewsInspect-only; place id, 1 to 50 per page, recent or relevance order; $0.00015 per call, Verified 2026-10-26

If the properties you track are restaurants, clinics or shops rather than hotels, the Google Maps scraper alternatives guide covers the review readers for local businesses in the same shape.

When should you use something else?

Use Booking.com's partner programmes if you qualify for one. A property owner on Connectivity or an affiliate on Demand already has a contractual route to Booking data, and that route is the one Booking supports.

Use MrScraper directly if Booking reviews are your only job and you want a single vendor account. You are reading the Monid blog, and Monid resells access to that same endpoint; the test here shows what it returns, not that one route is cheaper than the other.

Two limits are ours to state. The call reads one hotel per request and took 83 seconds, so a 200-hotel competitor set is 200 calls run in the background, not one. And the reviews call was not re-run for this guide on October 26; the table comes from the September 23 run, and the price was verified today. If your reviews live on TripAdvisor instead, the TripAdvisor guide pulls hotels, ratings and reviews for a whole city in the same shape, and the Google Hotels reader in the table above covers the third source.

Conclusion

You now have a repeatable call that turns a Booking.com hotel page into every guest review as a row, and the summary tables that show which segment and which year moved the score. Run it on a schedule through Monid, key the files by URL, and the next rate change can be judged against the reviews that arrived after it. The 10 to 20 hours saved is our estimate for writing and then maintaining a paginated review scraper for one site that blocks plain fetches; the setup line is a one-minute target from key to first call. What you keep is the ability to answer "which guests are slipping" with rows instead of a score.

FAQ

Is there an official Booking.com API for reviews?

Booking.com's developer portal lists Demand, Connectivity, Metasearch Connect and Data Portability programmes for partners, properties and users; none is described there as a guest-review feed for a hotel you do not operate.

Do I need to write code?

No. The pitch prompt at the top does the whole job from your agent; the CLI commands are there for developers who want the raw file.

How many reviews does one call return?

The whole review set of the hotel page. Our one call returned 14,810 rows, the number the page reported.

How much does a Booking.com reviews call cost?

$0.036 per call, Verified 2026-10-26, one hotel page per call regardless of how many reviews it holds.

Are failed or empty calls billed?

No. MrScraper's listing on Monid states that failed and empty runs are not charged, and two empty sibling calls on 2026-09-23 billed nothing.

Can I run this for a list of hotels on a schedule?

Yes. Submit one call per hotel URL, store the run ids, and retrieve each result when it completes; each call takes tens of seconds.

Is it legal to collect Booking.com reviews?

Rules differ by region and by what you do with the data; check the requirements that apply to you before relying on it.

Published October 2026.

booking.com apibooking.com reviews apihotel reviewsmrscrapertravel data api