
Kayak Reviews Scraper
Pricing
from $4.00 / 1,000 reviews

Kayak Reviews Scraper
Extract hotel reviews and ratings from Kayak.com, including data from Booking, Priceline, Agoda, and HotelsCombined. Ideal for research, sentiment analysis, and travel analytics. Supports JSON/CSV export, pagination, and review filtering.
5.0 (2)
Pricing
from $4.00 / 1,000 reviews
0
4
4
Last modified
5 days ago
Fast Kayak Reviews Scraper
Fast Kayak Reviews Scraper — quickly extract hotel reviews and ratings aggregated by Kayak.com (including reviews Kayak imports from Booking, Priceline, Agoda and HotelsCombined). Ideal for market research, reputation monitoring, data science, and travel analytics.
Overview
Fast Kayak Reviews Scraper scrapes hotel reviews shown on Kayak.com and returns structured review records ready for analysis or export (JSON/CSV/Excel). Kayak often aggregates reviews from several partner sites — such as Booking.com, Priceline, Agoda, and HotelsCombined — and this actor captures the combined review stream presented on the hotel’s Kayak page.
This actor is a lightweight, high-performance scraper built to run on Apify or locally and is perfect if you need:
- Large-scale hotel review collection for a region or brand
- Reputation and sentiment analysis across different review sources
- Benchmarking competitors and tracking improvements over time
- Export-ready data for dashboards, machine learning, and BI tools
Features
- Scrape reviews from any Kayak hotel page (desktop URL)
- Extract rating, rating category (e.g. Excellent, Very good), month/year, review id, provider (Booking, Priceline, Agoda, Hotelscombined, etc.), positives and negatives, and full metadata
- Return results sorted by the newest reviews when
cutoffDate
is provided (see Cutoff / sort behaviour below) - Limit the maximum number of reviews scraped (
maxReviews
) - Exportable output (JSON by default; easy to convert to CSV/Excel)
- Robust handling of pagination and dynamic content
Quick example (input)
{"hotelUrl": "https://www.kayak.com/Miami-Hotels-Miami-International-Airport-Hotel.61867.ksp","sortBy": "recent","maxReviews": 1000}
Quick example (single output record)
{"id": "lDOSJZkB2qcuNaAeEJS-","monthYear": "Sep 2025","score": 80.0,"ratingCategory": "Excellent","positiveComment": "Location","negativeComment": "Restaurant is not part of the hotel","siteName": "Booking.com"}
Input schema
hotelUrl
(string) — required. Full Kayak hotel page URL (desktop). Example:https://www.kayak.com/Miami-Hotels-Miami-International-Airport-Hotel.61867.ksp
.sortBy
(string) — optional. Sorting strategy. Supported values:recent
→ Most recentscoreDesc
→ Highest ratedscoreAsc
→ Lowest ratedoldest
→ Oldest
maxReviews
(integer) — optional. Maximum number of reviews to return. If you don't set this, the actor will scrape all available reviews.cutoffDate
(string, ISO date) — optional. If set, the actor will only return reviews newer than or equal to the cutoff date and will always force the results to be returned starting from the most recent review (equivalent tosortBy: "recent"
). See details below.
Note: If cutoffDate
is provided, the actor will automatically set sortBy
to "recent" internally to ensure results are returned in descending date order.
Cutoff / sort behaviour
When cutoffDate
is defined, results are always returned starting from the newest review and moving backwards in time (i.e. newest → older). This guarantees you will receive all reviews on or after the cutoff date without missing recent entries, regardless of the sortBy
you passed. Practically:
- If
cutoffDate
is provided,sortBy
is treated asrecent
for the run. - The actor will paginate through reviews until either
maxReviews
is reached or reviews older thancutoffDate
are encountered.
This design avoids missing recent reviews when you perform repeated incremental scrapes.
Output schema (per review)
Each scraped review is returned as an object. Common fields include:
id
— string: unique review identifiermonthYear
— string: month and year for the stay or the review (e.g.Sep 2025
)score
— number: rating score (0–100 scale where Kayak or provider uses it)ratingCategory
— string: rating label (e.g.Excellent
,Very good
)positiveComment
— string: short extracted highlight for positive aspectnegativeComment
— string: short extracted highlight for negative aspectsiteName
— string: original provider label shown on Kayak (e.g.Booking.com
,Priceline
)reviewText
— string: full review comment (when available)reviewDate
— string: ISO date of the review (when available)
Kayak review sources
Kayak aggregates reviews from multiple partner sites. The most common upstream sources you may see in the siteName
field include:
- Booking.com
- Priceline
- Agoda
- HotelsCombined
The scraper captures whatever provider label Kayak surfaces on that hotel page.
Usage
- Provide the
hotelUrl
of the Kayak hotel page you want to scrape. - (Optional) Set
sortBy
,maxReviews
, and/orcutoffDate
. - Run the actor. Download results as JSON, or use Apify’s export to CSV/Excel.
Tips:
- For incremental crawls use
cutoffDate
to only fetch recent reviews. As Kayak returns only year/month, it is recommended to set the cutoff date to the first day of a month (e.g.2024-09-01
). - Keep
maxReviews
reasonable for a single run to avoid long runtimes and higher compute costs. - If you need reviews for many hotels, run the actor in parallel for each hotel URL.
When to use this scraper
- Build datasets of traveler feedback across brands and locations
- Run competitive analysis and UX benchmarking for hotel chains
- Feed data to sentiment analysis and topic extraction pipelines
- Monitor guest-reported issues (cleanliness, staff, location, facilities)
Important notes & legal
- Kayak displays third-party reviews; ensure you comply with Kayak’s and upstream providers’ Terms of Service before using scraped data for commercial purposes.
- This actor is intended for lawful, ethical scraping and research. Avoid excessive scraping that may burden Kayak’s servers.
Troubleshooting
- If the actor returns fewer reviews than expected, check whether the hotel page has filters, or Kayak requires a different locale to surface reviews.
- Some reviews may be hidden behind lazy-loading or require cookies; the actor handles common cases but edge cases can exist.
Contact & contributions
If you find bugs, need additional fields, or want to contribute improvements, open an issue or pull request on the project repository. Pull requests with tests and updated README examples are appreciated.
🔗 Related projects
- Fast Agoda Reviews Scraper — Scrape detailed hotel reviews directly from Agoda.com with reviewer info, stay details, and ratings.
On this page
Share Actor: