Expedia Reviews Scraper avatar

Expedia Reviews Scraper

Pricing

from $0.02 / 1,000 review saveds

Go to Apify Store
Expedia Reviews Scraper

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

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

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

FieldTypeDescription
propertyIdsstring[]Numeric Expedia hotel property IDs.
startUrlsURL[]Expedia hotel URLs containing .h<property ID>.
maxReviewsPerHotelintegerMaximum unique reviews per property.
pageSizeintegerReviews requested per page (1–50).
sortBystringRelevance, newest, highest rating, or lowest rating.
includeRatingsOnlybooleanInclude reviews with a rating but no written text.
travelerTypestringOptional Expedia traveler filter.
searchstringOptional public review-text search.
localestringLocale for Expedia-provided labels and dates.
maxRuntimeSecsintegerShared runtime budget with cleanup reserve.

Output fields

FieldDescription
hotelId, propertyUrlProperty identity and source page.
reviewIdStable review identifier.
rating, ratingLabelNumeric rating and Expedia label.
superlative, title, text, localePublic review content.
author, submissionDatePublic author attribution and submitted date.
stayDate, stayDetails, travelerType, travelersPublic trip context when available.
brandType, verifiedStaySource brand and verification marker when available.
themes, photosPublic themes and attached media metadata.
managementResponsesPublic property-management replies.
propertyReviewSource, reviewRegionPublic source and region metadata.
sourceUrl, scrapedAt, pageIndex, positionProvenance 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 SUMMARY key-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 os
from apify_client import ApifyClient
client = 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.

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.

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.