Google Hotels Scraper (Prices, Ratings, Reviews) avatar

Google Hotels Scraper (Prices, Ratings, Reviews)

Pricing

from $3.00 / 1,000 hotels

Go to Apify Store
Google Hotels Scraper (Prices, Ratings, Reviews)

Google Hotels Scraper (Prices, Ratings, Reviews)

Search Google Hotels for any city or area and dates: get nightly prices, star class, rating, review counts and breakdown, coordinates, website, photos and Google links. Fast, no browser.

Pricing

from $3.00 / 1,000 hotels

Rating

0.0

(0)

Developer

Neatfeeds

Neatfeeds

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Search Google Hotels for any city, neighbourhood or free query, with optional check-in/check-out dates and number of adults, and get structured results: nightly price, star class, rating, review count and 1–5 star breakdown, coordinates, official website, photos and the Google hotel link.

Price: $3.00 per 1,000 hotels ($0.003 per hotel) + $0.00005 per run. One search of 20 hotels costs about $0.06.

Why this actor

  • One currency, your choice. Set currency (USD, EUR, GBP, JPY…) and every price in the run uses it, whatever country the proxy exits from. Hotels Google prices in another currency are skipped, not mixed in.
  • No browser. One HTTP request per search, with automatic proxy rotation when Google blocks: fast runs, low cost.
  • Prices for your dates. Check-in, check-out and adults go into the search; checkIn/checkOut in the output are the dates Google actually priced, so you can verify them.
  • More than the price. Star class, rating, review count with the 1–5 star breakdown, coordinates, website, photos and Google Maps IDs in one item.
  • Organic results only. Sponsored hotels are excluded; position is the organic rank.

What you can use it for

  • Hotel price monitoring and rate parity checks for specific dates.
  • Market research: compare ratings, review volume and pricing across a destination.
  • Travel apps and AI agents that need live hotel options with coordinates.
  • Lead lists of hotels with their website, by city or area.

Input

Only locations is required.

FieldWhat it does
locations (required)One search each: Rome, Trastevere, Rome, hotels near the Colosseum.
checkIn, checkOutDates in YYYY-MM-DD. Leave empty for Google's default dates.
adultsGuests; prices depend on it (default 2).
language, countryGoogle edition (en + us by default).
currency3-letter ISO code for every price in the run (USD by default; EUR, GBP, JPY…).
maxResultsPerSearchUp to 20 hotels per search.
maxResultsTotal cap (default 500).
proxyConfigurationApify Proxy by default; use residential if many searches get blocked.

Example:

{
"locations": ["Rome", "Milan"],
"checkIn": "2026-12-01",
"checkOut": "2026-12-04",
"adults": 2,
"currency": "EUR"
}

Output (one item per hotel)

{
"searchLocation": "Rome",
"position": 1,
"name": "Salotto Monti | BZAR hotels",
"hotelClass": "3-star hotel",
"stars": 3,
"rating": 4.6,
"reviewCount": 475,
"ratingBreakdown": { "1": 10, "2": 8, "3": 25, "4": 90, "5": 342 },
"pricePerNight": 110,
"priceText": "€110",
"currency": "EUR",
"checkIn": "2026-12-01",
"checkOut": "2026-12-04",
"adults": 2,
"latitude": 41.89,
"longitude": 12.49,
"description": "…",
"website": "https://…",
"countryCode": "IT",
"googleHotelUrl": "https://www.google.com/travel/hotels/entity/…",
"propertyToken": "…",
"googleMapsFeatureId": "0x…:0x…",
"images": ["https://lh3.googleusercontent.com/…"],
"scrapedAt": "2026-10-19T20:10:00.000Z"
}
FieldMeaning
searchLocation, positionThe search this hotel came from and its organic rank in it.
name, hotelClass, starsHotel name, Google's class label and the star number.
rating, reviewCount, ratingBreakdownGoogle rating (1–5), number of reviews and count per star.
pricePerNight, priceText, currencyNightly price as a number, as displayed, and its ISO currency.
checkIn, checkOut, adultsThe dates Google priced and the guests searched.
latitude, longitude, countryCodeLocation of the hotel.
description, website, imagesGoogle's short description, official website and photo URLs.
googleHotelUrl, propertyToken, googleMapsFeatureIdGoogle Hotels page and IDs to match the hotel in other Google data.
scrapedAtWhen the hotel was collected.

Pricing

Pay per event, no subscription:

EventPrice
Hotel returned$0.003 ($3.00 per 1,000)
Run start$0.00005

Examples:

  • One city search, 20 hotels: 20 × $0.003 + $0.00005 ≈ $0.06
  • A city split into 10 neighbourhoods, 200 hotels: $0.60
  • Daily price check of 20 hotels for one destination: about $1.80 per month

FAQ

How do I cap what a run costs? Set a maximum cost per run in the run options (or with maxTotalChargeUsd via the API). The actor stops cleanly when the limit is reached and keeps every hotel collected so far. maxResults caps the number of hotels as well.

Why are some fields null or some hotels missing? Fields Google does not show for a hotel (for example a price when there is no offer for your dates) are null. If Google prices some hotels in a different currency than the one you chose (an unsupported code), those hotels are skipped and not billed, with a warning in the log. A search that Google keeps blocking is reported in the log and skipped; the run continues with the others.

How do I cover a whole city? Google shows about 20 hotels per search. Run several neighbourhood or area searches (Trastevere, Rome, Monti, Rome…) in one run.

Can I call it from code, an AI agent or an automation tool? Yes. Run it through the Apify API and get the dataset in the same call:

curl -X POST "https://api.apify.com/v2/acts/Neatfeeds~google-hotels-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"locations": ["Rome"], "checkIn": "2026-12-01", "checkOut": "2026-12-04", "currency": "EUR"}'

It also works with Apify schedules, webhooks and integrations such as Make, Zapier and n8n, and with AI agents through the Apify MCP server.

Notes

  • Data comes from Google Hotels public search pages. You are responsible for how you use it.