Booking.com Hotels Scraper avatar

Booking.com Hotels Scraper

Pricing

from $12.00 / 1,000 hotel scrapeds

Go to Apify Store
Booking.com Hotels Scraper

Booking.com Hotels Scraper

Extract Booking.com hotel listings, prices, ratings, reviews, availability text, and hotel URLs for travel market research.

Pricing

from $12.00 / 1,000 hotel scrapeds

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Booking.com Hotels Scraper extracts public hotel search results from Booking.com: hotel names, listing URLs, prices, ratings, reviews, star counts, addresses, room/availability text, taxes and image URLs. Use it to monitor hotel supply, compare destinations, build travel-market datasets, and refresh hospitality research without manually copying search results.

At a glance

  • Source: Public Booking.com hotel search result pages.
  • Best for: Travel market research, OTA monitoring, hotel lead lists, price snapshots, and destination supply analysis.
  • Output: One dataset row per hotel listing.
  • Proxy mode: Residential proxy by default because Booking.com commonly challenges datacenter traffic.
  • Details mode: Optional detail-page enrichment for coordinates and amenities.

What does this actor do?

Give the actor a destination such as Lisbon, Porto, or New York, choose guest/stay settings, and it saves the matching hotel cards from Booking.com. The scraper is designed for recurring public listing snapshots, not account-only data, reservations, or private traveler information.

Who is it for?

  • Travel analysts comparing hotel supply and public prices across destinations.
  • Hospitality operators checking competitor ratings, review counts, and offer text.
  • Revenue-management teams collecting recurring market snapshots.
  • Agencies and data teams feeding dashboards, spreadsheets, and internal research pipelines.

Input example

{
"destination": "Lisbon",
"maxItems": 25,
"currency": "USD",
"language": "en-us",
"adults": 2,
"children": 0,
"rooms": 1,
"includeDetails": false
}

Input settings

KeyTypeDescription
destinationstringCity, region, landmark, or hotel search text.
checkInstringOptional check-in date in YYYY-MM-DD format.
checkOutstringOptional check-out date in YYYY-MM-DD format.
adultsintegerNumber of adult guests.
childrenintegerNumber of children.
roomsintegerNumber of rooms.
currencystringThree-letter currency code for displayed prices.
languagestringBooking.com locale parameter, for example en-us.
countryCodestringOptional residential proxy country code.
maxItemsintegerMaximum hotel listings to save.
includeDetailsbooleanOpen detail pages to collect coordinates and amenities. Slower and more expensive.

Output example

{
"search": "Lisbon",
"destination": "Lisbon",
"checkIn": null,
"checkOut": null,
"hotelName": "Example Lisbon Hotel",
"url": "https://www.booking.com/hotel/pt/example.html",
"bookingId": "example",
"address": "Lisbon, Portugal",
"city": null,
"country": null,
"coordinates": null,
"rating": 8.7,
"reviewCount": 1234,
"stars": 4,
"price": "US$120",
"currency": "USD",
"taxesAndFeesText": "Includes taxes and fees",
"availabilityText": "Only 2 rooms left",
"roomSummary": "Standard double room",
"amenities": [],
"imageUrls": ["https://cf.bstatic.com/..."] ,
"rank": 1,
"scrapedAt": "2026-07-12T09:00:00.000Z"
}

Output fields

FieldDescription
search, destinationSearch text used for the run.
checkIn, checkOutStay dates from input, when supplied.
hotelNameHotel listing name.
urlCanonical Booking.com hotel URL.
bookingIdID parsed from the hotel URL when available.
addressAddress/location text from the listing card.
city, countryReserved location fields.
coordinatesLatitude/longitude when detail enrichment finds them.
rating, reviewCount, starsPublic score, review count, and star count.
price, currencyDisplayed price text and selected currency.
taxesAndFeesTextTaxes/fees text shown on the result card.
availabilityTextAvailability or urgency text shown by Booking.com.
roomSummaryRoom/offer summary from the card.
amenitiesAmenities from detail pages when includeDetails is enabled.
imageUrlsListing image URLs.
rankPosition in the current search result page.
scrapedAtISO timestamp for the scrape.

Pricing

This actor uses pay-per-event pricing:

EventPrice
Start$0.005 per run
Hotel scrapedFree $0.0046, Bronze $0.004, Silver $0.00312, Gold $0.0024, Platinum $0.0016, Diamond $0.00112 per hotel

Residential proxy traffic is required for reliability on Booking.com and is included in actor operating costs.

Verified public example tasks

These Apify Store tasks use small, QA-verified inputs and can be opened or cloned directly:

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/booking-com-hotels-scraper').call({ destination: 'Lisbon', maxItems: 10 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient('$APIFY_TOKEN')
run = client.actor('fetch_cat/booking-com-hotels-scraper').call(run_input={'destination': 'Lisbon', 'maxItems': 10})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

cURL

curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~booking-com-hotels-scraper/runs?token=$APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"destination":"Lisbon","maxItems":10}'

MCP / AI-agent usage

You can use this actor from AI tools through the Apify MCP Server. Configure the Apify MCP server with your Apify API token, then ask your agent to run booking-com-hotels-scraper with a destination, maximum item count, and optional dates. The dataset URL returned by Apify can be used directly in spreadsheets, notebooks, or downstream automations.

Claude CLI add command:

$claude mcp add apify -- npx -y @apify/actors-mcp-server --actors fetch_cat/booking-com-hotels-scraper

Example MCP JSON config:

{
"mcpServers": {
"apify": {
"command": "npx",
"args": ["-y", "@apify/actors-mcp-server", "--actors", "fetch_cat/booking-com-hotels-scraper"],
"env": { "APIFY_TOKEN": "$APIFY_TOKEN" }
}
}
}

Example prompts:

  • "Run the Booking.com Hotels Scraper for Lisbon with 10 hotels and USD prices."
  • "Collect 25 Booking.com hotel listings for Porto and summarize the highest-rated properties."
  • "Scrape Booking.com hotels for New York with two adults and return hotel names, prices, and ratings."

Tips and limits

  • Keep maxItems small for frequent monitoring runs, then scale once your query is stable.
  • Use includeDetails only when coordinates or amenities are required.
  • Booking.com may change layout or show different text by locale, currency, dates, and user location.
  • The actor only collects public data visible without signing in.

Legality and responsible use

This actor is intended for public web data and market research. Make sure your use case complies with Booking.com's terms, applicable laws, and privacy rules. Do not use it to collect personal traveler data or perform abusive traffic patterns.

FAQ

Can I scrape hotel reviews? This actor focuses on hotel listings. Use a reviews-specific actor for review text.

Why are prices text, not normalized numbers? Booking.com displays prices with localized symbols, taxes, and offer labels. The actor preserves the visible text so users can decide how to normalize it.

Why use residential proxies? Booking.com commonly challenges plain datacenter traffic; residential proxy routing improves reliability.

What should I send to support? Include the run ID or run URL, input JSON, expected output, actual output, and a reproducible public Booking.com search URL when possible.

Support

If a run fails or output looks wrong, open an Apify issue with the run ID/run URL, the exact input JSON, expected output, actual output, what you received, and any public URL that reproduces the same Booking.com result page.

Changelog

  • 2026-07-16 - Feature: Added ready-to-run example tasks on the Apify Store

  • 2026-07-16 - Feature: Launched booking com hotels scraper for public Apify Store users.