Google Hotels Scraper: Hotel Prices, OTA Rates & Calendar avatar

Google Hotels Scraper: Hotel Prices, OTA Rates & Calendar

Pricing

from $2.00 / 1,000 hotels

Go to Apify Store
Google Hotels Scraper: Hotel Prices, OTA Rates & Calendar

Google Hotels Scraper: Hotel Prices, OTA Rates & Calendar

Google Hotels scraper for hotel prices in any city and dates: nightly and total price, deals, stars, rating and coordinates. Get every booking site's price (official site, Booking.com, Expedia and more) with rooms, a rate-parity check and a nightly price calendar up to 1 year ahead.

Pricing

from $2.00 / 1,000 hotels

Rating

0.0

(0)

Developer

vncntlabs Labs

vncntlabs Labs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

17 hours ago

Last modified

Share

Google Hotels Scraper: hotel prices, OTA rates, rate parity and price calendar

Google Hotels scraper for hotel prices. Get prices from Google Hotels for any city, landmark or hotel, for any dates and guests, including every booking site's rate (OTA rates), a rate-parity check and a nightly price calendar. Pick what you need:

  • Hotel search. Up to 150 hotels per destination and date, with nightly and total price, Google's deal label ("28% less than usual"), star class, guest rating, review count, coordinates and photo.
  • Every booking site's price. For the top N hotels or for hotels you name, you also get each site's price: the official hotel site, Booking.com, Expedia, Hotels.com, Agoda, Trip.com and more. Each site comes with room offers, free-cancellation dates and the booking link. You also get the address, phone, review breakdown (by topic and by star), reviews from other sites and location scores.
  • Rate-parity check. The official site price is compared with the cheapest online travel agency (OTA), with the gap in money and %. officialSiteUndercut flags hotels where a booking site sells below the hotel's own site.
  • Nightly price calendar. The lowest price for every check-in date over the next month, 3 months, 6 months or full year. It includes the cheapest and most expensive dates, and the average and median price.
  • Market snapshot. Each search also gets one summary row with the min, median, average and max nightly price for that destination and date.

Data comes from DataForSEO's licensed Google Hotels API, so there are no proxies, captchas or blocked runs. Most runs finish in under a minute.

Who uses it

  • Hotel owners and revenue managers: check your rate against your comp set every day, and catch OTAs undercutting your direct rate.
  • Travel agencies and tour operators: quote and compare hotels for any dates and group size, in bulk.
  • Travel startups and analysts: feed price data into apps, dashboards, AI agents and price-drop alerts. You can also study how prices change with season and lead time.

Input examples

Search a destination (top 20 hotels, 30 days from today, 2 nights, 2 adults):

{ "destinations": ["Austin, Texas"], "checkInDates": ["+30"], "nights": 2 }

Rate check for your hotel and your competitors on several dates, with a one-year price calendar:

{
"hotels": ["Hilton Austin, Austin, TX", "JW Marriott Austin, Austin, TX", "Fairmont Austin, Austin, TX"],
"checkInDates": ["+7", "+14", "+30"],
"priceCalendar": "year"
}

Luxury hotels near a landmark, cheapest first, with every booking site's price for the top 5:

{
"destinations": ["Times Square, New York, NY"],
"hotelClass": ["4", "5"], "minRating": "4.5", "sortBy": "lowest_price",
"detailsForTopHotels": 5, "checkInDates": ["2026-12-18"], "nights": 3
}

Destinations:

  • A city, region or country, e.g. Paris, Austin, TX, Bali, Japan.
  • A landmark or neighborhood followed by its city, e.g. Eiffel Tower, Paris.
  • A place we don't recognize is searched as text inside the country you set.

Hotels:

  • Hotel name, City.
  • A Google Hotels URL.
  • The hotelId from an earlier run. IDs and URLs are cheaper because they skip the name lookup.

Dates: 2026-12-18, or +30 for 30 days from today. Relative dates keep scheduled runs rolling forward.

Output example (hotel with booking-site prices, shortened)

{
"type": "hotel", "source": "search", "destination": "Austin, Texas", "checkIn": "2026-11-20", "checkOut": "2026-11-22",
"rank": 6, "hotelId": "ChYI6YrJipS6urUgGgovbS8wYm1nbnBmEAE", "name": "Hilton Austin", "hotelClass": 4,
"rating": 4.3, "reviewsCount": 6041, "pricePerNight": 184, "totalPrice": 368, "currency": "USD",
"dealText": "16% less than usual", "dealPercent": 16, "available": true,
"address": "500 E 4th St, Austin, TX 78701", "phone": "+15124828000", "neighborhood": "Downtown Austin",
"locationScore": 4.7, "locationScores": {"thingsToDo": 4.9, "restaurants": 4.9, "transit": 5, "airportAccess": 4.2},
"bookingSitesCount": 34, "lowestPrice": 184, "lowestPriceSite": "Traveluro", "medianPrice": 229,
"officialSitePrice": 229, "lowestOtaPrice": 184, "lowestOtaSite": "Traveluro",
"parityGap": -45, "parityGapPct": -19.7, "officialSiteUndercut": true,
"bookingSites": [
{"site": "Hilton Austin", "pricePerNight": 229, "totalPrice": 458, "isOfficialSite": true, "isAd": false,
"freeCancellationUntil": null, "bookingUrl": "https://...", "roomOffers": []},
{"site": "Expedia.com", "pricePerNight": 229, "isOfficialSite": false, "isAd": true,
"roomOffers": [{"room": "Room, 1 King Bed", "pricePerNight": 257, "maxGuests": 2,
"freeCancellationUntil": "2026-11-14"}]}
],
"ratingDistribution": {"5": 61, "4": 26, "3": 6, "2": 3, "1": 4},
"reviewTopics": [{"topic": "Wellness", "positiveScore": 0.43, "positive": 50, "negative": 14, "total": 70}],
"calendarPricedDays": 278, "calendarMinPrice": 111, "calendarMinDate": "2027-01-03",
"calendarMaxPrice": 1006, "calendarMaxDate": "2026-12-09", "calendarMedianPrice": 205,
"priceCalendar": [{"checkIn": "2026-11-20", "checkOut": "2026-11-21", "price": 184, "currency": "USD"}],
"googleHotelsUrl": "https://www.google.com/travel/hotels/entity/ChYI6YrJipS6urUgGgovbS8wYm1nbnBmEAE",
"chargedEvents": ["hotel", "hotel-details", "price-calendar"], "scrapedAt": "2026-10-16T21:20:11Z"
}

Dataset views:

  • Hotels: one row per hotel.
  • Rate parity: official site vs. the cheapest booking site.
  • Searches: price stats per destination and date.
  • Price calendar rows: one row per date, when you turn on one row per calendar date.

Export as JSON, CSV or Excel, or connect with the API, Zapier, Make or n8n. To track prices over time, schedule the Actor (for example daily) with relative dates like +7 and +30.

Pricing (pay per event)

EventWhen it is charged
Actor startonce per run
hotelone hotel with a price delivered from a search (a name lookup counts as one hotel too)
hotel-detailsone hotel × check-in date with every booking site's price, rooms, parity check, address, phone, reviews and location scores
price-calendarone nightly price calendar for one hotel (any range up to 1 year)

You are not charged for:

  • searches with no hotels;
  • hotels listed without a price for your dates (sold out or not bookable);
  • hotels that can't be found by name;
  • hotel details when Google shows no booking-site rates for those dates (sold out or not bookable). You still get the address, phone and reviews, with detailsStatus: "no_rates";
  • failed requests;
  • skipped inputs;
  • search summary rows and calendar rows;
  • anything beyond your run's maximum charge. The run stops cleanly and lists what it didn't process.

Hotels with no rate for your dates (sold out or not bookable) are still delivered, free, with available: false.

Apify free plan: each run gets 1 search with up to 20 hotels, plus 3 hotel-details lookups (1 with a price calendar). A paid Apify plan raises this to 300 searches, 150 hotels per search and 1,000 detail lookups per run.

FAQ

Are prices per night? Yes. pricePerNight is the nightly rate Google Hotels showed for your dates, guests and currency. totalPrice is that rate times the number of nights. Depending on the market, Google may include or exclude some taxes and fees, so compare like with like.

Why do prices differ from what I see on Google? Hotel prices change quickly, and they depend on where you browse from, on your currency and on whether you are signed in. Every row has scrapedAt and a googleHotelsUrl you can open to check.

What is isAd? Some booking-site prices are paid placements on Google. They are real offers, but their booking links go through a Google redirect.

Can I get prices for a specific room type? roomOffers lists the rooms each site shows (up to 20 per site), with price, maximum guests and free-cancellation date.

Is this the official Google Hotels API? No. Google has no public Hotels API. This Actor uses DataForSEO's licensed API and is not affiliated with or endorsed by Google.