Google Hotels
Forward rate calendars and destination search.Nightly rates for up to 330 nights in one call from Google's calendar data, per-seller offers and room types for a single night, and the hotels Google lists for a destination with their prices. Name a hotel once, get its property token, and every Google endpoint keys off it.
- Look up by
- Hotel name (resolved to a property token) or a property token
- Coverage
- Worldwide; market and currency are selectable, taxes and fees normalized per market
- Cost
- From 2 credits a call; failed and empty calls are free
- Endpoints
- 13 endpoints
- Search
- Prices
- Date calendar
- Rooms and rate plans
- Reviews
- Details
- SERP API shape
Endpoints
- GET
/v1/marketsList marketsFree - POST
/v1/searchSearch properties2 credits - POST
/v1/calendarCalendar8+ credits - POST
/v1/stayStay5 credits - POST
/v1/offersOffers10 credits (14 with require_rooms) - POST
/v1/roomsRoom matrix5 credits - POST
/v1/hotels/searchDestination search4 credits - POST
/v1/serp/google_hotelsGoogle Hotels search (SERP-compatible)4 credits - POST
/v1/serp/google_hotels_propertyGoogle Hotels property (SERP-compatible)5 credits - POST
/v1/serp/google_hotels_calendarGoogle Hotels calendar (SERP-compatible)8 credits - POST
/v1/hotels/reviewsGoogle Hotels reviews2+ credits - POST
/v1/hotels/propertyProperty details5 credits - POST
/v1/hotels/resolveResolve by name and address12 credits
Example
Calendar, with POST /v1/calendar. Set SCRAPERCOMPANY_API_KEY to your key and run it; the full parameter list is in the API reference.
curl -X POST "https://api.scrapercompany.com/v1/calendar" \
-H "x-api-key: $SCRAPERCOMPANY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"token": "ChUIoben2Mv6-CYaCi9tLzA3czVwbjQQAQ",
"market": "US",
"currency": "USD",
"days": 90
}'200 response
{
"token": "ChUIoben2Mv6-CYaCi9tLzA3czVwbjQQAQ",
"market": "US",
"collection_id": "ratecol_0123456789abcdef0123456789abcdef",
"observed_at": "2026-08-07T01:23:45.678Z",
"requested_days": 90,
"coverage": 0.9333,
"elapsed_s": 0.31,
"calendar_elapsed_s": 0.14,
"unpriced_dates": [
"2026-11-24"
],
"validation": {
"ok": true,
"errors": [],
"warnings": []
},
"tax_profile": {
"rate": 0.2032,
"confidence": "high",
"itemised": 84,
"derived": 0
},
"rates": [
{
"stay_date": "2026-11-09",
"rate": 332.01,
"rate_base": 332.01,
"rate_total": 424.48,
"tax": 67.47,
"fees": 25,
"currency": "USD",
"market": "US",
"rates_include_tax": false,
"adults": 2,
"los": 1,
"implied_tax_rate": 0.203217,
"provenance": {
"schema_version": 1,
"observation_id": "rateobs_0123456789abcdef0123456789abcdef",
"collection_id": "ratecol_0123456789abcdef0123456789abcdef",
"observed_at": "2026-08-07T01:23:45.678Z",
"source": "google_hotels_calendar",
"source_kind": "calendar",
"source_property_id": "ChUIoben2Mv6-CYaCi9tLzA3czVwbjQQAQ",
"requested_market": "US",
"requested_currency": "USD",
"returned_currency": "USD",
"price_basis": "room_base_before_taxes_and_fees",
"derivation": "normalized_upstream"
}
}
]
}Good to know
- One calendar call replaces one request per night.
- Destination search returns about 20 properties a page with price, rating, class and amenity filters, each with the property token the calendar takes.
- Offers and rooms break one night down by seller, the OTAs and the hotel's own site; offers cost 10 credits (14 with require_rooms).
- SERP-compatible shapes are served at /v1/serp/google_hotels, /v1/serp/google_hotels_calendar and /v1/serp/google_hotels_property.
Guides
Search a destination, then price a hotel
Read Price the next 90 nights
Read Find a property token
Read Identify a property by name and address
Read Monitor a comp set with jobs and webhooks
Read More hotel prices and metasearch
Many sellers for one hotel at once, and forward calendars of nightly rates.
Or browse every data source.
Questions about this page?
Send the page link and your question, and the team will answer.