Hilton Hotel Search Scraper
Pricing
from $0.84 / 1,000 hotel-listeds
Hilton Hotel Search Scraper
Scrape every Hilton hotel for any destination and dates. Add a city and get each Hilton, DoubleTree, Hampton, Waldorf Astoria, Conrad, Curio and Garden Inn with nightly and stay prices, points cost, brand, amenities, guest rating, phone, coordinates and distance. $1.20 per 1,000 hotels.
Pricing
from $0.84 / 1,000 hotel-listeds
Rating
0.0
(0)
Developer
BonCross API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
What is Hilton Hotel Search Scraper?
Give Hilton Hotel Search Scraper a city, a landmark or a pair of coordinates and you get the Hilton properties near it, each priced for your dates, in a few seconds. One row per hotel, across the whole portfolio: Hampton and Hilton Garden Inn through to Waldorf Astoria, Conrad and LXR. It suits anyone tracking what a market costs night by night, ranking a city around a venue, or comparing cash against points before picking hotels to price in full.
Why it's worth running:
- A long list of cities is quick. 20 cities, up to 100 hotels each, returned 1,184 priced hotels in about 6 seconds.
- "Cheapest 20" means the cheapest 20. Price, rating and points sorts look at every Hilton in the place before your limit applies. You don't get the 20 nearest hotels re-sorted.
- You get the price Hilton's own search page shows. We checked 41 hotel cards for New York and London on 2 October 2026 and all 41 matched. Each row also says whether that nightly rate includes tax, and gives the stay total with tax.
- Cash and Honors points for the same dates, on one row. Switch on points and each hotel adds its lowest points price per night for your stay. All 39 available London hotels answered when we measured it.
- $1.20 per 1,000 hotels on the Free plan and $0.84 on Business. Hotels your filters drop are free, and there's no proxy to set up or pay for.
BonCross Verified means we tested this actor against the live site before release and kept the record:
- 35 of 35 live checks on its inputs and filters passed on 7 October 2026
- 7 destinations run the same day in 6 countries: 70 hotels, none empty
- Charges matched the rows
What you can do with it:
- List the Hilton properties near a place, with brand, address, coordinates and distance
- Price each hotel for your stay: the nightly rate as Hilton shows it, whether it includes tax, and the stay total with tax
- Read Hilton's published lowest rate and its points price per night beside the dated quote
- Sort by distance, price, guest rating or points
- Filter by brand, amenity, minimum rating, bookable status or availability for your dates
- See the currency each price is actually in
- Take the results out as JSON, CSV, Excel, XML or HTML
What data can you extract?
| 🏨 Identity | id, hotelId, name, brandCode, brandName, url |
| 📍 Place | address, city, state, postcode, country, countryCode, lat, lng, distance, distanceUnit, distanceText |
| ⭐ Guest rating | rating, ratingScale, reviewCount |
| 📅 Stay | checkIn, checkOut, nights, adults, rooms, childrenAges |
| 💷 Price for your stay | pricePerNight, priceTotal, currency, pricesIncludeTax, isTaxIncludedInRate, ratePlanName, ratePlanCode, pointsPerNight, pointsRatePlanName |
| Published rate | leadRate, leadRateCurrency, leadRatePlanName, leadRatePlanCode, leadPointsPerNight, hotelCurrency |
| Availability | isAvailable, availabilityStatus |
| Property | amenityIds, amenities, phone, imageUrl, isOpen, isBookable, isSeasonallyClosed, isAdultsOnly, isRecentlyRenovated |
| Run metadata | scrapedAt, input |
How to scrape Hilton hotel prices
It's a form. You type places the way you'd type them on hilton.com and download a spreadsheet.
- Create a free Apify account and open Hilton Hotel Search Scraper.
- Put one or more places in Destinations: "London, England, United Kingdom", "Tokyo, Japan", or "51.5074,-0.1278".
- Set Check-in and Check-out. If you leave them empty, the stay starts 30 days from today and lasts one night.
- Choose how many hotels you want per destination and how to sort them.
- Click Start. You get one row per hotel, priced for that stay, as JSON, CSV or Excel.
⬇️ Input
All you need is a destination. Left alone, the actor prices a one-night stay for two adults, 30 days out, in US dollars, and returns up to 100 hotels per destination, nearest first.
You have two limits. "Max hotels per destination" (1 to 500, default 100) applies to each place separately: ten cities at 50 each returns 500. "Maximum results for the whole run" caps the total across all of them, and 0 means no cap. London has about 70 Hiltons, to give you a sense of scale.
| Field | Type | Default | What it does |
|---|---|---|---|
destinations | array | [] | Where to search. Prose, or lat,lng. |
maxResultsPerDestination | integer | 100 | Hotels per destination, 1 to 500. London has about 70. |
maxItems | integer | 0 | A run-wide ceiling across every destination. Zero means no limit. |
checkIn / checkOut | string | empty | YYYY-MM-DD. Leave empty to use the rolling window. A stay is 1 to 30 nights. |
checkInDaysAhead | integer | 30 | Used only when check-in is empty. A scheduled run then keeps asking about a stay the same distance away. |
nights | integer | 1 | Used only when check-out is empty. |
adults | integer | 2 | Adults per room, 1 to 8. |
childrenAges | array | [] | One age per child. Hilton prices children by age. |
rooms | integer | 1 | Rooms to price, 1 to 9. |
sortBy | string | distance | distance, price_asc, price_desc, rating_desc, rating_asc, points_asc or points_desc. See below. |
brands | array | [] | Keep only these brand codes. |
amenityIds | array | [] | Keep only hotels with these amenities. |
amenityMatch | string | all | all keeps only hotels that have each of the amenityIds, as Hilton's own filter does. any keeps a hotel that has at least one. |
minRating | number | 0 | Drop hotels rated below this, out of 5. Decimals such as 4.5 work. Zero keeps everything, including unrated hotels. Any higher value drops them. |
onlyBookable | boolean | false | Drop pre-opening and seasonally closed properties. |
onlyAvailable | boolean | false | Drop what is sold out, closed or not yet open for the stay. Needs dated prices on. |
includeRates | boolean | true | Price the stay. Off lists properties only, with the undated published rate, which is faster. |
includePoints | boolean | false | Add pointsPerNight, the lowest Honors points price per night for the stay, beside the cash price. Needs includeRates. |
currency | string | USD | ISO code to price in, such as GBP or EUR. |
distanceUnit | enum | mi | mi or km. |
delayMs | integer | 0 | Optional pause before each call, 0 to 10,000 ms. |
maxConcurrency | integer | 16 | Parallel requests, 1 to 32. |
Sorting
sortBy | Order |
|---|---|
distance | Nearest to the searched place first (the default) |
price_asc | Cheapest pricePerNight first |
price_desc | Dearest pricePerNight first |
rating_desc | Best rated first |
rating_asc | Lowest rated first |
points_asc | Fewest points per night first: the dated pointsPerNight when includePoints is on, otherwise leadPointsPerNight |
points_desc | Most points per night first, on the same basis |
Hotels with no price (or no rating) go to the end. A price sort needs dated prices. If you turn "Include dated prices" off and ask for a price sort, the run stops and tells you why.
Search a city for a two-night stay
{"destinations": ["London, England, United Kingdom"],"checkIn": "2026-10-15","checkOut": "2026-10-17","currency": "GBP","adults": 2,"maxResultsPerDestination": 50}
The 20 cheapest Hiltons in a city
{"destinations": ["Paris, France"],"checkIn": "2026-11-05","checkOut": "2026-11-06","currency": "EUR","sortBy": "price_asc","maxResultsPerDestination": 20}
Several cities, one brand, capped run
{"destinations": ["London, England, United Kingdom", "Edinburgh, Scotland", "Tokyo, Japan"],"brands": ["HP", "GI"],"minRating": 4,"maxItems": 60}
Brand codes
HI Hilton · DT DoubleTree · HP Hampton · GI Hilton Garden Inn · WA Waldorf Astoria · CH Conrad · QQ Curio · UP Tapestry · RU Tru · HW Homewood Suites · HT Home2 Suites · ES Embassy Suites · PY Canopy · ND NoMad · OL LXR · SA Signia · PE Spark · UA Motto · PO Tempo · LX SLH · YH YOTEL · GU Graduate · AQ Apartment Collection · EY LivSmart Studios · GV Hilton Grand Vacations · OU AutoCamp · ID Outset
Amenity ids
freeBreakfast · freeParking · freeWifi · spa · resort · luxury · beach · golf · casino · allInclusive · digitalKey · concierge · nonSmoking · adjoiningRooms · eveningReception · tennisCourt · ski · boutique · hotelResidence
Rows also list further ids that Hilton attaches (fitnessCenter, dining, roomService and others), and amenities gives the readable name beside each one.
For developers
maxResultsPerDestinationis the per-destination limit andmaxItemsthe run-wide one. Filters run before either cap: with a brand, amenity, rating or availability filter, the actor looks at up to 500 hotels in the place and caps what's left.- A price, rating or points sort prices each Hilton in the place and then keeps the first N. That takes a little longer than a distance sort with a small limit.
checkInDaysAheadandnightsapply only whencheckInandcheckOutare empty. Leave the dates empty on a schedule and each run asks about a stay the same distance away.maxConcurrency(default 16, from 1 to 32) is how many requests run at once. Lower it only if a run reports refusals or errors.delayMs(default 0) adds a pause before each request. Values above 2,000 are treated as 2,000. We'd leave both alone.- Rows are written in the order you listed the destinations. If Apify restarts a run part-way through, it carries on where it stopped, and no row is repeated or billed twice.
⬆️ Output
One row is one Hilton property, priced for your stay. You can view the dataset as a table or as JSON in the Output tab.
{"id": "LONCCQQ","hotelId": "LONCCQQ","url": "https://www.hilton.com/en/hotels/lonccqq/","scrapedAt": "2026-09-26T15:54:17.636Z","input": "London, England, United Kingdom","name": "Lost Property St Paul's London - Curio Collection by Hilton","brandCode": "QQ","brandName": "Curio","address": "3-5 Ludgate Hill, St Paul's","city": "London","state": null,"postcode": "EC4M 7AA","country": "United Kingdom","countryCode": "GB","lat": 51.51375796792,"lng": -0.10112802735,"distance": 1.2127317720832262,"distanceUnit": "mi","distanceText": "1.21 mi","rating": 4.9,"ratingScale": 5,"reviewCount": 1968,"phone": "+44 20 4553 0555","amenityIds": ["adjoiningRooms", "boutique", "digitalKey", "dining", "fitnessCenter", "freeWifi"],"amenities": ["Connecting Rooms", "Boutique", "Digital Key", "On-site restaurant", "Fitness center", "Free WiFi"],"imageUrl": "https://www.hilton.com/im/en/LONCCQQ/17270819/common-spaces-exterior-evening-1.jpg?…","isOpen": true,"isBookable": true,"isSeasonallyClosed": false,"isAdultsOnly": false,"isRecentlyRenovated": false,"adults": 2,"rooms": 1,"childrenAges": [],"checkIn": "2026-10-24","checkOut": "2026-10-26","nights": 2,"pricePerNight": 214.18,"priceTotal": 428.36,"pricesIncludeTax": true,"isTaxIncludedInRate": true,"currency": "GBP","ratePlanName": "Honors Discount Advance Purchase","ratePlanCode": "HPPAP4","isAvailable": true,"availabilityStatus": "AVAILABLE","leadRate": 177.4,"leadRateCurrency": "GBP","leadRatePlanName": "Honors Discount Advance Purchase","leadRatePlanCode": "HPPAP4","leadPointsPerNight": 79000,"hotelCurrency": "GBP"}
How to read the prices
pricePerNightis the nightly rate exactly as Hilton's search results show it: the average per night over your stay, including any mandatory nightly fee.pricesIncludeTaxtells you whether that nightly rate includes tax. It'struewhere Hilton quotes with tax inside (most UK hotels, VAT included) andfalsewhere tax is added at checkout (the United States, for example, and some London hotels).isTaxIncludedInRateis kept for compatibility and always says the same.priceTotalis the whole stay with all taxes and charges, the total Hilton shows at booking.
leadRate is a different kind of number. It's Hilton's published lowest rate for the property and has no dates attached. You still get it when dated prices are off, and it's a useful sanity check beside the quote. leadPointsPerNight is the matching published points price.
Each priced row repeats the party it was quoted for (adults, rooms and childrenAges) beside checkIn, checkOut and nights. Two runs at different party sizes stay separable.
When a place or a hotel has nothing to show
A destination that couldn't be reached, a place Hilton doesn't recognise, and a place with no Hilton in reach each return a single row with error saying which. Those rows are never charged for. On a long list you can see exactly which places returned nothing.
A hotel with no price isn't open yet, is closed for the season, or is sold out for those dates. availabilityStatus says which (NOT_OPEN for a pre-opening property), and "Only hotels with rooms for these dates" drops them.
One row per hotel, not per room
You get the lowest available rate for each hotel. For each room the hotel is selling, in cash and points, run Hilton Room Rates Scraper on the hotels this one finds. For the property record itself (amenities, parking, policies, photos), there's Hilton Hotel Details Scraper. Both take the hotelId or url from these rows.
How many hotels can you get, and how fast?
You get the properties Hilton lists near the place, up to 500 per destination.
| Run | Rows | Time |
|---|---|---|
| London, the 8 nearest hotels | 8 | 2.2 to 3.9 s |
| London, New York and Orlando, every hotel priced, cheapest first | 210 | 8 to 9 s |
| Eight cities on three continents, every hotel priced, cheapest first | 378 | 4 to 5 s |
| London, New York, Chicago and Dubai, up to 100 each, priced | 196 | 5.5 to 5.9 s |
| 20 US and world cities, up to 100 hotels each, priced | 1,184 | about 6 s |
These are whole runs on Apify, measured on 1 and 2 October 2026. Destinations are searched at the same time, and so are the price checks inside each one, which is why several cities take little longer than one. Thousands of destinations fit inside the default one-hour run limit.
How much does it cost to search Hilton hotels?
| Event | Free plan | Starter | Scale | Business |
|---|---|---|---|---|
actor-start, once per run | $0.002 | $0.002 | $0.002 | $0.002 |
destination-checked, per destination whose hotels were all removed by your filters | $0.0005 | $0.0005 | $0.0005 | $0.0005 |
hotel-listed, per hotel returned | $0.0012 | $0.00108 | $0.00096 | $0.00084 |
Enterprise plans pay the Business price.
$1.20 per 1,000 hotels on the Free plan, $0.84 on Business. That's the whole price: platform usage is included and there's no proxy charge.
Three cities at 50 hotels each returns 150 rows: $0.002 + 150 × $0.0012 = $0.182 ($0.128 on Business).
What you don't pay for, and the one small fee you might:
- Hotels dropped by a filter aren't charged.
- An error row (unreachable destination, unknown place, no Hilton in reach) isn't charged.
- If Hilton lists hotels for a destination and your filters remove all of them, that destination costs the $0.0005
destination-checkedfee once and writes one row with anerrorsaying how many hotels were found.
The $5 of credits in Apify's Free plan each month covers about 27 runs the size of that example, roughly 4,100 priced hotels, before you pay anything.
FAQ
Do I need proxies or a Hilton account?
Neither. There's no proxy to set up, no proxy charge and no sign-in.
How do I get the cheapest hotels in a city, not the nearest?
Set "Sort by" to price, low to high. The actor prices each Hilton in the place before your limit applies, and a limit of 20 gives you the 20 cheapest.
Is the nightly price with or without tax?
It depends on the hotel, and the row tells you. pricesIncludeTax is true where Hilton quotes with tax inside and false where tax is added at checkout. priceTotal is the stay with tax in both cases, which makes it the safer column to compare across countries.
Can I see what the stay costs in Honors points?
Switch on "Include points for your dates". Each hotel then has pointsPerNight, its lowest points price per night for your stay, beside the cash price. Without it you still get leadPointsPerNight, the property's published points price, which has no dates.
I asked for three rooms. Why didn't the price change?
The search quotes a per-room rate, and more rooms doesn't change it. For a total that scales with the booking, use Hilton Room Rates Scraper.
How do I track a market every day for a stay 30 days out?
Schedule the run and leave the dates empty. "Check-in days ahead" keeps each run asking about a stay the same distance away, where a fixed date would drift into the past.
Can I search around a point, such as a venue?
Pass "lat,lng" as the destination. Rows are nearest first by default, and distance is in miles or kilometres, whichever you choose.
What are the limits?
- One rate per hotel, the lowest available. The room-by-room list needs Hilton Room Rates Scraper.
pointsPerNightis the hotel's lowest points price for the stay. The points price of each room needs Hilton Room Rates Scraper too.leadRatehas no dates, and it can differ from the datedpricePerNight.- Pre-opening properties have no price and
availabilityStatus: NOT_OPEN. - Hotel and rate-plan names are in English.
- Amenity ids are Hilton's own vocabulary and differ from other chains'.
- A stay is 1 to 30 nights.
Is it legal to scrape Hilton?
This actor reads search results Hilton publishes to anyone, with no login and no paywall, and collects no personal data. What you do with the data is your responsibility. Apify's ethical scraping guidance is a good place to start.
Run it on a schedule, or from your own code
A daily market tracker needs no code: an Apify Schedule runs the search, and the Google Sheets or Slack integration passes on the rows. Make, Zapier, Airbyte, n8n, GitHub and webhooks connect the same way.
From code, POST https://api.apify.com/v2/acts/boncross~hilton-hotel-search/run-sync-get-dataset-items with the input JSON as the body returns the hotels in one call for short runs. The Apify API has clients for JavaScript and Python.
An AI agent can call it through the Apify MCP server at mcp.apify.com as boncross/hilton-hotel-search. Ask it for the best-rated Hilton within a mile of a venue on given dates and it has what it needs. The actor asks for no access to your Apify account.
More from BonCross
- Hilton Hotel Details Scraper: Everything a Hilton property publishes about itself: address, coordinates, phone,…
- Hilton Room Rates Scraper: Every room Hilton is selling for a hotel and your dates.
- ikyu.com Room Rates Scraper (一休): Each room and rate plan ikyu.com (一休) sells for a hotel or ryokan on your dates.
- ikyu.com Search Scraper (一休): ikyu.com (一休) search results for any Japanese area, station or landmark on your dates.
- Jalan.net Area Rates Scraper (じゃらん): Jalan (じゃらん) prices and rooms left for every available hotel in an area, a whole…
- Jalan.net Room Rates Scraper (じゃらん): Every plan and room Jalan (じゃらん) lists for a hotel on a date.
Your feedback
Is a Hilton missing from a city, or a price that doesn't match what hilton.com shows you? Tell us on the Issues tab in Apify Console with the destination and dates. We read every issue and reply there.