Google Travel Hotel Prices
Pricing
from $1.00 / 1,000 results
Google Travel Hotel Prices
This actor extracts real-time pricing information for a given hotel across multiple dates and provides comprehensive price comparisons from various booking providers.
Google Travel Hotel Price Scraper
A powerful Apify actor that scrapes hotel pricing data from Google Travel for a specific hotel. This actor extracts real-time pricing information for a given hotel across multiple dates and provides comprehensive price comparisons from various booking providers.
🏨 What it does
This actor scrapes Google Travel's hotel pricing data for a specific hotel by:
- Single hotel focus: Scrapes pricing data for one specific hotel (identified by entity ID)
- Multi-date scraping: Generates price data for consecutive days starting from your check-in date
- Provider comparison: Extracts prices from multiple booking providers (OTAs) for the same hotel
- Real-time data: Gets current pricing directly from Google Travel's API
- Comprehensive output: Provides detailed pricing information including provider names and official vs third-party rates
📊 Output Format
The actor outputs one item per booking provider per date. A run over multiple days for a hotel with many providers therefore produces one row for each provider/date combination:
{"provider": "Booking.com","isOfficial": false,"price": 150,"price2": 180,"adults": 2,"currency": "USD","checkInDate": "2025-07-20","checkOutDate": "2025-07-21"}
| Field | Description |
|---|---|
provider | Booking provider / OTA name (e.g. Booking.com) |
isOfficial | true if this is the hotel's official rate |
price | Nightly price, rounded, in the requested currency |
price2 | Secondary price for the row when Google returns one (e.g. taxes-in) |
adults | Number of adults the price is for |
currency | ISO 4217 currency code of the prices |
checkInDate / checkOutDate | The night the price applies to |
🔧 Input Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
checkInDate | string | ✅ | Check-in date in YYYY-MM-DD format |
days | integer | ✅ | Number of consecutive days to scrape (minimum: 1) |
adults | integer | ✅ | Number of adult guests (minimum: 1) |
currency | string | ✅ | Currency code (e.g., USD, EUR, JPY) |
entity | string | ✅ | Google Travel entity ID (specific hotel identifier) |
proxyConfig | object | ❌ | Proxy configuration settings |
Proxy Configuration
Recommended: start with datacenter proxies. They are cheaper and fast, and work for most hotels/dates. Only switch to residential proxies if datacenter requests get blocked or return empty pages.
1. Try datacenter proxies first:
{"useApifyProxy": true}
2. If that doesn't work, fall back to residential proxies from the country
you're scraping for (match apifyProxyCountry to that market):
{"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "US"}
🆔 How to Find Entity IDs
Entity IDs are unique identifiers for specific hotels in Google Travel. You need to find the entity ID for the exact hotel you want to scrape. Here's how to find them:
Method 1: From Google Travel URL
- Go to Google Travel
- Search for your desired hotel
- Click on the hotel to view its page
- Look at the URL - the entity ID is in the path:
https://www.google.com/travel/hotels/entity/ChgIw-i9jd_587w3GgwvZy8xcHR4cWI4OTIQAQ↑Entity ID here
Example: From the URL https://www.google.com/travel/hotels/entity/ChgIw-i9jd_587w3GgwvZy8xcHR4cWI4OTIQAQ, the entity ID is ChgIw-i9jd_587w3GgwvZy8xcHR4cWI4OTIQAQ
Method 2: Using Browser Developer Tools
- Open Google Travel in your browser
- Navigate to a hotel page
- Open Developer Tools (F12)
- Go to Network tab
- Look for API requests containing the entity ID
- The entity ID will appear in request URLs or response data
Method 3: From Google Maps
- Search for a hotel on Google Maps
- Click on the hotel listing
- Look for the "View on Google Travel" link
- Follow the link to get the entity ID from the URL
🚀 Usage Examples
Basic Usage
{"checkInDate": "2025-07-20","days": 3,"adults": 2,"currency": "USD","entity": "ChgIw-i9jd_587w3GgwvZy8xcHR4cWI4OTIQAQ"}
With Proxy Configuration
{"checkInDate": "2025-07-20","days": 5,"adults": 1,"currency": "EUR","entity": "ChgIw-i9jd_587w3GgwvZy8xcHR4cWI4OTIQAQ","proxyConfig": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "DE"}}
📈 Use Cases
- Price monitoring: Track prices for a specific hotel over time
- Competitive analysis: Compare prices across different booking platforms for the same hotel
- Travel planning: Find the best rates for your preferred hotel on specific dates
- Market research: Analyze pricing trends for individual hotels
- Revenue optimization: Help hotels understand their competitive positioning against other providers
🔒 Rate Limiting & Best Practices
- Respectful scraping: The actor uses proper delays and headers
- Proxy rotation: Use Apify Proxy to avoid IP blocks — start with datacenter proxies and only fall back to residential (from the target country) if you hit blocks
- Session management: Maintains cookies for better success rates
- Error handling: Gracefully handles API errors and timeouts
🛠️ Technical Details
- Built with: Apify SDK v3.2.6, Crawlee v3.11.5
- Target: Google Travel's internal API endpoints
- Data format: JSON with structured pricing information
- Rate limiting: Built-in delays and proxy support
- Error recovery: Automatic retry logic for failed requests
📋 Supported Currencies
The actor supports all major ISO 4217 currency codes including:
- USD (US Dollar)
- EUR (Euro)
- GBP (British Pound)
- JPY (Japanese Yen)
- CAD (Canadian Dollar)
- AUD (Australian Dollar)
- And 70+ more currencies
⚠️ Important Notes
- Entity ID validity: Ensure your entity ID is current and valid
- Date ranges: Avoid scraping too many consecutive days to prevent rate limiting
- Proxy usage: Recommended for production use to avoid IP blocks
- Data accuracy: Prices are real-time but may vary based on availability