Google Hotels Scraper — Prices, Ratings & Booking Sites avatar

Google Hotels Scraper — Prices, Ratings & Booking Sites

Pricing

from $1.50 / 1,000 hotels

Go to Apify Store
Google Hotels Scraper — Prices, Ratings & Booking Sites

Google Hotels Scraper — Prices, Ratings & Booking Sites

Google Hotels for any city and dates: up to 500 hotels per search with nightly price, stay total with taxes, deals, stars, rating, amenities, location. Optional: every booking site's price and link (Booking.com, Expedia, hotel site). Pay per hotel; failed searches are free.

Pricing

from $1.50 / 1,000 hotels

Rating

0.0

(0)

Developer

Data Fabrik

Data Fabrik

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 hours ago

Last modified

Categories

Share

Google Hotels Scraper — prices, ratings and every booking site

Scrape Google Hotels for any city, neighbourhood or landmark and any dates. For each property you get the nightly price and the stay total with taxes, Google's deal label ("35% less than usual"), star class, guest rating and review breakdown, amenities, coordinates, nearby places (airport, transit, sights with walking or driving time), photos, check-in/check-out times and the Google Hotels link.

Turn on one option and you also get every booking site's offer for each hotel — Booking.com, Expedia, Hotels.com, Agoda, Trip.com, the hotel's own website and dozens more — with the nightly price, the stay total with and without taxes, and the booking link.

  • Not just the first 20. Google shows 20 properties per page; this Actor reads the following pages and returns up to 500 hotels per search, without duplicates.
  • Price monitoring built in. Give several check-in dates and the Actor runs one search per location × date — ideal for tracking prices over weeks or comparing weekends.
  • Filters from Google itself: sort order, minimum rating, star class, price range, amenities.
  • Fast and light. Pure HTTP, no browser. A 100-hotel search takes a few seconds.
  • Fair billing. You pay per hotel with a price. Unpriced hotels, failed or empty searches are never charged.

What can you do with it?

  • Revenue management & rate shopping: compare your hotel's price with the competition in your area for every night of the season.
  • Rate parity: check whether Booking.com, Expedia or the hotel's own site is cheapest for the same stay.
  • Travel apps and AI agents: feed real hotel availability, prices and ratings into your product.
  • Market research: average price per night by city, star class or date; which amenities 5-star hotels offer; how prices move before a big event.
  • Lead lists for hospitality suppliers: hotels of a city with their class, rating, website and location.

Input

FieldWhat it doesDefault
locationsOne search per line, as you would type it in Google Hotels: Lisbon, Shinjuku, Tokyo, hotels near the Eiffel Tower, boutique hotels in Rome. A plain place name is searched as "hotels in …".required
checkInCheck-in date, YYYY-MM-DD. Empty = a stay 30 days from today (handy for schedules).today + 30
checkOutCheck-out date, YYYY-MM-DD. Empty = checkIn + nights.—
nightsLength of stay when there is no check-out date (1–30). Also used with checkInDates.1
checkInDatesMore check-in dates for price monitoring; each location × date is one search.—
adultsNumber of adult guests (1–12).2
maxResultsPerSearchHow many hotels to return per search (1–500).100
currencyCurrency of every price: USD, EUR, GBP, JPY…USD
sortByrelevance, lowest_price, highest_rating, most_reviewed.relevance
minRatingany, 3.5, 4.0, 4.5.any
hotelClassKeep only these star classes, e.g. ["4","5"].all
minPrice / maxPricePrice per night range, in the chosen currency.—
amenitiesRequired amenities: free_parking, pool, indoor_pool, fitness_center, free_breakfast, spa, beach_access, pet_friendly.—
includeOffersAlso return every booking site's offer for each hotel (opens each hotel's page).false
maxOfferLookupsPerSearchWith includeOffers, how many hotels per search get booking-site prices (first N).20
languageLanguage of names, descriptions and labels (en, fr, de…).en
countryCountry Google prices for (us, gb, fr…). Sellers and prices can differ by country.us
maxConcurrencySearches running in parallel (1–20).5
maxRetriesRetries per page, each from a new IP.6
proxyProxy settings. The default Apify Proxy is enough.Apify Proxy

Example input

{
"locations": ["Lisbon", "hotels near Sagrada Familia"],
"checkIn": "2026-11-13",
"nights": 2,
"checkInDates": ["2026-11-20", "2026-11-27"],
"adults": 2,
"currency": "EUR",
"minRating": "4.0",
"hotelClass": ["4", "5"],
"maxResultsPerSearch": 100,
"includeOffers": true,
"maxOfferLookupsPerSearch": 10
}

Output

One row per hotel (view Hotels), for example:

{
"type": "hotel",
"location": "Lisbon",
"checkIn": "2026-11-10",
"checkOut": "2026-11-12",
"nights": 2,
"adults": 2,
"currency": "USD",
"rank": 1,
"name": "Brown's | Avenue Hotel",
"hotelClass": 5,
"hotelClassLabel": "5-star hotel",
"rating": 4.6,
"reviewCount": 281,
"reviewsBreakdown": { "5star": 222, "4star": 30, "3star": 14, "2star": 7, "1star": 8 },
"pricePerNight": 222.94,
"pricePerNightWithTaxes": 245.41,
"totalPrice": 445.88,
"totalPriceWithTaxes": 490.83,
"taxesAndFees": 44.95,
"dealLabel": null,
"latitude": 38.7220236,
"longitude": -9.1456424,
"amenities": ["Breakfast", "Free Wi-Fi", "Parking ($)", "Outdoor pool", "Air conditioning", "Restaurant", "Airport shuttle"],
"nearbyPlaces": [
{ "name": "Avenida", "kind": "transit", "walk": "5 min" },
{ "name": "Humberto Delgado Airport", "kind": "airport", "drive": "24 min", "transit": "27 min" }
],
"website": "https://www.brownshotelgroup.com/browns-avenue/",
"countryCode": "PT",
"googleHotelsUrl": "https://www.google.com/travel/hotels/entity/ChkIhLCQwvjO2IYWGg0vZy8xMXE0bTZieDkyEAE",
"googleMapsUrl": "https://maps.google.com/?cid=4896003618326261334"
}

Other fields: searchedPlace (the place Google understood — check it for unusual queries), entityId, propertyType (hotel or vacation rental), phone (on hotel pages), description, checkInTime, checkOutTime, thumbnail, photos, priceDates, scrapedAt.

With includeOffers, each hotel also has offersCount, cheapestOffer and offers (view Booking-site prices):

{
"provider": "Booking.com",
"taxesIncluded": true,
"isOfficialSite": false,
"pricePerNight": 275.23,
"pricePerNightWithTaxes": 300.83,
"totalPrice": 550.46,
"totalPriceWithTaxes": 601.66,
"link": "https://www.google.com/travel/lodging/clk?…"
}

The hotel's own website comes first (isOfficialSite: true), then the other sites from cheapest to most expensive (stay total with taxes). A few sites give Google no price with taxes (taxesIncluded: false); they come last and cheapestOffer only uses them when nothing else is available.

The key-value store also holds SEARCHES — one line per search with the number of hotels, the cheapest and average price per night — and OUTPUT, the run summary.

Pricing

Pay per event — price per 1,000 hotels on the paid plans:

EventWhenFree planBronzeSilverGold+
hotelOne hotel with a price returned$2.50$2.00$1.80$1.50
hotel-offersOne hotel with every booking site's price (only with includeOffers)$4.00$3.50$3.00$2.50
  • Hotels without a price for your dates (sold out, no availability) are returned for free.
  • Searches that fail or return nothing are free and still appear in the dataset with their status, so you always know what happened.
  • A search of 100 hotels costs about $0.20 on the Bronze plan. The Actor stops cleanly when your maximum cost per run is reached.

Tips

  • Prices are for the whole room for the number of adults you set, in the currency you choose.
  • A property with no price for your dates (sold out) still appears, with empty price fields — and is not charged.
  • country matters: booking sites and taxes shown by Google depend on it.
  • Booking links go through Google's redirect, as on the website; open them soon after the run.

The Actor reads public pages of Google Hotels, the way a visitor does, without logging in. It collects hotel information (businesses), not personal data. You are responsible for using the data in line with the laws and terms that apply to you.

Support

Something missing or not working? Open an issue on the Actor's page — issues are answered quickly.