Google Hotels Scraper avatar

Google Hotels Scraper

Pricing

from $1.05 / 1,000 hotels

Go to Apify Store
Google Hotels Scraper

Google Hotels Scraper

Google Hotels scraper: hotel prices for any city and dates, prices from every booking site (Booking.com, Expedia, Agoda, official site), rating, reviews, class, amenities, photos. Price calendar for any hotel. Fast HTTP, no browser.

Pricing

from $1.05 / 1,000 hotels

Rating

0.0

(0)

Developer

Dmitrii Nepochatykh

Dmitrii Nepochatykh

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

12 days ago

Last modified

Categories

Security

Limited permissions

Share

Scrape Google Hotels for any city and dates: hotel prices per night and for the whole stay, taxes, deals, guest rating, review count, hotel class, amenities, photos, coordinates and nearby places. Turn on prices from every booking site to get the full offer list (Booking.com, Expedia, Hotels.com, Agoda, Trip.com, the official site, ...) with room types and free-cancellation deadlines. Track one hotel over many dates with the built-in price calendar.

Fast HTTP scraping, no browser, no login, no Google API key.

Try it in one click

The input is prefilled with hotels in Lisbon: click Start and get 20 hotels with prices in about a minute, for about $0.03.

Real output, hotels in Rome, 2 nights from 10 Dec 2026, 2 adults, prices from every booking site on (October 2026):

HotelClassRating (reviews)Cheapest booking sitePer nightNext offerBooking sites
Hotel Artemide4★4.8 (2,037)Priceline$232.01Hotels.com $233.0128
Hotel Nord Nuova3★4.1 (1,766)Evendo$99.37Agoda $101.6228
Adesso Hotel4★4.6 (795)Traveluro$53.80Tripadvisor $70.3724
Rome Garden Hotel3★4.1 (908)Agoda$76.57hotel's own site $94.086
Hotel Indigo Rome – St. George5★4.7 (990)Reservation Day$287.70Vio.com $288.8627

Every row also has the total price with taxes, address, phone, coordinates, amenities, photos, room types and free-cancellation deadlines (full field list below).

What can this Google Hotels scraper do?

  • Search hotels by city, area or landmark ("hotels in Lisbon", "resorts in Bali", "hotels near Times Square"), up to 1,000 hotels per search.
  • Any dates, guests and currency: check-in / check-out or number of nights, 1–12 adults, USD, EUR, GBP or any other currency Google supports.
  • Prices from every booking site (optional): every offer with price per night, total price, room types and free cancellation.
  • Price calendar: repeat a search or a hotel for up to 90 consecutive check-in dates in one run.
  • Filters by guest rating, hotel class, price per night and property type. Filtered hotels are not charged.
  • Hotels and vacation rentals (apartments, guesthouses) in the same dataset, marked with type.

Who uses Google Hotels data?

  • Hotels and revenue managers: rate shopping and rate parity checks against OTAs.
  • Travel startups and agencies: price comparison, deal alerts, destination content.
  • Analysts and investors: average daily rates by city and season, supply research.
  • AI agents and data pipelines: clean JSON for LLM travel assistants.

How to scrape Google Hotels

  1. Enter one or more Searches (e.g. hotels in Lisbon) and/or paste Hotel URLs from Google Hotels.
  2. Pick the Check-in date and Nights (or a check-out date), guests and currency.
  3. Optional: turn on Include prices from every booking site, set Consecutive check-in dates for a price calendar, add filters.
  4. Click Start and download the results as JSON, CSV, Excel or via the API.

Input

FieldWhat it does
searchQueriesGoogle Hotels searches, scraped separately.
hotelUrlsGoogle Hotels hotel pages (https://www.google.com/travel/hotels/entity/...). Always returns all booking-site prices.
checkInDate, checkOutDate, nightsStay dates. Default: 1 night, 7 days from today.
consecutiveDatesRepeat for N check-in days in a row (price calendar).
adults, currency, country, languageGuests, currency, Google market (gl) and language (hl).
maxHotelsPerSearchHotels per search and date range (default 50).
includeOffersOpen each hotel's page for all booking-site prices, address and phone.
minRating, minHotelClass, minPricePerNight, maxPricePerNight, hotelsOnlyFilters (not charged).

Example: 30-day price calendar for one hotel, 2 nights from 1 December, in euros:

{
"hotelUrls": [{ "url": "https://www.google.com/travel/hotels/entity/ChkIg-b2ismUj7M1Gg0vZy8xMWg3MThreGg1EAE" }],
"checkInDate": "2026-12-01",
"nights": 2,
"consecutiveDates": 30,
"currency": "EUR"
}

Output: Google Hotels data

One row per hotel per date range (shortened):

{
"hotelId": "ChkIg-b2ismUj7M1Gg0vZy8xMWg3MThreGg1EAE",
"name": "The Central House Lisbon Baixa",
"type": "hotel",
"hotelClass": 2,
"rating": 4.3,
"reviewCount": 751,
"ratingHistogram": { "5": 497, "4": 125, "3": 51, "2": 25, "1": 53 },
"reviewAspects": [{ "aspect": "Location", "mentions": 106, "positive": 98, "negative": 3 }],
"pricePerNight": 59.59,
"priceTotal": 119.19,
"priceBeforeTaxes": 95.51,
"taxesAndFees": 23.68,
"currency": "USD",
"deal": "32% less than usual",
"checkIn": "2026-11-12",
"checkOut": "2026-11-14",
"nights": 2,
"latitude": 38.7131,
"longitude": -9.1368,
"address": "R. dos Fanqueiros 300, 1100-233 Lisboa, Portugal",
"phone": "+351 21 887 3552",
"website": "https://www.thecentralhousegroup.com/",
"checkInTime": "2:00 PM",
"amenities": ["Free Wi-Fi", "Breakfast ($)", "Bar", "Restaurant", "Smoke-free property"],
"nearby": [{ "name": "Praça do Comércio", "category": "attraction", "travelTime": { "walking": "9 min" } }],
"photos": ["https://lh3.googleusercontent.com/...=s1024"],
"offers": [
{ "provider": "Booking.com", "pricePerNight": 65.85, "priceTotal": 131.69, "freeCancellation": false, "url": "https://www.google.com/aclk?..." },
{ "provider": "Hotels.com", "pricePerNight": 138.26, "priceTotal": 276.53, "freeCancellation": true,
"rooms": [{ "name": "Quadruple Room", "pricePerNight": 135.87, "freeCancellationUntil": "Nov 10 3:00 PM" }] }
],
"lowestPriceProvider": "Booking.com",
"url": "https://www.google.com/travel/hotels/entity/...",
"query": "hotels in Lisbon",
"position": 2
}

offers, lowestPriceProvider, address and phone come from the hotel page, so they are present for hotel URLs and when Include prices from every booking site is on.

Ready-made setups

Copy the JSON into the Input → JSON tab, click Save as a new task, then add a Schedule and an integration (Google Sheets, Slack, email, webhook) on the task's Integrations tab.

1. Daily rate shopping for your hotel and competitors (revenue managers). Next 30 check-in dates for each hotel, every booking site. Schedule: daily. About $0.30 per day for 4 hotels.

{
"hotelUrls": [
{ "url": "https://www.google.com/travel/hotels/entity/ChkIg-b2ismUj7M1Gg0vZy8xMWg3MThreGg1EAE" }
],
"nights": 1,
"consecutiveDates": 30,
"currency": "EUR"
}

2. City price index (analysts, travel startups). The 200 most visible hotels in a city for the next 7 check-in dates. Schedule: weekly. About $2.10 per run.

{
"searchQueries": ["hotels in Barcelona"],
"maxHotelsPerSearch": 200,
"consecutiveDates": 7,
"nights": 2
}

3. Deal finder (travel agencies, deal newsletters). Well-rated hotels under a price for a stay starting 7 days after each run, with the cheapest booking site. Schedule: daily, send new rows to Slack or email.

{
"searchQueries": ["hotels in Lisbon", "hotels in Porto"],
"nights": 3,
"minRating": "4.5",
"maxPricePerNight": 120,
"includeOffers": true
}

Use it from AI agents (MCP, Claude, ChatGPT, n8n)

MCP server. Add this URL to Claude, Cursor, VS Code or any other MCP client and sign in to Apify when asked:

https://mcp.apify.com?tools=d_nepoch/google-hotels-scraper
{
"mcpServers": {
"google-hotels": { "url": "https://mcp.apify.com?tools=d_nepoch/google-hotels-scraper" }
}
}

Then just ask, for example: "Find 4-star hotels in Lisbon under $150 a night for 12–14 December and tell me which booking site is cheapest for each" or "Build a 30-day price calendar for this hotel: . The agent fills searchQueries / hotelUrls, dates and filters itself.

One HTTP call (waits for the run and returns the hotels as JSON; for runs longer than 5 minutes use the async runs endpoint):

curl -X POST "https://api.apify.com/v2/acts/d_nepoch~google-hotels-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchQueries": ["hotels in Lisbon"], "maxHotelsPerSearch": 20, "checkInDate": "2026-12-12", "nights": 2}'

Python (pip install apify-client, version 3):

from apify_client import ApifyClient
client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("d_nepoch/google-hotels-scraper").call(
run_input={"searchQueries": ["hotels in Lisbon"], "maxHotelsPerSearch": 20, "includeOffers": True},
max_total_charge_usd=1, # hard spending cap for this run
)
for hotel in client.dataset(run.default_dataset_id).iterate_items():
print(hotel["name"], hotel["pricePerNight"], hotel.get("lowestPriceProvider"))

No-code and agent frameworks: the Apify integrations for n8n, Make, Zapier, LangChain, LlamaIndex and CrewAI call this Actor by the name d_nepoch/google-hotels-scraper with the same JSON input.

Tips for agents: one row = one hotel for one date range; pricePerNight and priceTotal are numbers in currency; offers is present only with includeOffers: true or hotelUrls; set maxTotalChargeUsd to cap spend.

How much does it cost to scrape Google Hotels?

Paid Apify plans get lower prices: Starter −10%, Scale −20%, Business −30% (from $1.05 per 1,000 hotels).

You pay only for hotels saved to the dataset — see the Pricing tab (at launch: $1.50 per 1,000 hotels from search, $2.50 per 1,000 hotels with prices from every booking site). Filtered-out hotels and duplicates are not charged. Set Max total charge in run options to cap your spend; the Actor stops cleanly at the limit. New Apify accounts get free monthly credits.

Example: 30-day price calendar for 10 hotels = 300 rows ≈ $0.75.

FAQ

Which proxy should I use? Keep the default Apify datacenter proxy. When Google slows down or blocks one IP, the Actor retries with a new one automatically.

Why do prices differ from what I see in my browser? Google personalizes prices by market and currency. Set country and currency to match the market you care about.

Can I get the cheapest booking site for every hotel in a city? Yes: run a search with Include prices from every booking site on and read lowestPriceProvider and offers.

Is scraping Google Hotels legal? The Actor collects only public prices and hotel information (no personal data, no login). Use it in line with Google's terms and the laws that apply to you.

Limits

  • Sponsored hotel ads at the top of Google Hotels are not included.
  • Some fields (class, rating, website) are empty when Google has no data for a property.
  • Booking links (offers[].url) are Google redirect links; they open the booking site with your dates.

Other scrapers by this developer

Feedback

Found a bug or need a field? Open an issue on the Issues tab — fixes usually ship within a few days.