Booking.com Scraper
Pricing
from $0.97 / 1,000 scraped results
Booking.com Scraper
Extracts hotel listings, prices, availability calendars, and guest reviews from Booking.com for any destination and stay dates.
Pricing
from $0.97 / 1,000 scraped results
Rating
0.0
(0)
Developer
Scraptivo
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
Booking.com Scraper collects hotel listings from Booking.com and turns them into structured data for price monitoring, market research, and travel lead generation. Provide a destination such as "Berlin, Germany" together with check-in and check-out dates, run the Actor, and export hotel name, price, review score, address, coordinates, and more to JSON, CSV, Excel, or your preferred integration. Optionally enrich each hotel with facilities, year-round availability calendars, and guest reviews. From just $1 per 1,000 hotels.
What can you automate with Booking.com Scraper?
- Build hotel lead lists — export hotel name, address, coordinates, and booking URL for any destination.
- Monitor room pricing — capture nightly prices for your stay dates and compare across properties.
- Track availability — pull a year-round calendar with daily prices for each hotel.
- Collect guest feedback — gather review scores and review text at scale.
- Schedule recurring collection — refresh destination data weekly or daily without manual work.
Who is this scraper for?
| Team | Workflow |
|---|---|
| Travel agencies | Build destination catalogs and compare hotel pricing for clients. |
| Revenue managers | Monitor competitor rates and availability over time. |
| Market researchers | Analyze hotel supply, pricing, and ratings by city. |
| OTA and booking platforms | Enrich listings with structured hotel data. |
What data can you collect from Booking.com?
| Data group | Example fields | How it helps |
|---|---|---|
| Property identity | name, hotelId, url, pageName, countryCode | Identify and link each hotel. |
| Location | address, city, latitude, longitude | Map properties and segment by area. |
| Pricing | price, priceRounded, currency | Compare rates for the selected stay. |
| Reputation | reviewScore, reviewCount, reviewScoreText | Filter by guest rating. |
| Enrichment | facilities, houseRules, surroundings, faq | Optional detail when hotel details are enabled. |
| Availability & reviews | availability, guestReviews | Optional year-round calendar and guest reviews. |
How to use Booking.com Scraper
- Open the Actor and go to the Input tab.
- Enter a destination in Search Queries, e.g.
Berlin, Germany. - Set Check-in and Check-out dates and the number of guests.
- Choose a Max Items limit and any optional detail toggles.
- Run the Actor, then export the dataset as JSON, CSV, or Excel.
{"searchQueries": ["Berlin, Germany"],"checkIn": "2026-09-01","checkOut": "2026-09-03","adults": 2,"rooms": 1,"maxItems": 20,"hotelDetails": true,"currency": "EUR","lang": "en-gb"}
Example workflow
Build a monthly list of top-rated Berlin hotels
- Run one Berlin search for your target month every week.
- Keep only hotels above your required
reviewScoreandpricerange. - Send new records to Google Sheets or a CRM.
- Deduplicate using the stable
hotelIdorurl.
Automate and integrate your results
You can schedule the Actor from the Apify Console or via API to run daily or weekly. After a successful run, trigger a webhook to push the dataset to Google Sheets, Make, Zapier, Slack, or a database. Use the stable hotelId or url as your deduplication key.
Input reference
| Field | Type | Required | Default | What it controls |
|---|---|---|---|---|
searchQueries | array | No | ["Berlin, Germany"] | Destinations to search. |
startUrls | array | No | — | Direct Booking.com search or hotel URLs. |
checkIn / checkOut | string | No | — | Stay dates (YYYY-MM-DD). |
adults / rooms / children | integer | No | — | Occupancy for pricing. |
childrenAges | array | No | — | Ages of children. |
maxItems | integer | No | — | Max hotels to return (0 = unlimited). |
hotelDetails | boolean | No | false | Add facilities, house rules, surroundings, FAQ. |
scrapeAvailability | boolean | No | false | Add the year-round availability calendar. |
scrapeReviews | boolean | No | false | Add guest reviews. |
maxReviews | integer | No | 10 | Max reviews per hotel when enabled. |
lang | string | No | — | Result language (en-us, de, fr, …). |
currency | string | No | — | Preferred price currency. |
Output example
{"hotelId": 123456,"name": "Hotel Berlin Central","url": "https://www.booking.com/hotel/de/berlin-central.html","countryCode": "de","city": "Berlin","address": "Example Street 1, Mitte, Berlin","reviewScore": 8.7,"reviewCount": 1240,"reviewScoreText": "Excellent","price": 118,"currency": "EUR","latitude": 52.520008,"longitude": 13.404954,"imageUrl": "https://cf.bstatic.com/xdata/images/hotel/example.jpg"}
How much does it cost to scrape Booking.com?
Billing is pay-per-event. You are charged $1 per 1,000 hotels for search-result records (dataset-item). Optional extras are billed only when enabled: hotel details and reviews each at $1 per 1,000, and availability calendars at $0.10 per 1,000. A one-time Actor Start fee of $0.00005 applies per run. Apify plan discounts reduce these prices further.
Reliability and responsible use
The Actor uses residential proxies by default, which you can adjust in the input. Search-result fields such as reviewScore and price are available at the search level, while facilities, availability, and guestReviews are returned only when their toggles are enabled. Prices depend on the exact stay dates and occupancy you provide. Use the Actor only for lawful purposes and respect Booking.com's terms of service.
Frequently asked questions
Can I scrape hotels for any destination?
Yes. Enter a destination string like Paris or New York, USA, and the Actor resolves it to Booking.com results for that location.
Can I schedule Booking.com Scraper to run automatically?
Yes. Use the Apify Scheduler to run daily or weekly and refresh pricing and availability on a set cadence.
What counts as one result?
One result is one hotel added to the dataset (dataset-item). Optional hotel details, reviews, and availability calendars are separate events.
Why are some fields empty?
Optional fields such as facilities, availability, and guestReviews appear only when the corresponding toggle is enabled. Individual hotels may also omit fields that are not present on their listing.
How do I avoid duplicate records?
Deduplicate on the stable hotelId or the hotel url, which are unique per property.
Do I need a proxy?
Residential proxies are enabled by default and recommended for reliable access to Booking.com.
Related Scraptivo automations
- Airbnb Scraper — short-term rental listings and pricing.
- Tripadvisor Reviews Scraper — guest reviews for hotels, restaurants, and attractions.
- OpenTable Scraper — restaurant availability and reservation data.
Support and custom workflows
Need a different field, source, or delivery workflow? Contact Scraptivo at scraptivo@gmail.com. Include the Actor name, a sample destination and dates, required fields, and expected volume so we can assess the request.