Google Hotels Info API
Retrieve detailed information for a specific hotel including ratings, amenities, pricing, images, and location data.
Overview
Query-Based Search
Search by hotel name to get comprehensive property details from Google Hotels.
The Google Hotels Info endpoint fetches detailed hotel information using a simple query-based search. Provide the hotel name (e.g., "The Plaza New York", "Bellagio Las Vegas") along with check-in/check-out dates to get complete property details including ratings, reviews, amenities, pricing, and images.
Endpoint URL
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | string | Required | Hotel name or search query (e.g., "The Plaza New York", "Bellagio Las Vegas", "Four Seasons Bangkok") |
| check_in | string | Required | Check-in date in YYYY-MM-DD format (must be in the future) |
| check_out | string | Required | Check-out date in YYYY-MM-DD format (must be after check_in) |
| adults | integer | Optional | Number of adults (1-10). Default: 2 |
| currency | string | Optional | Currency code for prices (e.g., USD, EUR, GBP, THB, JPY). Default: "USD" |
Response Format
The API returns comprehensive hotel information with metadata about the search:
{
"query": "The Plaza New York",
"check_in": "2025-11-01",
"check_out": "2025-11-03",
"hotel": {
"name": "The Plaza",
"type": "hotel",
"description": "In a landmark 19th-century building...",
"link": "https://www.theplazany.com/...",
"property_token": "ChUIneeg3YDGqvthGgkvbS8wNDJ5N2oQAQ",
"address": "768 5th Ave, New York, NY 10019",
"phone": "(212) 759-3000",
"gps_coordinates": {
"latitude": 40.7646318,
"longitude": -73.9743251
},
"check_in_time": "3:00 PM",
"check_out_time": "12:00 PM",
"rate_per_night": {
"lowest": "$1,542",
"extracted_lowest": 1542,
"before_taxes_fees": "$1,341",
"extracted_before_taxes_fees": 1341
},
"total_rate": {
"lowest": "$3,085",
"extracted_lowest": 3085,
"before_taxes_fees": "$2,682",
"extracted_before_taxes_fees": 2682
},
"overall_rating": 4.5,
"reviews": 6775,
"ratings": [
{
"stars": 5,
"count": 4025
},
{
"stars": 4,
"count": 1850
}
],
"hotel_class": "5-star hotel",
"extracted_hotel_class": 5,
"amenities": [
"Free Wi-Fi",
"Restaurant",
"Fitness center",
"Spa",
"Room service",
"Concierge"
],
"images": [
"https://lh3.googleusercontent.com/...",
"https://lh3.googleusercontent.com/..."
],
"featured_prices": [
{
"source": "Hotels.com",
"logo": "https://www.gstatic.com/...",
"rate_per_night": {
"lowest": "$1,542"
}
}
]
},
"search_metadata": {
"search_url": "https://www.google.com/travel/hotels/...",
"datetime": "2025-01-09T14:00:00Z"
}
}
Response Fields
Hotel Basic Information
- name: Official hotel name
- type: Property type (always "hotel")
- description: Detailed hotel description
- address: Full street address
- phone: Contact phone number
- link: Official hotel website URL
- property_token: Unique Google property identifier
Location & Coordinates
- gps_coordinates: Latitude and longitude for mapping
- directions: Google Maps directions URL
Ratings & Reviews
- overall_rating: Average rating (0-5 scale)
- reviews: Total number of reviews
- ratings: Breakdown by star count (5-star, 4-star, etc.)
- reviews_breakdown: Category scores (location, cleanliness, service, etc.)
Pricing Information
- rate_per_night: Nightly rate with formatted string and extracted numeric value
- total_rate: Total stay cost with taxes and fees
- before_taxes_fees: Pricing before taxes and fees
- featured_prices: Prices from booking platforms (Hotels.com, Expedia, etc.)
Amenities & Features
- amenities: List of all hotel amenities (typically 30-60 items)
- excluded_amenities: Features explicitly not available
- hotel_class: Star rating with description (e.g., "5-star hotel")
- check_in_time / check_out_time: Standard check-in and check-out times
Images & Media
- images: Array of hotel images (typically 5-10 high-quality images)
Error Responses
All errors follow the RFC 7807 Problem Details format:
Bad Request - Past Dates
Check-in date cannot be in the past
{
"error": "Request failed with status code 400",
"provider": "google_hotels",
"error_code": "UPSTREAM_ERROR"
}
No Results Found
No matching hotel found for the query
{
"error": "No matching hotels found for the supplied query",
"provider": "google_hotels",
"error_code": "NO_RESULTS"
}
Upstream Error
Upstream service error
{
"error": "Request failed: timeout",
"provider": "google_hotels",
"error_code": "UPSTREAM_ERROR"
}
Usage Tips
Best Practices
- • Include the city name in your query for better results (e.g., "The Plaza New York" instead of just "The Plaza")
- • The API returns the closest match if exact hotel name not found
-
•
Check the returned
namefield to verify correct hotel was found - • Prices adjust automatically based on the number of adults specified
- • Supports international hotels with unicode characters (e.g., "Hôtel Plaza Athénée Paris")
- • Check-in dates must be in the future or the API will return 400 error