How to Scrape Hotels.com Reviews (2026 Guide)
Hotels.com holds one of the largest, most distinct pools of hotel guest reviews on the Western web, and there's no public API to get at it. This guide covers what you can extract from a Hotels.com hotel page, how the /ho<id>/ URL and bare property IDs work, and the fastest way to turn thousands of reviews into clean, structured data, plus the six sibling Expedia Group brands in the same run.
Why scrape Hotels.com reviews?
For hotels, OTAs, and hospitality analysts, Hotels.com review data is some of the highest-signal guest feedback available:
- Reputation monitoring & sentiment analysis: track guest sentiment for your own or competitor properties over time.
- Competitor benchmarking: pull rating distributions, category sub-scores, and review volume per property at scale.
- Market research & reviewer demographics: analyze traveler types, languages, and what guests actually praise or complain about.
- AI & review datasets: feed structured, LLM-ready review text into sentiment analysis or a RAG pipeline with no reshaping.
Does Hotels.com have a reviews API?
No. Hotels.com does not expose a public API for its guest reviews, the data is only rendered on the website behind anti-bot protection. That's why a purpose-built scraper is the practical route: it collects the same publicly available reviews and the hotel-rating aggregates, and hands them back as structured JSON or CSV, effectively giving you API-style access to Hotels.com review data without an official endpoint.
Finding the hotel: the /ho<id>/ URL
Every Hotels.com hotel page carries the property in a /ho<number>/ path segment, for example https://www.hotels.com/ho119566/bellagio-las-vegas-united-states-of-america/. You can paste the full slugged URL (the name in the slug populates the hotelName field), a slugless /ho<id>/ link, or just the bare Hotels.com property ID like 242128, all three resolve to the same property automatically. Regional Hotels.com domains (and the hoteles.com, hoteis.com, and hotels.cn fronts) work the same way.
One property, seven Expedia Group brands
Hotels.com is part of Expedia Group, alongside Expedia, Travelocity, Orbitz, Wotif, CheapTickets, and ebookers. They share one review backend but each brand surfaces a different slice of guest reviews for the same hotel. If you scrape only hotels.com, you miss the Expedia and Travelocity guests entirely. The same scraper accepts a hotel URL from any of the seven brands, so you can pull just Hotels.com, or combine several to build the complete cross-brand union for a property in one run. Use the Review sources filter to keep a single brand, a chosen subset, or leave it empty for everything.
What data can you get?
You get a per-hotel roll-up and per-review detail across two datasets:
- Overall rating on the 1–10 scale plus a rating label ("Exceptional", "Good"…)
- Category sub-ratings: cleanliness, service & staff, room comfort, hotel condition, amenities
- Stay dates, traveler companions (partner, family, business, solo) and review language with a machine-translation flag
- Review photos (guest-uploaded image URLs) and a verified-stay flag
- Hotel owner responses, kept separate from the review body
- Per hotel: average rating, a recency-weighted rating, the full rating distribution, aggregate sub-ratings, coordinates, and total review count
- An LLM-ready markdown rendering of every review for AI pipelines
Ratings are presented on the 1–10 scale to match Hotels.com's public display (the source stores a 1–5 value, which the actor doubles).


Why building your own breaks
- Anti-bot protection on Hotels.com blocks naive requests quickly.
- Legacy IDs: the
/ho<id>/id is not the group's global property ID, so it has to be resolved before any reviews can be fetched. - Multilingual content: reviews in many languages, some machine-translated, needing consistent structured output.
- Pagination & scale: thousands of reviews on large properties, with retries and rate limits.
The fast way: the FactDen Hotels.com Reviews Scraper
The FactDen Hotels.com Reviews Scraper on the Apify platform pulls reviews from Hotels.com (and any sibling Expedia Group brand), with no login, no cookies, and no API key.
Step 1: Open the actor
Go to the Hotels.com Reviews Scraper on Apify and click Try for free (a free Apify account is all you need).
Step 2: Give it a hotel
Paste one or more Hotels.com /ho<id>/ URLs or bare property IDs (or any other Expedia Group brand URL). Set Max reviews per hotel, an optional date or rating range, a sort order, and which brands to include.

Step 3: Run it
The actor handles the ID resolution, anti-bot, pagination, and every brand you selected, writing clean structured rows to a dataset as it goes.
Step 4: Export
Download as JSON, CSV, Excel, or HTML, or pull via the Apify API. Switch between the Reviews, Hotels, and AI ingest views to get per-review rows, a per-hotel roll-up, or just the LLM-ready markdown.

See the data first. Grab a free sample of real Hotels.com reviews, structured fields with sub-ratings, traveler type, language, and owner responses, before you run anything.
What does it cost?
Pricing is pay-per-result with no start fee, roughly $2.50 per 1,000 reviews, dropping toward $2 per 1,000 at higher volume tiers. You pay only for the reviews you extract, a run that returns zero reviews costs nothing, and there's a free tier to test first. Because reviews are fetched newest-first, a tight From date plus a low Max reviews per hotel is the cheapest way to monitor only what's new.
Frequently asked questions
- Does Hotels.com have a reviews API?
- No public reviews API exists, the data is only on the website. This scraper is the practical alternative, returning the same public reviews and rating aggregates as structured JSON or CSV.
- Can it scrape Expedia, Travelocity and Orbitz too?
- Yes. It accepts URLs from all seven Expedia Group brands (Hotels.com, Expedia, Travelocity, Orbitz, Wotif, CheapTickets, ebookers) and can return the cross-brand union of reviews for one property in a single run.
- How much does it cost?
- Pay-per-result, no start fee, about $2.50 per 1,000 reviews and toward $2 per 1,000 at volume.
- Do I need a login or API key?
- No. No login, no cookies, no Hotels.com API key, paste a hotel URL or a bare property ID.
- Can I export to CSV or Excel?
- Yes, JSON, CSV, Excel, or HTML, or via the Apify API.
- What rating scale is used?
- Ratings are shown on the 1–10 scale (the source's 1–5 value doubled), for both per-review and aggregate hotel ratings.
Try the Hotels.com Reviews Scraper
Also see: How to scrape Expedia hotel reviews →
Product page: Hotels.com Reviews Scraper - fields, pricing & FAQ →