Google Hotels Scraper
Pricing
from $0.80 / 1,000 results
Google Hotels Scraper
Extract hotel search results from Google Hotels for any city or place — no login, no browser, no API key. Get price, star class, rating, review count and coordinates for every hotel Google lists, for your exact check-in/check-out dates. Batch multiple locations to compare markets side by side.
Pricing
from $0.80 / 1,000 results
Rating
0.0
(0)
Developer
MrDoe
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Scrape Google Hotels data — hotel and vacation-rental names, nightly prices, star class, guest ratings, review counts, coordinates, and Google Maps links — for any location, without a Google account, login, or official API. The Google Hotels Scraper takes a place name or a google.com/travel/hotels URL and returns clean structured JSON for hotel price comparison, travel market sizing, and building your own Google Hotels dataset or API feed.

What is the Google Hotels Scraper?
The Google Hotels Scraper is an Apify Actor that extracts hotel search results from Google Hotels / Google Travel for a location. Give it a place (a city, a neighbourhood, or a google.com/travel/hotels URL) and it returns every hotel and vacation rental Google lists there — with nightly price, star class, rating, review count, and latitude/longitude — plus a summary row carrying the total number of properties Google shows for that location. Output is one flat JSON row per hotel, ready for Excel, Google Sheets, or an API integration.
How to scrape Google Hotels prices
- Fill
locationwith a place name (e.g.Paris,Times Square, New York) or a fullgoogle.com/travel/hotels/...URL. Uselocationsfor a batch. - Set
checkIn/checkOutdates,currency, andadults. - Set
maxItemsto cap the number of hotel rows. - Click Start. Export as JSON, CSV, Excel, or via the dataset API.
What data can I extract from Google Hotels?
| Field | Type | Description |
|---|---|---|
kind | string | hotel or locationSummary |
status | string | success or error |
query | string | The location you passed in |
location | string | Resolved location label |
name | string | Hotel or vacation-rental name |
propertyType | string | e.g. hotel, vacation rental |
hotelClass | integer | Star class, 1–5 (when Google shows it) |
rating | number | Guest rating out of 5 |
reviewCount | integer | Number of guest reviews |
price | string | Displayed nightly price, e.g. $187 |
priceAmount | number | Numeric nightly price |
currency | string | Currency code for the price |
latitude / longitude | number | Coordinates |
mapsUrl | string | Google Maps link for the property |
propertyToken | string | Google's internal property token |
checkIn / checkOut | string | Stay dates used, YYYY-MM-DD |
hotelCount | integer | Total properties Google lists for the location (locationSummary) |
hotelsListed | integer | How many hotel rows this run returned (locationSummary) |
errorMessage | string | Why a lookup failed |
Input example
{"location": "New York","checkIn": "2026-09-20","checkOut": "2026-09-22","currency": "USD","adults": 2,"maxItems": 10,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
Output example
[{"kind": "locationSummary","status": "success","query": "New York","location": "New York","checkIn": "2026-09-20","checkOut": "2026-09-22","currency": "USD","hotelCount": 146,"hotelsListed": 10},{"kind": "hotel","status": "success","query": "New York","name": "The Manhattan at Times Square Hotel","location": "New York","checkIn": "2026-09-20","checkOut": "2026-09-22","propertyType": "hotel","hotelClass": 4,"rating": 4.2,"reviewCount": 10190,"price": "$187","priceAmount": 187,"currency": "USD","latitude": 40.7622856,"longitude": -73.9826404,"mapsUrl": "https://www.google.com/maps/search/?api=1&query=40.7622856,-73.9826404","propertyToken": "ChkIooCAqvyy0fDgARoML2cvMWhoZ18zbWdzEAE"}]

What you get vs. browsing Google Hotels manually
| Task | Manually on Google Hotels | With the Google Hotels Scraper |
|---|---|---|
| Pull nightly rates for every hotel in a city | Scroll and read each card | One run, one dataset |
| Count how many properties a city has | Estimate from the results | hotelCount on the summary row |
| Compare prices across several cities | Search each one | Batch locations, one run |
| Map hotel locations and prices | Note pins by hand | latitude / longitude on every row |
| Get the data into Excel / a database | Manual copy-paste | Built-in JSON / CSV / Excel + dataset API |
How to use it (step by step)
- Enter a place name or a Google Hotels URL.
- Set dates, currency, and guest count.
- Set
maxItemsto cap rows per location. - Run and export — dataset tab or
GET /v2/datasets/{id}/items. - Schedule it for recurring price tracking across your markets.
Pricing
Pay-per-event: a small run-start charge, then a per-row charge for each hotel row. Rows with status error are not charged. Exact rates are on the Actor's Pricing tab. [PRICING TBD]
FAQ
What is the Google Hotels Scraper? An Apify Actor that extracts hotel and vacation-rental search results from Google Hotels / Google Travel for any location — name, price, star class, rating, reviews, coordinates — as structured JSON, CSV, or Excel.
Do I need a Google account, API key, or login? No.
What inputs are accepted? A place name (Paris, Times Square, New York) or a full google.com/travel/hotels/... URL. Use locations for a batch.
How many hotels does one location return? Google typically lists 100+ properties for a major city; maxItems caps how many rows you receive, and hotelCount reports the full total.
Are addresses and per-hotel review text included? No — this Actor returns name, price, class, rating, review count, and coordinates. A full address or a review list would require a separate per-hotel call this Actor does not make.
Do I need a proxy? A residential proxy is offered as a safety margin for reliability at scale, but is not strictly required.
What export formats are available? JSON, CSV, Excel, HTML table, RSS, or the Apify dataset API.
Is scraping Google Hotels legal? The Actor accesses only publicly available data shown to anonymous visitors. You are responsible for compliant use under Google's terms and the laws that apply to you. Not affiliated with Google.
My other travel scrapers on Apify
| Actor | What it does |
|---|---|
| Trip.com Hotel Scraper | Hotel prices, ratings, and best room rate from Trip.com |
| Trip.com Review Scraper | Guest reviews and stay details from Trip.com |
| Booking.com Listings Scraper | Hotel prices, ratings, and room types from Booking.com |
| Booking.com Review Scraper | Guest review text and scores from Booking.com |
| Expedia Hotel Scraper | Hotel listings and per-room rates from Expedia |
| Expedia Review Scraper | Traveler reviews and sentiment from Expedia |
| Agoda Hotel Scraper | Hotel details and live city pricing from Agoda |
| Agoda Review Scraper | Guest reviews and stay details from Agoda |
| TripAdvisor Hotel Scraper | Hotel details plus per-OTA room rates from TripAdvisor |
| TripAdvisor Review Scraper | Full guest reviews and sub-ratings from TripAdvisor |
| Airbnb Search Scraper | Listings, prices, and hosts from Airbnb search |
| Airbnb Room Reviews Scraper | Reviews, ratings, and host replies from Airbnb listings |
| Airbnb & Vrbo Revenue and Occupancy Estimator | Estimated revenue and occupancy for short-term rentals |

Independent tool, not affiliated with or endorsed by Google. Accesses only publicly available data. Report bugs or request features on the Issues tab.