Zoover Reviews Scraper
Pricing
from $3.00 / 1,000 results
Zoover Reviews Scraper
Scrape guest reviews and ratings from Zoover.nl hotel pages into a structured dataset. Get review text, scores, travel dates, reviewer details, category ratings, hotelier replies, and images. Filter by cutoff date, cap results per hotel, and export to JSON, CSV, or Excel.
Pricing
from $3.00 / 1,000 results
Rating
5.0
(2)
Developer
knagymate
Maintained by CommunityActor stats
2
Bookmarked
4
Total users
3
Monthly active users
0.39 hours
Issues response
11 days ago
Last modified
Categories
Share
π¨ Zoover Hotel Reviews Scraper
Easily scrape real guest reviews and ratings from Zoover.nl β one of Europe's largest independent travel review platforms β directly into a structured dataset for research, analytics, and automation.
Whether you're tracking guest sentiment, hotel ratings, review trends over time, or just want to explore what travelers say about a specific hotel, this scraper gives you clean, ready-to-use data in minutes.
π Features
- Scrape by hotel URL β provide one or more standard Zoover hotel detail URLs.
- Multiple hotels per run β process a list of hotels in a single run via
startUrls. - Full review content β review title, text, score, likes, travel date, and reviewer details.
- Detailed score breakdown β per-review and hotel-level category ratings (e.g., child-friendliness, hygiene, location, price/quality, room, service, food, pool, and general score); every category Zoover returns is passed through.
- Hotelier replies β capture the hotel's response to each review when available.
- Review images β collect image URLs attached to reviews.
- Date filtering β keep only reviews on or after a given
cutoffDatefor incremental scraping. - Limit results β cap the number of reviews per hotel with
maxReviewsPerHotel. - Always-on summary β optionally return a hotel summary record even when no review passes the filters.
π Example Output
Each review record includes:
| Field | Description |
|---|---|
| recordType | Record type: review or summary |
| reviewId | Unique review ID on Zoover |
| reviewHeliosId | Zoover Helios review ID |
| reviewDate | Date the review was posted |
| travelDate | Date of the reviewer's stay |
| reviewScore | Overall review score (0β10) |
| reviewTitle | Title of the review |
| reviewText | Full review text |
| reviewLanguage | Language/locale of the review |
| userName | Reviewer's display name |
| traveledWith | Travel party type (e.g., family, couple) |
| userVerified | Whether the reviewer is verified |
| likes | Number of likes on the review |
| scoreDetails | Per-review category ratings |
| reply | Hotelier's reply to the review |
| images | Image URLs attached to the review |
| hotelSummary | Hotel-level metadata and aggregated ratings |
β¦and more from the full dataset schema.
π How to Use
-
Open the scraper in Apify.
-
Fill in the input fields:
startUrlsβ one or more Zoover hotel URLs, e.g.,https://www.zoover.nl/a/128192/side-mare-resort-spamaxReviewsPerHotelβ e.g.,100cutoffDateβ e.g.,2025-01-01(optional)alwaysReturnSummaryβtrueorfalse
-
Run the scraper.
-
Download your results as JSON, CSV, Excel, or via API.
π Supported URLs
Use standard Zoover hotel detail URLs, for example:
https://www.zoover.nl/a/128192/side-mare-resort-spa
The scraper resolves the final URL, extracts the hotel ID, and requests review data from Zoover's review endpoints.
π Cutoff date notes
cutoffDatekeeps only reviews posted on or after the given date (YYYY-MM-DD).- It is interpreted as a local date in the Europe/Berlin timezone, since Zoover does not expose timezone information.
- If left empty, all available reviews are scraped (subject to
maxReviewsPerHotel).
π’ Result limit notes
maxReviewsPerHotelcaps the number of review records returned per hotel.- If not set, it defaults to
100. - The limit is applied per hotel, so each URL in
startUrlsreturns up to this many reviews.
π§Ύ Summary record notes
- When
alwaysReturnSummaryistrue, asummaryrecord is pushed for a hotel even if no review passed the filters. - This guarantees you always get hotel-level metadata (rating, review count, category scores) for every processed URL.
- Set it to
falseto only emit records when reviews are found.
π Example Use Cases
- Reputation monitoring β track guest sentiment and ratings over time.
- Competitor analysis β compare category scores across hotels.
- Travel planning β read verified guest feedback before booking.
- Data-driven insights β analyze review trends, languages, and travel party types.
π₯ Input Example
{"startUrls": [{ "url": "https://www.zoover.nl/a/128192/side-mare-resort-spa" }],"maxReviewsPerHotel": 100,"cutoffDate": "2025-01-01","alwaysReturnSummary": true}
π€ Output Example
Review record (recordType: review)
{"recordType": "review","reviewId": 317018243,"reviewHeliosId": "abc123","reviewDate": "2026-05-29T11:14:44.207000Z","travelDate": "2026-03-27T00:00:00Z","scoreDetails": {"childFriendly": 8.0,"hygiene": 8.5,"location": 9.0,"priceQuality": 8.0,"room": 8.0,"service": 9.0,"general": 8.4},"reviewLanguage": "nl","reviewTitle": "Great stay","userName": "J. de Vries","traveledWith": "family","reviewScore": 9,"likes": 4,"reviewText": "Great location and friendly staff.","reply": {"entryDate": "2026-05-30T08:00:00Z","replyText": "Thanks for your feedback!","replierPosition": "hotel management"},"userVerified": true,"images": ["https://www.zoover.nl/images/example.webp"],"hotelSummary": {"url": "https://www.zoover.nl/a/128192/side-mare-resort-spa","id": "128192","reviewCount": 245,"reviewScore": 8.6,"scoreDetails": {"childFriendly": 8.1,"hygiene": 8.4,"location": 9.1,"priceQuality": 8.0,"room": 8.0,"service": 8.8,"general": 8.6}}}
Summary record (recordType: summary)
{"recordType": "summary","hotelSummary": {"url": "https://www.zoover.nl/a/128192/side-mare-resort-spa","id": "128192","reviewCount": 245,"reviewScore": 8.6,"scoreDetails": {"childFriendly": 8.1,"hygiene": 8.4,"location": 9.1,"priceQuality": 8.0,"room": 8.0,"service": 8.8,"general": 8.6}}}
π Full Dataset Schema
| Field | Type | Description |
|---|---|---|
recordType | string | review or summary |
reviewId | string | integer | null | Unique review ID on Zoover |
reviewHeliosId | string | integer | null | Zoover Helios review ID |
reviewDate | string (date-time) | null | When the review was posted |
travelDate | string (date-time) | null | When the reviewer stayed |
reviewScore | integer | null | Overall review score (0β10) |
reviewTitle | string | null | Review title |
reviewText | string | null | Full review text |
reviewLanguage | string | null | Language/locale of the review |
userName | string | null | Reviewer's display name |
traveledWith | string | null | Travel party type |
userVerified | boolean | null | Whether the reviewer is verified |
likes | integer | null | Number of likes on the review |
scoreDetails | object | null | Per-review category ratings, dynamic keys (see below) |
reply | object | null | Hotelier reply: entryDate, replyText, replierPosition |
images | array | null | Image URLs attached to the review |
hotelSummary | object | Hotel-level metadata (see below) |
scoreDetails / hotelSummary.scoreDetails object β a dynamic map of category name to rating (each value number 0β10 or null). Keys are returned exactly as Zoover provides them, so the set of categories can vary per review or hotel and new categories are passed through automatically. Commonly seen keys include:
| Field | Description |
|---|---|
childFriendly | Child-friendliness rating |
hygiene | Hygiene rating |
location | Location rating |
priceQuality | Price/quality rating |
room | Room rating |
service | Service rating |
general | General/overall rating |
food | Food rating |
pool | Pool rating |
| ... | Any other category returned by Zoover |
hotelSummary object:
| Field | Type | Description |
|---|---|---|
url | string | null | Hotel start URL |
id | string | null | Hotel ID on Zoover |
reviewCount | integer | null | Total number of reviews for the hotel |
reviewScore | number | null | Aggregated hotel score (0β10) |
scoreDetails | object | null | Aggregated category ratings, dynamic keys (see below) |
π Why Use This Scraper?
Zoover's web interface is great for browsing reviews, but not designed for bulk data export or analytics. This scraper removes the manual work by automating review collection and outputting results in an analysis-ready format β perfect for developers, researchers, and business analysts.
β οΈ Disclaimer
This scraper only extracts publicly available information from Zoover.nl. The author of this scraper is not affiliated with Zoover, and does not take responsibility for how the data is used. Before using this data, you are solely responsible for ensuring that your use complies with all applicable laws, Zoover's Terms of Service, and any other relevant regulations.