Google Hotels Scraper — Prices by Dates, Ratings & Amenities
Pricing
from $1.40 / 1,000 properties
Google Hotels Scraper — Prices by Dates, Ratings & Amenities
Get hotels and vacation rentals from Google Hotels for any location and stay dates: nightly and total price in your currency, rating, review count, hotel class, amenities, deals and photos. Fast server-side extraction, no browser.
Pricing
from $1.40 / 1,000 properties
Rating
0.0
(0)
Developer
Sergey Lutsak
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Get hotels and vacation rentals from Google Hotels for any location and your stay dates: nightly and total price in the currency you choose, rating and review count, hotel class, amenities, "less than usual" deals, free-cancellation flag and photos. Fast, server-side extraction — no browser, no login — so runs finish in seconds and cost a fraction of a cent per property.
Use cases
- Rate shopping & revenue management — see what Google shows travellers for your market and dates: prices, classes, deals.
- Travel apps & AI agents — "find hotels in Lisbon for Nov 20–22 under €150" as structured JSON.
- Market research — count properties by class, rating and price band across cities; track changes on a schedule.
- Lead lists — hotels with Google Hotels IDs and links for outreach or enrichment.
Input
| Field | Type | Default | Description |
|---|---|---|---|
queries | array of strings | — | What you would type into Google Hotels (hotels in Warsaw, Lisbon, 5-star hotels near Times Square) or a google.com/travel/search URL |
maxItems | integer | 20 | Properties per query. Google renders ~20 per page; above that, query variants (by class, price, area) are searched automatically and merged |
checkIn, checkOut | YYYY-MM-DD | — | Stay dates (set both). Prices are for these dates |
adults | integer | 2 | Recorded in the output; Google prices default to 2 adults |
currency | string | USD | ISO 4217 code |
country | string | us | Google gl country code for localization |
expandQueries | boolean | true | Search variants when maxItems > 20 |
includeSponsored | boolean | false | Keep ads (flagged sponsored: true) |
proxy | object | Apify datacenter proxy | Proxy configuration |
{"queries": ["hotels in Lisbon", "hotels in Porto"],"checkIn": "2026-11-20","checkOut": "2026-11-22","currency": "EUR","maxItems": 60}
Output (one item = one property)
{"id": "ChYImtqGqKyHx8GAARoJL20vMGNfOHhmEAE","url": "https://www.google.com/travel/hotels/entity/ChYImtqGqKyHx8GAARoJL20vMGNfOHhmEAE?hl=en&curr=USD&ts=…","name": "InterContinental Warsaw by IHG","type": "hotel", // hotel | vacation_rental"hotel_class": 5,"rating": 4.7,"reviews_count": 8917,"price": { "nightly": 134.0, "nightly_with_taxes": 134.0, "total": 435.0, "nights": 3, "currency": "USD" },"deal": "22% less than usual", // or null"free_cancellation": false,"amenities": ["Breakfast ($)", "Free Wi-Fi", "Parking", "Indoor pool", "Hot tub", "Air conditioning", "Pet-friendly", "Fitness center"],"image_url": "https://lh6.googleusercontent.com/proxy/…","images": ["https://lh6.googleusercontent.com/proxy/…"],"sponsored": false,"check_in": "2026-11-10", "check_out": "2026-11-13", "adults": 2, "currency": "USD","query": "hotels in Warsaw"}
Field names are a stable contract: new fields may be added in minor versions; renames only in a major version (see Changelog). The run's key-value store record OUTPUT holds statistics (requests, blocks, Google's total count per query, reason_if_empty).
Pricing
Pay only for results: $2.00 per 1,000 properties. Platform usage is included — no compute bills, no proxy costs. A run that finds nothing costs (almost) nothing.
Discounts on paid Apify plans:
| Apify plan | Price per 1,000 properties |
|---|---|
| Free plan | $2.00 |
| Starter | $1.80 |
| Scale | $1.60 |
| Business | $1.40 |
Examples (Free plan price):
- one city, one date range (20 hotels) → $0.04
- 100 hotels with query expansion → $0.20
- 1,000 hotels across 10 cities → $2.00
Limitations
- Google Hotels renders one page (~20 properties) per query;
maxItemsabove 20 is served through automatic query variants, which typically yield 60–120 unique properties per city. - Per-partner offers (Booking.com, Expedia, …) and reviews text are not included in this version.
hotel_classandratingare shown only when Google displays them for the property.
API & integrations
Run it from code — Python:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("vulcandata/google-hotels-scraper").call(run_input={"queries": ["hotels in Lisbon"], "checkIn": "2026-11-20", "checkOut": "2026-11-22", "currency": "EUR", "maxItems": 60})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
…or plain HTTP (returns the dataset items directly):
curl -X POST "https://api.apify.com/v2/acts/vulcandata~google-hotels-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" -d '{"queries": ["hotels in Lisbon"], "checkIn": "2026-11-20", "checkOut": "2026-11-22", "currency": "EUR", "maxItems": 60}'
- No-code: connect to Make, Zapier, n8n, Google Sheets, Slack or webhooks from the actor's Integrations tab.
- Schedules: run daily/weekly from Schedules and get fresh data automatically.
- AI agents (MCP): add
vulcandata/google-hotels-scraperto the Apify MCP server (mcp.apify.com) and let Claude, ChatGPT or Cursor call it as a tool. - Exports: JSON, CSV, Excel, XML, RSS — straight from the dataset.
FAQ
Is this legal? The actor reads the public Google Hotels search page — the same information any traveller sees. No login, no personal data.
Why ~20 results per query? Google renders one page of ~20 properties per search. Set maxItems above 20 and the actor runs query variants (by star class, budget, area) and merges unique properties — typically 60–120 per city.
Are prices for my exact dates? Yes. Dates and currency are passed to Google exactly as the Google Hotels date picker does; the output shows nightly and total price for the stay.
Can I monitor prices daily? Yes — schedule the actor with fixed dates and compare price.nightly between runs.
Do you include Booking.com / Expedia offers per hotel? Not in this version — the lowest price Google shows is included. Per-partner offers are on the roadmap.
More scrapers by VULCAN
Changelog
See CHANGELOG.md.