Expedia Reviews Scraper
Pricing
from $0.02 / 1,000 review saveds
Expedia Reviews Scraper
Export public Expedia hotel reviews, ratings, authors, dates, traveler details, photos, and management responses with reliable pagination.
Pricing
from $0.02 / 1,000 review saveds
Rating
0.0
(0)
Developer
Hanna Nosova
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Share
Export public Expedia hotel reviews for reputation monitoring, guest-experience analysis, competitor research, and review archives. Supply Expedia property IDs or hotel URLs and receive one structured review per dataset row.
Input example
{"propertyIds": ["905202"],"maxReviewsPerHotel": 20,"sortBy": "NEWEST_TO_OLDEST","includeRatingsOnly": true}
Output example
{"hotelId": "905202","propertyUrl": "https://www.expedia.com/h905202.Hotel-Information","reviewId": "example-review-id","rating": 10,"ratingLabel": "Exceptional","superlative": "Wonderful stay","title": "Wonderful stay","text": "Friendly staff and a convenient location.","locale": "en_US","author": "Expedia guest","submissionDate": "Jul 30, 2026","stayDate": "July 2026","stayDetails": "Stayed 2 nights","travelerType": "Couple","travelers": ["Couple"],"brandType": "EXPEDIA","verifiedStay": true,"themes": [],"photos": [],"managementResponses": [],"propertyReviewSource": {},"reviewRegion": {},"sourceUrl": "https://www.expedia.com/h905202.Hotel-Information","scrapedAt": "2026-08-04T12:00:00.000Z","pageIndex": 0,"position": 1}
Optional fields are omitted when Expedia does not provide them, especially for ratings-only reviews.
Who is it for?
- Hotel reputation teams tracking recurring guest feedback.
- Travel analysts comparing ratings and themes across properties.
- Guest-experience teams exporting management responses and stay context.
- Data teams feeding public review archives, dashboards, and alerts.
Input settings
| Field | Type | Description |
|---|---|---|
propertyIds | string[] | Numeric Expedia hotel property IDs. |
startUrls | URL[] | Expedia hotel URLs containing .h<property ID>. |
maxReviewsPerHotel | integer | Maximum unique reviews per property. |
pageSize | integer | Reviews requested per page (1–50). |
sortBy | string | Relevance, newest, highest rating, or lowest rating. |
includeRatingsOnly | boolean | Include reviews with a rating but no written text. |
travelerType | string | Optional Expedia traveler filter. |
search | string | Optional public review-text search. |
locale | string | Locale for Expedia-provided labels and dates. |
maxRuntimeSecs | integer | Shared runtime budget with cleanup reserve. |
Output fields
| Field | Description |
|---|---|
hotelId, propertyUrl | Property identity and source page. |
reviewId | Stable review identifier. |
rating, ratingLabel | Numeric rating and Expedia label. |
superlative, title, text, locale | Public review content. |
author, submissionDate | Public author attribution and submitted date. |
stayDate, stayDetails, travelerType, travelers | Public trip context when available. |
brandType, verifiedStay | Source brand and verification marker when available. |
themes, photos | Public themes and attached media metadata. |
managementResponses | Public property-management replies. |
propertyReviewSource, reviewRegion | Public source and region metadata. |
sourceUrl, scrapedAt, pageIndex, position | Provenance and pagination metadata. |
Input recipes
Two hotels, newest reviews
{"propertyIds":["905202","10966026"],"maxReviewsPerHotel":50,"sortBy":"NEWEST_TO_OLDEST"}
URL input with written reviews only
{"startUrls":[{"url":"https://www.expedia.com/Prague-Hotels-Golden-Well-Hotel.h905202.Hotel-Information"}],"maxReviewsPerHotel":20,"includeRatingsOnly":false}
Pricing
This Actor uses pay-per-event pricing with a small run-start event and a per-review event. You are charged only after input validation, and review charges correspond to rows progressively saved to the dataset. See the live Apify Pricing tab for current rates and plan discounts.
Tips and limits
- Start with 20 reviews to verify the property and output shape.
- Use numeric property IDs for the most stable input.
- Ratings-only reviews can omit title and text.
- Public reviews can be edited or removed upstream.
- Large exports stop within the configured runtime budget and preserve completed pages.
- A
SUMMARYkey-value-store record reports saved rows and any property-level failures.
API usage
cURL
curl -X POST "https://api.apify.com/v2/acts/fetch_cat~expedia-reviews-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"propertyIds":["905202"],"maxReviewsPerHotel":20}'
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('fetch_cat/expedia-reviews-scraper').call({propertyIds: ['905202'], maxReviewsPerHotel: 20,});const { items } = await client.dataset(run.defaultDatasetId).listItems();
Python
import osfrom apify_client import ApifyClientclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('fetch_cat/expedia-reviews-scraper').call(run_input={'propertyIds': ['905202'], 'maxReviewsPerHotel': 20})items = client.dataset(run['defaultDatasetId']).list_items().items
MCP and AI agents
Add Apify MCP to Claude Code:
$claude mcp add apify --transport http "https://mcp.apify.com/?tools=fetch_cat/expedia-reviews-scraper"
Equivalent MCP configuration:
{"mcpServers":{"apify":{"type":"http","url":"https://mcp.apify.com/?tools=fetch_cat/expedia-reviews-scraper"}}}
Example prompts:
- “Export the 20 newest reviews for Expedia property 905202.”
- “Compare the latest 50 public reviews for properties 905202 and 10966026.”
Review the dataset before using guest content in automated decisions.
FAQ
Can I scrape several hotels in one run?
Yes. Add multiple IDs or URLs. A failure for one property does not discard already saved reviews from other properties.
Why is review text missing?
Expedia permits ratings-only reviews. Set includeRatingsOnly to false when you need written reviews only.
Does this require an Expedia login or cookies?
No. It exports review records available on public Expedia property surfaces.
Is it legal to scrape Expedia reviews?
You are responsible for your use case, applicable laws, Expedia terms, and personal-data obligations. Collect only what you need and avoid republishing personal content without a lawful basis.
Related Actors
Support
Open an issue from the Actor's Apify Console page with the property ID, sanitized input, run ID, and expected behavior. Do not include account credentials or private guest data.