Get the nightly price of one property for every check-in date of a window in one request. A whole year costs 1 credit, not one paid call per date.
What You Get
- One row per check-in date, sorted by date, with the check-out date and the number of nights
- Price as a number, the display price and the currency
- Availability: a day without a price has
available: falseandprice: null, never 0 - Window up to 365 days, stays of 1 to 7 nights and 1, 2 or 4 adults
Good to Know
- The price is the lowest price Google shows for that stay. About half of the days beyond six months have no price yet.
- Prices are live and can change between two calls. Children and infants are not supported.
- Google does not price every stay. For example, 4 adults for 3 or more nights can come back with every day unavailable on small properties.
- Cost: 1 credit per successful request. Failed requests are not billed.
Run this endpoint
Endpoint
Parameters
Start with the required fields, then add optional filters only when your use case needs them.
Runnable path
3 required parameters needed before sending a request.
5 optional filters available.
string
Required
The property token of the hotel or vacation rental.
Example: ChkI3t3pndiZ0_knGg0vZy8xMWY3N19iX214EAE
Note: From the property_token field of a Google Hotels Search result or a Google Hotels Autocomplete suggestion.
example
string
Required
First check-in date of the window, YYYY-MM-DD. Today or later.
example
string
Required
Last check-in date of the window, YYYY-MM-DD. At most 365 days after the start.
example
string
Optional
Length of the stay (1-7). Default: 1
example
string
Optional
Number of adults: 1, 2 or 4. Default: 2
example
string
Optional
3-letter currency code. Default: USD
USD
string
Optional
2-letter language code. Default: en
en
string
Optional
2-letter country code. Default: us
us
Response Schema
Example response fields are illustrative; inspect the JSON before integrating.
Example response fields
Scan these fields before integrating.
calendar
search_parameters
Common calendar fields
price
nights
currency
available
{
"calendar": [
{
"price": 81.68,
"nights": 1,
"currency": "USD",
"available": true,
"check_in_date": "2026-11-13",
"display_price": "$82",
"check_out_date": "2026-11-14",
"price_with_fees": null
},
{
"price": 118.39,
"nights": 1,
"currency": "USD",
"available": true,
"check_in_date": "2026-11-14",
"display_price": "$118",
"check_out_date": "2026-11-15",
"price_with_fees": null
},
{
"price": null,
"nights": 1,
"currency": "USD",
"available": false,
"check_in_date": "2026-11-15",
"display_price": null,
"check_out_date": "2026-11-16",
"price_with_fees": null
}
],
"search_parameters": {
"gl": "us",
"hl": "en",
"adults": 2,
"engine": "google_hotels_price_calendar",
"nights": 1,
"currency": "USD",
"check_in_end": "2026-11-15",
"check_in_start": "2026-11-13",
"property_token": "ChkI3t3pndiZ0_knGg0vZy8xMWY3N19iX214EAE"
}
}
Errors
Handle these documented responses before retrying or showing customer-facing failures.
Validation Error
The property_token, check_in_start, check_in_end, nights, adults, currency, hl or gl query parameter failed validation before the upstream request ran.
{
"errors": {
"check_in_end": [
"The check in end field is required."
]
},
"message": "The check in end field is required."
}Google Hotels Price Calendar Temporarily Unavailable
The upstream lookup failed on every try. The request is not billed.
{
"error": "Google Travel data is temporarily unavailable. Please retry shortly.",
"error_code": "google_hotels_price_calendar_temporarily_unavailable",
"status_code": 503
}Generate Code with AI
Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.
Try It Live
Test this endpoint in our interactive playground with real data.