Google Hotels Scraper - Nightly Prices, Stars & Booking Sites avatar

Google Hotels Scraper - Nightly Prices, Stars & Booking Sites

Pricing

from $4.00 / 1,000 hotels

Go to Apify Store
Google Hotels Scraper - Nightly Prices, Stars & Booking Sites

Google Hotels Scraper - Nightly Prices, Stars & Booking Sites

List the hotels Google Hotels shows for any city or area, priced for your dates and guests: per-night rate, stay total with taxes, hotel class, guest score, reviews, amenities, deals, map position and photos, plus each booking site's rate on request. $4 per 1,000 hotels; failed pages are free.

Pricing

from $4.00 / 1,000 hotels

Rating

0.0

(0)

Developer

Tenfold Fleet

Tenfold Fleet

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

11 hours ago

Last modified

Share

What does Google Hotels Scraper do?

Google Hotels Scraper lists every hotel in a destination that Google Hotels shows for your check-in date, check-out date and guests, with the nightly price, what the whole stay costs (taxes and fees broken out), star class, guest rating, review count, amenities, deal badges, coordinates, photos and the hotel's website. Switch on one option and it also opens each hotel's rate list for the price from each booking site (Booking.com, Expedia, Agoda, Hotels.com, the direct rate on the hotel's website and others), plus the cheapest seller, the street address and the phone.

Type a city, region, neighborhood or landmark (Lisbon, Austin, TX, Shinjuku, Tokyo), pick your dates, and get a clean table to export, or use the Actor as a Google Hotels API in scripts, n8n, Make or Zapier workflows and AI agents. It reads Google's pages over plain HTTP, without a browser, so 100 hotels take seconds.

Not affiliated with Google. Google Hotels is a Google LLC trademark, named here only to say where the data comes from.

How it differs from our Google Travel Hotel Rate Tracker: this Actor starts from a place and finds the hotels there, one row per hotel with one price for one stay. The rate tracker starts from hotels you already know and follows each one's booking-site rates across many stay dates.

Why use this Google Hotels scraper?

  • 🏨 Whole-destination coverage: it walks through Google's result pages and drops the properties repeated between them, so 100 hotels per city take about 7 pages, and big cities reach several hundred.
  • 📅 Prices you can trust: Google quietly switches to other dates (or another currency) when it cannot price yours. This Actor checks the dates, nights, currency, adults and child ages behind every page against your input. A mismatch is reported as a free error row and is never charged.
  • 📈 Rate monitoring: schedule it daily with Check-in days from today (for example always 30 days ahead) and track how a market's prices move.
  • 💼 Revenue management: compare your hotel with every competitor in the area by stars, rating and nightly rate for the same stay.
  • 🧭 Travel comparison and agency tools: feed hotel lists, photos, amenities and booking-site prices into your own site or app.
  • ✅ Measured reliability: in our cloud tests on 23-24 Oct 2026, 441 of 441 Google pages (search pages and price lists for 66 destinations, up to 20 at a time) loaded on the first try from Apify servers, and every destination returned hotels. A blocked page is retried once through Apify's datacenter proxy; a page that still fails comes back as a free error row.
  • 💸 Pay only for real hotels: filtered properties, repeats, blocked pages and unrecognised destinations cost nothing.

What data can it extract?

FieldExample
name, propertyTypeCzar Lisbon Hotel, hotel (or vacation rental)
position2 (rank in Google's list for the destination)
starClass, rating, reviewCount4, 4.1, 1468
nightlyPrice, totalPrice106.05, 212.09 (for the whole stay)
priceBeforeTaxes, taxesAndFees183.17, 28.92
currency, checkIn, checkOut, nights, adults, children, childAgesUSD, 2026-11-12, 2026-11-14, 2, 2, 0, []
dealBadge, dealTextDEAL, 19% less than usual
amenities["Breakfast", "Free Wi-Fi", "Parking", "Air conditioning", "Bar", ...]
latitude, longitude, countryCode38.7293, -9.1348, PT
website, hotelUrl, googleMapsUrlhotel site, Google Hotels page for your dates, Google Maps link
description, checkInTime, checkOutTime, imageUrlsshort description, 3:00 PM, 12:00 PM, up to 10 photos
entityId, googlePlaceIdGoogle's hotel id and place id, stable for joins between runs
otaOffers (option)[{"provider": "Agoda", "nightlyPrice": 106.05, "totalPrice": 212.09, "isOfficialSite": false, ...}]
lowestPriceProvider, lowestOfferPrice, address, phone (option)Agoda, 106.05, Av. Alm. Reis 103, 1150-020 Lisboa, Portugal, +351 21 111 5200

How to scrape Google Hotels prices

  1. Open the Actor in Apify Console with Try for free.
  2. In Destinations, add one or more places, e.g. Lisbon, Austin, TX.
  3. Set the check-in and check-out dates (or Nights), the adults, and the children with their ages.
  4. Choose the currency, Max hotels per destination, and any filters (minimum stars, hotels only, skip hotels without a price).
  5. Optional: turn on Add booking-site prices for each site's rate.
  6. Press Start. When the run ends, export the table as JSON, CSV, Excel or HTML, or fetch it through the Apify API.

How much does it cost?

Pay-per-event pricing, the same on every Apify plan:

EventPrice
Hotel (one property with its details and price for your stay)$4 per 1,000 hotels ($0.004 per hotel)
Booking-site prices (only with that option on, per hotel whose price list was read)$5 per 1,000 hotels ($0.005 each)
Run start$0.00005 per run

Free of charge: properties removed by your filters, repeats across result pages, blocked or failed pages, destinations Google does not recognise, and any page where Google priced other dates, guests or currency than you asked for. When a price list fails, or a sold-out hotel's list has no booking site in it, the hotel is charged as a hotel only.

Examples: 10 cities with 100 hotels each cost about $4. The same with booking-site prices cost about $9. On the Apify free plan, the $5 monthly credit covers about 1,200 hotels, or about 550 with booking-site prices. Put a cap in Max cost per run; the Actor ends cleanly once the cap is used up.

Input

{
"destinations": ["Lisbon", "Austin, TX"],
"checkIn": "2026-12-04",
"checkOut": "2026-12-07",
"adults": 2,
"children": 1,
"childAges": [8],
"currency": "EUR",
"country": "us",
"maxHotelsPerDestination": 100,
"minStars": 3,
"excludeVacationRentals": true,
"includeOtaPrices": true
}

For schedules, leave checkIn empty and set "checkInDaysFromToday": 30 with "nights": 2.

Output

One row per hotel. Export it as JSON, CSV, Excel, XML or HTML.

{
"destination": "Lisbon",
"resolvedDestination": "Lisbon",
"position": 2,
"name": "Czar Lisbon Hotel",
"propertyType": "hotel",
"starClass": 4,
"rating": 4.1,
"reviewCount": 1468,
"nightlyPrice": 106.05,
"totalPrice": 212.09,
"priceBeforeTaxes": 183.17,
"taxesAndFees": 28.92,
"currency": "USD",
"checkIn": "2026-11-12",
"checkOut": "2026-11-14",
"nights": 2,
"adults": 2,
"children": 0,
"childAges": [],
"dealBadge": "DEAL",
"dealText": "19% less than usual",
"lowestPriceProvider": "Agoda",
"lowestOfferPrice": 106.05,
"otaOffers": [
{ "provider": "Agoda", "nightlyPrice": 106.05, "totalPrice": 212.09, "isOfficialSite": false, "isSponsored": false, "bookingLink": "https://www.google.com/travel/lodging/clk?..." },
{ "provider": "Booking.com", "nightlyPrice": 156.4, "totalPrice": 312.8, "isOfficialSite": false, "isSponsored": false, "bookingLink": "https://www.google.com/travel/lodging/clk?..." }
],
"address": "Av. Alm. Reis 103, 1150-020 Lisboa, Portugal",
"phone": "+351 21 111 5200",
"latitude": 38.7293279,
"longitude": -9.1348492,
"countryCode": "PT",
"website": "http://www.czarlisbonhotel.com/",
"amenities": ["Breakfast", "Free Wi-Fi", "Parking", "Air conditioning", "Bar", "Restaurant", "Room service", "Airport shuttle", "Full-service laundry", "Accessible", "Business center", "Kid-friendly", "Smoke-free property"],
"description": "Understated rooms in a polished lodging featuring an elegant restaurant, a bar & breakfast.",
"checkInTime": "3:00 PM",
"checkOutTime": "12:00 PM",
"imageUrls": ["https://lh3.googleusercontent.com/..."],
"hotelUrl": "https://www.google.com/travel/hotels/entity/ChcI0e_Z0vHt2vYxGgsvZy8xdGd0Z3MwdhAB?hl=en-US&gl=us&ts=...",
"entityId": "ChcI0e_Z0vHt2vYxGgsvZy8xdGd0Z3MwdhAB",
"googlePlaceId": "0xd193399ff4fa2a3:0x31ed6b6f1a5677d1",
"googleMapsUrl": "https://maps.google.com/?cid=3597649802266310609",
"scrapedAt": "2026-10-23T11:43:28.210Z"
}

A destination that is blocked, unknown or priced for other dates adds one free row with an error field, so you know what to run again.

Tips

  • Name the place precisely: Springfield, IL, Shinjuku, Tokyo or Eiffel Tower work best, and resolvedDestination shows what Google matched. When Google can't place the text, it answers with hotels from all over your search region; the Actor detects this and returns one free error row.
  • Children and bigger groups: each child is priced by age, and some booking sites have no rate for three or more guests in one room, so expect fewer offers there.
  • Booking links in otaOffers are Google's redirect links, copied as they appear. The Actor never follows them.
  • Sold out? A listed property with no rate for your stay has an empty nightlyPrice. Turn on Skip hotels without a price to keep priced rows only.
  • Money and region: currency is the money every price is shown in; if Google can't price in it you get a free currency mismatch row. country is the Google region you search from and mostly affects the booking partners listed.

AI agents and MCP

Any assistant that speaks MCP can use this Actor via Apify's MCP server. Point the client at https://mcp.apify.com?tools=tenfoldfleet/google-hotels-scraper; it asks you to log in to Apify once. The agent then writes the input, starts the run and reads the hotels, at the same per-event price as any run.

FAQ

Does Google block it?

Not in our tests: 441 of 441 pages loaded on the first try from Apify servers, at up to 20 destinations in parallel, with no proxy. If Google starts refusing pages, the Actor switches the rest of the run to Apify's datacenter proxy by itself, and you are never charged for a page that failed.

Does it need a Google login, API key or cookies?

No login, key or cookie is involved: the Actor loads the same public pages your browser shows when you are signed out.

How many hotels does one destination return?

As many as Google lists, up to 500. Each results page holds roughly 20 properties and neighbouring pages overlap; the Actor skips the repeats and stops when a page adds nothing new.

How do you make sure the price is for my dates?

Every Google page states the dates, nights, guests and currency it was priced for. The Actor compares them with your input on every page and every price list. If Google answered for something else (for example a date in the past), you get a free date mismatch, occupancy mismatch or currency mismatch row instead of wrong prices.

Does it include vacation rentals?

Yes: Google's hotel list also contains apartments and other rentals, and propertyType tells them apart. Turn on Hotels only to drop them, or set Minimum hotel class.

Can I scrape one hotel over many dates?

This Actor reads a whole destination for one stay. For one hotel across a date range, use our Google Travel Hotel Rate Tracker.

It reads only what Google Hotels shows to every visitor: business listings and their prices, no personal data. Whether your particular use is allowed depends on where you are and what you do with it, so get legal advice if in doubt.

More tools from Tenfold Fleet

ActorOutput
ALDI Australia Scraper - AU Products, Unit Prices & Catalogueproduct
Alibaba Image Search - Reverse Lookup of Suppliers by Photomatched product
Alibaba Products Scraper: Wholesale Suppliers, MOQ, Price Tiersproduct
AliExpress Keyword Scraper - Exact Sold Counts by Search Termproduct
Amazon Product Scraper - Details, Prices & Search by ASINproduct
Applicant Tracking Jobs Scraper - Greenhouse, Lever & 6 Morejob posting
Backlinks Checker - Referring Domains, Anchors & Domain Rankbacklink
Bilibili Scraper - Videos, Comments, Danmaku & Searchvideo or comment
Businesses Without Websites - Local Leads with Phone & Ratinglead
Contact Details Scraper - One Lead Record per Company Websitewebsite with contacts
Facebook Ads Library Scraper for Marketersad
Facebook Page Contact Finder - Business Leads from Page Linkspage with contact details
Google Ads Transparency Center Scraper - Competitor Ads by Sitead
Google AI Overviews Checker - Citations & Domain Trackerkeyword checked
Google Flights Scraper - All Fares per Route & Date (API)route search
Google for Jobs Scraper - Openings by City, Pay & Job Boardjob listing
Google Keyword Planner Alternative - Ideas, Bids & Volumekeyword idea
Google Maps Extractor - Business Leads, Phones & Websitesplace
Google News Scraper - Articles, Real URLs & Full Textarticle
Google Travel Hotel Rate Tracker - OTA Prices for Every Nightoffer
Search Trends by Region & Time - Google Trends Data Scraperkeyword
Instagram Reels Search - Keyword to Top Reels, Plays & Creatorsreel
Instagram Reels Transcript - Speech to Text for Public Reelsreel transcript
Keyword Ideas & Related Keywords - Difficulty, Volume & CPCkeyword idea
Keyword Search Volume, CPC & Difficulty Checker (Bulk)keyword with data
Likee Scraper - Creators by Country, Video Views & Likesvideo
LinkedIn Ads Library Scraper - Competitor Ad Copy & Targetingad
Reddit Brand Monitoring - Keyword Alerts for Posts & Commentsmention
Remote Job Board Scraper - Remote Jobs Aggregator, 7 Sitesunique remote job
SEEK Jobs Scraper - Salaries & Hiring Across 8 APAC Job Boardsjob listing
SEO Agent - AI Keyword Research & Competitor Reportsresearch report
SEO Crawler - Technical SEO Audit Tool & On-Page Checkerpage audit
SEO Competitor Keywords - Domain Ranked Keywords & Keyword Gapkeyword
Shopify Inventory Scraper - SKUs, Variants & In-Stock Statusproduct
Shopify App & Theme Detector - Store Analyzer & Contactsshopify store
Sitemap URL Extractor - All URLs from sitemap.xml & robots.txturl
Website Built With Checker - Find Any Site's CMS & Tech Stackwebsite
Threads Search - Keyword & Profile Posts Scraper (No Login)post
TikTok Transcripts - Captions or Speech to Text for Any Videovideo transcript
HTML to Text & URL to Markdown - LLM Ready Web Contentpage
Website Traffic Checker - Bulk Domain Traffic Estimatedomain with traffic data
WeChat Official Account Articles - Keyword Search to Markdownarticle found
Weibo Scraper - Comment Threads, Hot Search Ranks & User Statscomment
Woolworths Product Scraper - AU Shelf Prices, Specials & GTINsproduct
Workday Jobs Scraper - myworkdayjobs.com API with Salaryjob posting
YouTube Channel Email Scraper - Creator Contact Extractorchannel with email
YouTube Livestream & Channel Scraper - Videos, Likes & Statsvideo
YouTube Comments Scraper - Replies, Likes & Sort by Newestcomment
YouTube Shorts Analytics Scraper - Views, Likes & Hashtagsshort
YouTube Captions Downloader - Transcript & Subtitles Scrapertranscript