Scrape Google Hotels by city or hotel: prices from every provider (Booking.com, Expedia, Agoda, official site), ratings, amenities, price calendar and alerts.
All notable changes to this Actor are documented here. Format: Keep a Changelog , versioning: SemVer .
[1.0.2] - 2026-10-06
Added
isComplete and incompleteReason on every record. A hotel whose page was blocked (saved from search results only) or whose price calendar is missing dates that could not be fetched is marked incomplete.
SUMMARY.completeness (requested, delivered, incomplete, failed, ratio) and a FAILED_INPUT record: your input reduced to the failed or incomplete hotels and queries, ready to rerun.
Price monitoring: changePercent (signed, rounded to 0.1) on every price change, and lowestPrice, lowestPriceAt and isLowestPrice on records and calendar dates. They are tracked since monitoring began; monitor stores saved by earlier versions keep working.
Changed
Fair charging: incomplete records are free (no hotel, offers or calendar events). Before, a hotel saved from search results after its page failed was charged as a hotel.
With "only changed hotels", an incomplete hotel is always saved (free) so the gap is visible.
The final status message now reads "Saved X of Y hotel(s)" with incomplete and failed counts and their reason, and says when FAILED_INPUT was saved.
The Price changes tab shows changePercent instead of priceDeltaPercent. The priceDeltaPercent field stays in the data.
[1.0.1] - 2026-09-30
First public release on Apify Store.
Added
Output schema: hotels, offers by provider, price calendar and price changes.
Changed
Launch pricing (FREE → GOLD and above): hotel $0.001 → $0.00075; hotel-offers $0.0015 → $0.0012; calendar-price $0.0025 → $0.0021. The README price table and cost examples match.
[1.0.0] - 2026-09-29
Added
Search Google Hotels by destination (free text, e.g. "Prague", "hotels near Eiffel Tower"), with pagination up to 500 hotels per destination.
Look up specific hotels by name, Google Hotels URL or hotel ID.
Stay options: check-in date (absolute or relative, e.g. "+14 days"), nights (1–30), adults, children's ages, 72 currencies, any Google language and country.
Hotel records: rating, review count and distribution, star class, property type, coordinates, address, phone, website, description, amenities, check-in/out times, photo, lowest nightly and total price with and without taxes.
Per-provider offers (Booking.com, Expedia, Agoda, the official site and others) with nightly and total prices, taxes, free cancellation and booking link.
Price calendar: lowest price for up to 90 consecutive check-in dates.
Price-change monitoring: remembers prices per hotel, stay, guests and currency in a named key-value store and reports changed, new and removed prices, with an optional minimum change and an "only changed hotels" output.
Dataset views (hotels, offers, price calendar, price changes), an output schema and a SUMMARY record per run.
Reliability: plain-HTTP JSON requests, session rotation and retries on blocks, automatic residential-proxy fallback, detection of unknown destinations, substituted dates and invalid hotel IDs, and a loud failure when Google changes its data format.
Pay-per-event pricing that stops at the run's budget limit; migration-safe run state with de-duplication by hotel ID.
Google's RPC error codes are classified (rejected, blocked or transient), and a hotel whose page fails is still saved with its search data.