Skip to content

How to Scrape Hotel Prices in 2026: The APIs, the Rules and the Rate Layers

How to scrape hotel prices: Booking.com and Expedia APIs first. 5 of 7 hotel sites bar crawlers from search. Country and mobile rates, traffic, proxy prices.

Billal AinaouiAugust 24, 2026Updated October 26, 202611 min read

How to Scrape Hotel Prices in 2026: The APIs, the Rules and the Rate Layers

To scrape hotel prices, start with an official source. Booking.com's Demand API serves Managed Affiliate Partners, and Expedia Group reviews every Rapid API application case by case. If you plan to collect the prices from the sites themselves, read their rules first. Booking.com's terms bar automated access without written permission. On October 25, 2026, 5 of 7 hotel sites' robots files disallowed their hotel search pages for all crawlers. Where collection is allowed, read each market from an exit in that market. Booking.com shows country rates only to guests whose IP address matches the targeted country. At 100 GB, five residential sellers' own pages listed $0.40 to $2.99 per GB on October 26, 2026. The HProxy Lite pool starts at $0.50 for one GB.

This guide covers the APIs, the rules, the layers of a hotel price and the evidence on country and device. After those come the traffic, the sellers that fit and the setup. The business case is in proxies for hotel rate monitoring, and the flight companion is how to scrape flight prices. The sites have their own pages, from Booking.com and chains such as Marriott and Hilton to metasearch such as Trivago.

Is there an API for hotel prices?

Yes, for partners. People look for the APIs far more than for scraping: "booking api" draws about 5,400 searches a month and "expedia api" about 1,000. "Scrape hotel prices" draws 30, by Google's Keyword Planner in October 2026.

SourceWho can use itHow to get in
Booking.com Demand APImanaged affiliatesa signed contract
Expedia Rapid APIapproved partnerscase-by-case review

Booking.com's checklist starts with registration as a "Managed Affiliate Partner". Partner Centre access then comes from the account manager "after signing the agreed contract". Expedia says Rapid gives access to its "vast global lodging inventory", and that "All applications will be reviewed case by case".

The Demand API also shows how Booking.com thinks about price. Each request carries the traveler's platform, such as mobile or desktop, and the traveler's country. Rates can then differ by both.

It depends on the country, the site's terms and the use, and this section is no legal advice. Booking.com's customer terms, updated August 25, 2025, are explicit. Users may not access, monitor, copy or "scrape/crawl" the platform "using any robot, spider, scraper, other automated means, or automated assistants". The bar holds "without the prior, express written permission" of Booking.com. The same terms say Booking.com will block "any automated system" it suspects of "an unreasonable amount of search".

We read the robots files of seven hotel sites on October 25, 2026. For each, we checked the hotel search page against the rules for all crawlers:

SitePath testedRule for all crawlers
Booking.com/searchresults.htmlNo rule.
Expedia/Hotel-SearchDisallow.
Hotels.com/Hotel-SearchDisallow.
Agoda/searchNo rule.
Google Hotels/travel/searchDisallow.
Kayak/hotels/...Disallow.
Marriott/search/findHotels.miDisallow.

Agoda's file disallows /search for Googlebot only. Kayak's file disallows its hotel result pages and explicitly allows its hotel poll endpoint. Trivago's file shuts out Claude's crawlers from the whole site, so we read no further, and Hilton's answered with an error. A missing rule grants nothing: the robots standard, RFC 9309, says its rules "are not a form of access authorization".

Which parts of a hotel price follow the guest?

Several, and each depends on something different. Booking.com's own documentation defines them:

RateWhat decides itDoes the exit country matter?
Public ratethe room, dates and termsat some sites, a little
Country ratethe guest's IP countryyes
Mobile ratethe booking platformno; the device does
Member (Genius) ratea signed-in memberno; a login does
Logged-in dealan authenticated guestno; a login does

Country rates. Booking.com says they "are only visible to guests using our platform from an IP address that matches the country you're targeting". The discount is at least 5%, the European Economic Area counts as one market, and a country rate never stacks with a mobile rate.

Mobile rates. Booking.com defines them as rates for "travellers booking through a mobile platform". A monitor sees them only when it presents itself as a phone or the app. Our mobile proxies page covers carrier addresses, which Booking.com's definition of a mobile rate does not mention.

Member rates. Genius and other membership rates are "closed user group" rates for "eligible authenticated travellers". Reading them means signing in. Automating member accounts runs into the same terms as scraping, so this guide covers public rates only.

Do hotel prices really change by country?

At some booking sites, within a limited range. A 2017 study at Ruhr-University Bochum searched the same hotels in Los Angeles, London, Berlin and Tokyo. Its searches ran through proxies and VPN gateways in several countries. It collected over 455,500 prices:

Median Booking.com price of the same hotels, by the searcher's countryEuros per night, hotels in four cities, searched through proxies in each country
Georgia
€77.17
Germany
€79.00
Russia
€79.03
France
€84.60
Pakistan
€99.28
Netherlands
€109.00
The same hotels cost about 41% more at the median from the Netherlands than from Georgia.
Source: Hupperich, Tatang, Wilkop and Holz, Ruhr-University Bochum, arXiv, December 2017 · hproxy.comProxy.

US searches got lower prices still at Booking.com, between quartiles of €45.01 and €82.84, and at Hotels.com, with a median of €64.24. Orbitz treated every country the same. The authors found location-based pricing real, with prices that "vary within a limited range only".

Browser settings moved prices too, though rarely. Across more than 4.37 million prices, changing the browser's fingerprint changed the price in about 1.12% of results:

Browser settings involved in hotel price changesShare of confirmed price-change cases that involved each setting
Accept-⁠Language header
14.57%
Browser languages
9.73%
Browser language
9.05%
User-⁠Agent
7.95%
Screen height
6.9%
Language settings were involved in about a third of all price changes.
Source: Hupperich, Tatang, Wilkop and Holz, Ruhr-University Bochum, arXiv, December 2017, Table 3 · hproxy.comProxy.

Switching an Android browser to Windows changed hotel prices by about 17%, and a Mac to an iPad by about 15%. For a monitor, the rule is plain: hold the language, the device and the exit country fixed for every series. A 2014 study adds what else moves travel prices. It found member prices at Cheaptickets and Orbitz, A/B tests at Expedia and Hotels.com, and history at Priceline.

How much traffic does hotel rate shopping use?

Size it from page loads. Take a comp set of 8 hotels, 90 dates and 3 markets: 2,160 page loads per refresh, each loaded once in a browser. At HTTP Archive's page weights of October 2026:

Page weightOne refreshDaily for 30 days
Median page6.6 GB198 GB
75th percentile13.3 GB400 GB
90th percentile27.7 GB831 GB

At the residential median of $3.50 per GB, a daily refresh costs about $694 a month at the median page. On our Residential Lite plan the three monthly volumes cost $83.16, $156 and $290.85. HTTP Archive weighs home pages, and hotel pages and retries change the totals, so weigh a sample of your own.

What are the best residential proxies for hotel rate shopping?

Pools that let you choose the exit country, priced for a steady monthly load. Booking.com's country rates follow the guest's IP country, and the example comp set moves about 198 GB a month at the median page. We read each seller's own pages on October 26, 2026:

SellerPrice per GB, Oct 26Why it fits rate shopping
HProxy Lite$0.50/GB from 1 GB, $0.23/GB at 10,000 GB+country, never expires
Rainproxy$0.40 at 100 GB, $0.30 at 250 GBcountry pick, never expires
Evomi$0.49 on a monthly plancountry, city and ISP
DataImpulse$1.00 from 5 GBfree country targeting
Decodo$2.75 at 100 GB, $2.50 at 250 GBcountry down to ZIP
MarsProxies$2.99 at 100 GB, $2.74 at 200 GBcity targeting
HProxy Premium$1.45/GB from 1 GB, $0.65/GB at 1,000 GB+state, city and ISP

Rainproxy names city, state and ASN targeting only for its pricier Exclusive and Premium pools, from $2.98 per GB. Decodo sells its 100 GB rate as a monthly subscription and its 250 GB rate as an enterprise plan. Evomi bills extra GB on its $49 plan of 100 GB at the same $0.49.

Bright Data's smallest monthly plan cost $499 for 141 GB, and only verified companies may buy its residential traffic. Our best residential proxies guide prices ten sellers in full.

How do you set up a hotel rate monitor?

  1. Check the source. Apply for a partner API where you qualify, and read the terms and robots file of any site you plan to load.
  2. Fix the market. Set the exit country in the proxy login, and match the site's currency and language to it.
  3. Fix the browser. Keep one language and one device profile per series, since both moved prices in the 2017 study.
  4. Compare like with like. Same room type, occupancy, cancellation terms and inclusions, with taxes in.
  5. Record the context. Store the market, currency, device profile, exit and time with each rate.
  6. Slow down on a 429. Honor the Retry-After header and lower the rate for that site.

The 2017 researchers also saw a site change break their scraper. A change to Booking.com's web application made its prices impossible for them to collect. Check every run's count of rates found against the last one. Our guides to Playwright and Puppeteer show the proxy wiring in a browser.

What do HProxy's proxies cost for hotel rate shopping?

Two residential pools billed by the GB, and static ISP addresses billed by the month:

What you compareResidential LiteResidential Premium
One GB$0.50/GB$1.45/GB
At volume$0.23/GB at 10,000 GB+$0.65/GB at 1,000 GB+
Targetingcountrycountry, state, city, ISP
Sessionsrotating, or sticky while in userotating, or 3 minutes to 24 hours
Expirynonenone
Paymentcard, crypto, Alipay, QRIS, Pixthe same

A static ISP proxy costs $2.70/IP for a month with traffic unmetered, for a monitor that keeps one address. The residential proxies and residential pricing pages carry the full ladders. The free proxy checker tests a line first, and a free proxy list is fine for testing a parser on a saved page. For the background, see what a residential proxy is, rotating vs static residential proxies and how a rate limit becomes a ban.

What this page could not check

  • No rate shop of our own. We loaded no hotel page and measured no block rate, success rate or speed at any site or seller, ours included.
  • One study for country and device. The 2017 study is the only one here that measured hotel prices by country, and it gives six country medians.
  • Product pages, not usage. Booking.com's pages describe country and mobile rates; how many hotels use them is not published.
  • One path per site. We tested one search path per robots file. Trivago's and Hilton's files were not readable.
  • Home pages. HTTP Archive weighs home pages, so hotel pages and retries change the totals.
  • Rates from the sellers' pages. The seller table copies each page as printed on October 26, 2026, with no purchase to confirm a rate or a targeting term.
  • No legal advice. The terms and the standard are quoted for what they say.
  • Check by January 26, 2027. Terms, partner rules, robots files and prices change, and every figure here needs a fresh read by then.

Sources

  • Booking.com Demand API documentation, "Discounts and rates" and "Prerequisites", read October 25, 2026.
  • Booking.com Partner Hub, "Setting up Country Rates" and "Country Rates", read October 25, 2026.
  • Booking.com, Customer Terms of Service, updated August 25, 2025, read October 25, 2026.
  • Expedia Group, "Get started with Rapid API", read October 25, 2026.
  • Thomas Hupperich, Dennis Tatang, Nicolai Wilkop and Thorsten Holz, "An Empirical Study on Price Differentiation Based on System Fingerprints", arXiv, December 2017.
  • Aniko Hannak, Gary Soeller, David Lazer, Alan Mislove and Christo Wilson, "Measuring Price Discrimination and Steering on E-commerce Web Sites", ACM Internet Measurement Conference, November 2014.
  • HProxy, the robots.txt files of Booking.com, Expedia, Hotels.com, Agoda, Google, Kayak and Marriott, read October 25, 2026.
  • IETF, RFC 9309, "Robots Exclusion Protocol", September 2022.
  • HTTP Archive, page weight reports, crawl of October 1, 2026.
  • Google Ads Keyword Planner, worldwide searches a month, read October 25, 2026.
  • HProxy price records: the residential price lists of 66 sellers, captured July 2 to October 22, 2026.
  • Rainproxy, Evomi, DataImpulse, Decodo, MarsProxies and Bright Data, residential pricing pages, and Rainproxy's residential product page, read October 26, 2026.
  • Bright Data documentation, "Residential network access", modified September 1, 2026, read October 26, 2026.
  • HProxy, residential and ISP product pages and price list, read October 26, 2026.

Frequently asked questions

Why is a hotel price different depending on who is looking?

Because some rates are targeted. Booking.com shows a country rate only to guests whose IP address matches the targeted country, a mobile rate to travelers booking on a mobile platform, and member rates only to signed-in travelers. A 2017 study also found Booking.com prices for the same hotels that varied by the searcher's country.

What kind of proxy do I need to scrape hotel prices?

A residential proxy in the market whose prices you read, where the site's rules allow collection. Country rates follow the guest's IP country, so the exit country matters. Mobile rates follow the device the site sees, so they need a mobile browser profile. Member rates need a login, which no proxy provides.

Can I scrape hotel prices with an API instead?

If you qualify. Booking.com's Demand API is for Managed Affiliate Partners with a signed contract, and it takes the traveler's country and platform as request fields. Expedia Group reviews every application for its Rapid API case by case. Both give rates without scraping.

How many proxies do I need to scrape hotel prices?

With rotating residential proxies you buy traffic by the GB, so plan the traffic. A refresh of 8 hotels, 90 dates and 3 markets loads 2,160 pages, about 6.6 GB at the median page weight of October 2026. Choose one exit location per market you read.

Why is Booking.com cheaper on mobile?

Hotels can offer mobile rates: Booking.com defines them as rates for travelers booking through a mobile platform. A mobile rate never stacks with a country rate. A monitor sees mobile rates only when it presents itself as a mobile browser or app.

Is it legal to scrape Booking.com?

Read the terms first. Booking.com's customer terms of August 25, 2025 bar access with any robot, scraper or automated assistant without its prior, express written permission. Its robots.txt has no rule for its search results page, and robots rules grant no permission. This is no legal advice.

What are the best residential proxies for hotel rate shopping?

Pools with country targeting, since Booking.com's country rates follow the guest's IP country. On their own pages, read October 26, 2026, Rainproxy charged $0.40 per GB at 100 GB, Evomi $0.49 on its monthly plan and DataImpulse $1.00 with free country targeting. Our Lite pool costs $0.50 for one GB, by country.

Proxies that don't die mid-job

Residential, ISP, datacenter and mobile, verified by the same engine that runs tens of millions of checks. They read as a real device and hold up under load. Pay as you go, and your balance never expires. $0.23/GB is the 10,000 GB+ rate; a single gigabyte is $0.50/GB, with no minimum order.

129M+ proxy checks run · 100+ countries · HTTP / HTTPS / SOCKS · re-checked every few minutes · no signup

HProxy.

Honest guides and comparisons on proxies, scraping and staying unblocked, from the team that runs the network.

RSS feed