Booking.com Hotel Scraper - Prices, Reviews & Availability avatar

Booking.com Hotel Scraper - Prices, Reviews & Availability

Pricing

from $3.00 / 1,000 hotel scrapeds

Go to Apify Store
Booking.com Hotel Scraper - Prices, Reviews & Availability

Booking.com Hotel Scraper - Prices, Reviews & Availability

Collect public Booking.com hotel and accommodation listing data including prices, ratings, review counts, cancellation options, amenities, and property URLs.

Pricing

from $3.00 / 1,000 hotel scrapeds

Rating

0.0

(0)

Developer

Md Jakaria Mirza

Md Jakaria Mirza

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Scrape Booking.com hotel and accommodation search results for travel market research, price monitoring, and competitor analysis. The actor searches one or more destinations for a date range, extracts clean property records, deduplicates by Booking.com property ID, and saves the results to an Apify Dataset. Export to JSON, CSV, Excel, or HTML, or pull via the Apify API — no login and no API key required.

Each clean hotel record is charged with the hotel-scraped pay-per-event event after it is saved. The actor skips incomplete cards that do not expose a property name and Booking.com hotel URL, so the dataset avoids empty placeholder rows.

Features

  • Multiple destinations in one run
  • Check-in and check-out date search
  • Adults, rooms, currency, review score, and property type inputs
  • Pagination up to 500 properties per destination
  • Residential proxy support for Apify cloud runs
  • Random delays, session pool, and retry handling
  • Null fallbacks for fields that Booking.com does not expose on every search card

Data Extracted

FieldDescription
propertyIdBooking.com hotel slug or property ID
hotelNameProperty name
propertyTypeHotel, apartment, hostel, villa, resort, B&B, or guest house when exposed
starRatingStar rating when exposed
guestReviewScoreGuest review score from 0 to 10
reviewCountNumber of reviews
totalPriceTotal stay price for the searched dates
pricePerNightCalculated or exposed nightly price
originalPriceOriginal price before discount when exposed
discountPercentageDiscount percentage when calculable
currencyRequested currency
breakfastIncludedBreakfast signal from the card
freeCancellationFree cancellation signal from the card
roomsAvailableRooms available when exposed
amenitiesAmenities/facilities exposed on the card
city / countryParsed from destination input
distanceFromCityCenterDistance text from Booking.com
addressAddress when exposed
propertyUrlClean direct Booking.com hotel URL
thumbnailImageUrlProperty thumbnail image URL
latitude / longitudeCoordinates when exposed
sustainabilityBadgeSustainability badge signal
geniusDiscountGenius discount signal
scrapedAtISO timestamp

Use Cases

  1. Hotel price monitoring across cities and dates
  2. Travel app and comparison-site data enrichment
  3. Hospitality competitor research
  4. Market research by review score, price, and destination
  5. Accommodation data collection for travel market research

How to Scrape Booking.com Hotels (Step by Step)

  1. Click Try for free / Run.
  2. Enter one or more destinations (e.g. Paris, France) and your checkIn / checkOut dates.
  3. Set adults, rooms, currency, and maxResults (start small to test).
  4. Optionally filter by propertyTypes and minReviewScore, then click Run.
  5. When the run finishes, export results to JSON, CSV, Excel, or HTML, or pull them via the Apify API.

Sample Output

{
"propertyId": "monsieur-george-amp-spa-champs-elysees",
"hotelName": "Monsieur George Hotel & Spa - Champs-Elysees",
"propertyType": null,
"starRating": null,
"guestReviewScore": 9,
"reviewCount": 882,
"reviewCategories": {
"location": 8,
"cleanliness": null,
"comfort": null,
"facilities": null
},
"city": "Paris",
"country": "France",
"distanceFromCityCenter": "4 km from downtown",
"totalPrice": 1078,
"pricePerNight": 539,
"currency": "USD",
"breakfastIncluded": false,
"freeCancellation": false,
"propertyUrl": "https://www.booking.com/hotel/fr/monsieur-george-amp-spa-champs-elysees.html",
"thumbnailImageUrl": "https://cf.bstatic.com/xdata/images/hotel/square240/example.webp",
"destination": "Paris, France",
"scrapedAt": "2026-06-11T15:48:29.877Z"
}

Input Example

{
"destinations": ["Paris, France"],
"checkIn": "2026-07-01",
"checkOut": "2026-07-03",
"adults": 2,
"rooms": 1,
"propertyTypes": ["Hotels", "Apartments"],
"minReviewScore": 7,
"maxResults": 50,
"currency": "USD",
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Pricing

EventPrice
hotel-scraped$0.003 per clean hotel record
1,000 hotels$3.00
10,000 hotels$30.00

Technical Details

  • Runtime: Node.js 20 on apify/actor-node-playwright-chrome:20
  • Scraping engine: Crawlee PlaywrightCrawler
  • Proxy: Apify residential proxy recommended for cloud runs
  • Retry policy: 3 retries with blocked-request retry handling
  • Storage: Apify Dataset
  • Charge model: Actor.charge({ eventName: "hotel-scraped" })

Notes

  • Booking.com can vary card fields by market, destination, availability, and experiment. Unavailable fields are returned as null.
  • The default Apify table view focuses on populated search-result fields and hides optional columns that are often unavailable on Booking.com cards. Raw JSON still includes those fields.
  • This actor collects search result card data, not every detail available on individual hotel detail pages.
  • Data is for research and business intelligence, not booking, legal, or financial advice.

Responsible Use

This Actor is intended for lawful collection of publicly available information only. Users are responsible for ensuring their use complies with the source website's terms, robots.txt, applicable privacy laws, including India's DPDP Act, and all local regulations.

Do not use this Actor to collect, store, sell, or misuse personal data without a lawful basis. The Actor author is not responsible for misuse by end users.