Scrapers.lat logo scrapers.lat
Ecommerce

Booking.com Hotel Reviews Scraper

Scrape Booking.com hotel guest reviews by property URL or name. Get reviewer, country, score, positive and negative text, room and traveler type, plus the property score and category breakdown.

27 fields per record JSON · CSV · Excel · API Pay per use
booking-reviews-scraper.json 200 OK
{
  "imageUrl": "https://xx.bstatic.com/static/img/review/avata…",
  "hotelName": "The Manhattan Club",
  "hotelUrl": "https://www.booking.com/hotel/us/the-manhattan…",
  "hotelId": 241699,
  "reviewScore": 10,
  "reviewTitle": "Awesome experience! I would highly recommend s…",
  "positiveText": "The Manhattan Club is a great location. Litera…",
  "negativeText": "Loved The Manhattan Club, everyone was nice, h…",
  "reviewerName": "Karen"
}
What you get

Every run returns clean, typed records, ready for your CRM, spreadsheet or database.

  • One clean record per result, deduped and normalized
  • Stable schema in JSON, CSV or Excel, or read it via the Apify API
  • Pay per use in the cloud, nothing to install or maintain
Fields it returns
Image UrlHotel NameHotel UrlHotel IdReview ScoreReview TitlePositive TextNegative TextReviewer NameReviewer Country CodeIs AnonymousTraveler TypeTrip TypeRoom Type
Sample output

A real example record, exactly the shape you receive.

Image UrlHotel NameHotel UrlHotel Id
https://xx.bstatic.com/static/img…The Manhattan Clubhttps://www.booking.com/hotel/us/…241699
https://xx.bstatic.com/static/img…The Manhattan Clubhttps://www.booking.com/hotel/us/…241699
https://lh3.googleusercontent.com…The Manhattan Clubhttps://www.booking.com/hotel/us/…241699
https://lh5.googleusercontent.com…The Manhattan Clubhttps://www.booking.com/hotel/us/…241699
https://xx.bstatic.com/static/img…The Manhattan Clubhttps://www.booking.com/hotel/us/…241699
GET /booking-reviews-scraper
{
  "imageUrl": "https://xx.bstatic.com/static/img/review/avata…",
  "hotelName": "The Manhattan Club",
  "hotelUrl": "https://www.booking.com/hotel/us/the-manhattan…",
  "hotelId": 241699,
  "reviewScore": 10,
  "reviewTitle": "Awesome experience! I would highly recommend s…",
  "positiveText": "The Manhattan Club is a great location. Litera…",
  "negativeText": "Loved The Manhattan Club, everyone was nice, h…",
  "reviewerName": "Karen"
}

Frequently asked questions

Which hotels and countries does it cover?

Any property listed on Booking.com, anywhere in the world. Point the scraper at a hotel by pasting its Booking.com URL, or type the hotel name and city and it finds the best matching property automatically.

How many reviews can I get per hotel?

The scraper returns the property's most relevant guest reviews along with the full aggregate score and the seven category ratings. Use maxReviews to cap how many reviews you want per property, and sortBy to order them by most relevant, newest, highest or lowest score.

Can I filter reviews by language?

Yes. Set reviewLanguage to a code like en, es or pt to keep only reviews written in that language. Booking does not tag a language on every review, so this filter applies to the reviews that carry one.

What input does it accept?

Provide one or more Booking.com hotel URLs, one or more "hotel name plus city" search terms, or both in the same run. Every property found is scraped and its reviews streamed to your dataset as they are collected.

What happens when a property has no reviews or cannot be loaded?

The scraper writes a small record with an error note and the source URL instead of failing the whole run, and it never charges for a property that returned no review. Fields that a given review does not include, such as a disliked comment or a headline, are left empty rather than guessed.

Ready when you are.

Run the scraper live on Apify right now, or have us build one tailored to exactly what you need.