Booking.com Scraper avatar

Booking.com Scraper

Pricing

from $0.97 / 1,000 scraped results

Go to Apify Store
Booking.com Scraper

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

Scraptivo

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

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?

TeamWorkflow
Travel agenciesBuild destination catalogs and compare hotel pricing for clients.
Revenue managersMonitor competitor rates and availability over time.
Market researchersAnalyze hotel supply, pricing, and ratings by city.
OTA and booking platformsEnrich listings with structured hotel data.

What data can you collect from Booking.com?

Data groupExample fieldsHow it helps
Property identityname, hotelId, url, pageName, countryCodeIdentify and link each hotel.
Locationaddress, city, latitude, longitudeMap properties and segment by area.
Pricingprice, priceRounded, currencyCompare rates for the selected stay.
ReputationreviewScore, reviewCount, reviewScoreTextFilter by guest rating.
Enrichmentfacilities, houseRules, surroundings, faqOptional detail when hotel details are enabled.
Availability & reviewsavailability, guestReviewsOptional year-round calendar and guest reviews.

How to use Booking.com Scraper

  1. Open the Actor and go to the Input tab.
  2. Enter a destination in Search Queries, e.g. Berlin, Germany.
  3. Set Check-in and Check-out dates and the number of guests.
  4. Choose a Max Items limit and any optional detail toggles.
  5. 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

  1. Run one Berlin search for your target month every week.
  2. Keep only hotels above your required reviewScore and price range.
  3. Send new records to Google Sheets or a CRM.
  4. Deduplicate using the stable hotelId or url.

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

FieldTypeRequiredDefaultWhat it controls
searchQueriesarrayNo["Berlin, Germany"]Destinations to search.
startUrlsarrayNoDirect Booking.com search or hotel URLs.
checkIn / checkOutstringNoStay dates (YYYY-MM-DD).
adults / rooms / childrenintegerNoOccupancy for pricing.
childrenAgesarrayNoAges of children.
maxItemsintegerNoMax hotels to return (0 = unlimited).
hotelDetailsbooleanNofalseAdd facilities, house rules, surroundings, FAQ.
scrapeAvailabilitybooleanNofalseAdd the year-round availability calendar.
scrapeReviewsbooleanNofalseAdd guest reviews.
maxReviewsintegerNo10Max reviews per hotel when enabled.
langstringNoResult language (en-us, de, fr, …).
currencystringNoPreferred 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.

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.