Google Hotels Scraper — Prices by Dates, Ratings & Amenities avatar

Google Hotels Scraper — Prices by Dates, Ratings & Amenities

Pricing

from $1.40 / 1,000 properties

Go to Apify Store
Google Hotels Scraper — Prices by Dates, Ratings & Amenities

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

Sergey Lutsak

Maintained by Community

Actor 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

FieldTypeDefaultDescription
queriesarray 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
maxItemsinteger20Properties per query. Google renders ~20 per page; above that, query variants (by class, price, area) are searched automatically and merged
checkIn, checkOutYYYY-MM-DD—Stay dates (set both). Prices are for these dates
adultsinteger2Recorded in the output; Google prices default to 2 adults
currencystringUSDISO 4217 code
countrystringusGoogle gl country code for localization
expandQueriesbooleantrueSearch variants when maxItems > 20
includeSponsoredbooleanfalseKeep ads (flagged sponsored: true)
proxyobjectApify datacenter proxyProxy 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 planPrice 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; maxItems above 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_class and rating are shown only when Google displays them for the property.

API & integrations

Run it from code — Python:

from apify_client import ApifyClient
client = 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-scraper to 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.