Booking.com Reviews avatar

Booking.com Reviews

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Booking.com Reviews

Booking.com Reviews

Scrape guest reviews from a Booking.com property page.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

shareze

shareze

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

2

Monthly active users

3 days ago

Last modified

Share

What does Booking.com Reviews do?

Booking.com Reviews is an Apify Actor that collects guest reviews for a single property on Booking.com. You provide the property page URL and how many reviews you want at most; each review is saved as one item in the default dataset, which you can open in the Apify Console or download (e.g. JSON, CSV, Excel) and use with the Apify API.

Why use this Actor?

  • Structured output — scores, guest and stay details, review text, partner replies, and photo URLs in one JSON object per review.
  • Automation — run on a schedule or from your workflows instead of copying reviews by hand.
  • Apify platform — managed runs, logs, and dataset storage in one place.

How to use Booking.com Reviews

  1. Open the Actor on Apify Console and go to the Input tab (or send input via the API).
  2. Set url to the full property URL, e.g. https://www.booking.com/hotel/sg/telegraph-singapore.html.
  3. Set size to the maximum number of reviews you want (e.g. 25).
  4. Start the run. When it finishes, open the Dataset tab or use the dataset link from the run Output.

Local run: install the Apify CLI, put input in storage/key_value_stores/default/INPUT.json, then run:

$apify run

Input

FieldTypeRequiredDescription
urlstringyesFull Booking.com property page URL (.../hotel/{country}/{slug}.html).
sizeintegeryesMaximum number of reviews to collect (minimum 1, up to 10000 in the schema).
searchTextstringnoOptional keyword to filter reviews. When not empty, it is applied as the review search text on Booking’s side. Leave empty or omit to fetch reviews without a text filter.
sortBystringnoReview order: MOST_RELEVANT (default), NEWEST_FIRST, OLDEST_FIRST, SCORE_DESC, SCORE_ASC.

Example JSON:

{
"url": "https://www.booking.com/hotel/sg/telegraph-singapore.html",
"size": 25,
"searchText": "breakfast",
"sortBy": "NEWEST_FIRST"
}

The Console form mirrors .actor/input_schema.json.

Output

The Actor writes one dataset item per review to the default dataset. You can download items as JSON, CSV, HTML, or Excel from the run page.

Example (abbreviated):

{
"reviewUrl": "https://www.booking.com/reviews/...",
"reviewScore": 9,
"reviewedDate": "2025-01-15",
"guestDetails": {
"username": "alex",
"countryCode": "us",
"anonymous": false
},
"bookingDetails": {
"checkinDate": "2025-01-10",
"checkoutDate": "2025-01-12",
"numNights": 2,
"roomType": { "id": "123", "name": "Deluxe Room" }
},
"title": "Great stay",
"adjTitle": "Wonderful",
"positiveText": "Clean and quiet.",
"negativeText": null,
"adjText": null,
"lang": "en",
"partnerReply": "Thank you for staying with us.",
"photos": ["https://..."],
"propertyUrl": "https://www.booking.com/hotel/sg/telegraph-singapore.html",
"hotelId": 9027866
}

Data fields (main)

FieldDescription
propertyUrlProperty URL from the input, copied onto each row.
hotelIdBooking.com property identifier for the hotel.
reviewUrlLink to the review on Booking.com (when present).
reviewScoreGuest score for the review.
reviewedDateReview date.
guestDetailsGuest-related fields (username, avatar, country, anonymous, etc.).
bookingDetailsStay-related fields (dates, nights, room type, stay status, etc.).
title, positiveText, negativeText, langReview text fields.
adjTitleDerived title when title is empty. Based on reviewScore (e.g. 9 -> "Wonderful").
adjTextFallback text when both positiveText and negativeText are empty: "There are no comments available for this review".
partnerReplyProperty/host reply text when present.
photosArray of image URL strings.