GetYourGuide Price & Review Monitor – Competitor Tracker avatar

GetYourGuide Price & Review Monitor – Competitor Tracker

Pricing

from $2.00 / 1,000 tour checkeds

Go to Apify Store
GetYourGuide Price & Review Monitor – Competitor Tracker

GetYourGuide Price & Review Monitor – Competitor Tracker

Get alerts when GetYourGuide tours change price, sell out, gain reviews or ratings, and when new competitors launch in your city. Only changes, no duplicate rows. Built for tour operators: schedule daily and send to Slack, email or Sheets.

Pricing

from $2.00 / 1,000 tour checkeds

Rating

0.0

(0)

Developer

Altuğ CEYLAN

Altuğ CEYLAN

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Categories

Security

Limited permissions

Share

Know what your competitors on GetYourGuide changed, before your customers do. This Actor watches GetYourGuide tours and tells you only what changed since the last run: price moves and discounts, dates selling out, rating drops, new reviews, and brand-new competitor tours in your city. Schedule it daily and send the alerts to Slack, email or Google Sheets with Apify integrations.

Alerts, not data dumps. A quiet day costs almost nothing and returns a one-line summary.

Who it's for

  • Tour and activity operators watching their own listings and their direct competitors
  • Revenue managers who want to react when a rival discounts or sells out a date
  • Travel market researchers tracking prices, ratings and new supply in a destination

What you get

AlertWhen it fires
💶 PRICE_CHANGEThe "from" price moved (old/new price, change in %, and old/new discount, so you see sales start and end)
📅 AVAILABILITY_CHANGEA date in your window became available, sold out or unavailable (optional add-on)
⭐ RATING_CHANGEThe average rating moved by 0.05 or more, or the review count grew by 10 or more (adjustable)
📈 RANK_CHANGEA tour moved up or down in its city's GetYourGuide ranking (3+ places by default, confirmed over two runs)
💬 NEW_REVIEWA new review: rating, text, date, language, traveller type, sub-ratings (guide, transport, value…), photo count and the operator's reply. Reviewer names are never collected
🆕 NEW_COMPETITORA newly launched tour appeared in a city you watch (GetYourGuide's "New activity" badge or ≤ 10 reviews)
🚫 TOUR_UNAVAILABLEA tour was removed (reported once)
📋 RUN_SUMMARYAlways, free: what was checked and how many changes there were

The first run records a baseline (FIRST_SEEN for each tour, free). From the second run on you only get changes.

Every tour also comes with, at no extra cost:

  • price in the currency you choose, original price and discount, and whether it's per person or per group
  • city ranking position, "booked N times yesterday" and scarcity like "10 spots left today" (when GetYourGuide shows them)
  • duration, free cancellation, skip the line, booking cutoff, category, "New activity" badge and image
  • optionally the operator (the company running the tour), on every alert

Monitor vs. scraper

This monitorA typical GetYourGuide scraper
OutputOnly what changed, as alertsEvery tour, every time
Comparing runsDone for you, with baselinesYour job
Sold-out dates✅ per date (add-on)❌
New reviewsOnly the new ones, with textAll reviews again
New competitorsOnly genuinely new tours❌
Ranking moves✅ alert when a tour climbs or dropsRaw position at best
Operator replies to reviews✅Rarely
Quiet dayOne free summary rowFull dataset, full price

How much does it cost?

You pay per event; the baseline (FIRST_SEEN), errors and the run summary are free. A run that can't check anything costs nothing.

EventPrice
tour-checked – one tour checked$0.002
change-detected – a price, rating, ranking, availability, competitor or removal alert$0.005
review-extracted – a new review$0.002
availability-checked – add-on, per tour, when availability tracking is on$0.003
listing-page-checked – one page (24 tours) of a city scanned for new competitors$0.0025

Examples (daily schedule, 30 runs a month):

  • 20 tours: about $1.20/month plus alerts
  • 20 tours + new-competitor scan of their city (3 pages): about $1.45/month plus alerts
  • 20 tours with sold-out-date tracking: about $3/month plus alerts

Operator names (optional) cost nothing extra in fees: they need one extra page per tour, once, and are then remembered.

Quick start

  1. Paste your tour URLs (and your competitors') into Tour URLs.
  2. Optional: add your city page, e.g. https://www.getyourguide.com/antalya-l172/, to Listings to watch to catch new competitors.
  3. Choose your currency.
  4. Run once to record the baseline, then add a daily schedule and an integration (see below).
{
"tourUrls": [
"https://www.getyourguide.com/antalya-l172/antalya-suluada-island-boat-trip-with-lunch-hotel-pickup-t468561/",
"https://www.getyourguide.com/antalya-l172/antalya-old-city-tour-wboat-trip-cable-car-waterfalls-t1156943/"
],
"searchQueries": ["https://www.getyourguide.com/antalya-l172/"],
"currency": "EUR",
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["UNBLOCKER"] }
}

Get alerts in Slack, Google Sheets or email

  1. Click Save as a new task with your input, so the schedule and integrations belong to one saved setup.
  2. In the task, open Schedules and run it daily (or every few hours).
  3. Open the task's Integrations tab and pick where alerts should go:
    • Slack: post a message to a channel when a run finishes.
    • Email / Gmail: get the run's results by email.
    • Google Sheets / Google Drive: append each alert as a row to build a price and review history.
    • Make, Zapier, n8n or a webhook: for anything else, e.g. a WhatsApp message on every PRICE_CHANGE.
  4. To skip quiet days, filter on the RUN_SUMMARY item: its changes field is 0 when nothing changed.

Input

FieldDefaultDescription
tourUrlsGetYourGuide tour URLs (…-t<number>/)
searchQueriesCity or category pages to scan for new competitors, e.g. https://www.getyourguide.com/antalya-l172/. Free-text searches also work but GetYourGuide's keyword search can return unrelated tours
trackPricetrueReport price changes
trackAvailabilityfalseReport sold-out and newly available dates (add-on, reads each tour's page)
availabilityDays14Days ahead to watch, starting tomorrow (same-day booking closes during the day, so today is skipped)
trackReviewstrueReport new reviews
maxReviewsPerTour50Max newest reviews checked per tour per run
minPriceChangePct0Only report price moves of at least this many percent. Smaller moves add up until they cross it
minReviewCountChange10Review-count growth that triggers a rating alert on its own (a 0.05 rating move always does)
minRankChange3Places a tour must move in its city ranking (on two runs in a row) before a RANK_CHANGE alert
includeOperatorNamefalseAdd the operator (company running the tour) to every alert. One extra page per tour, once
currencyEURCurrency for prices (exact in fast mode; tour pages use the visitor's location)
languageenPreferred page language
includeSnapshotfalseAlso output the full current state of each tour on every run
useLocationFeedtrueFast mode: read up to 24 tours per request from the city feed. Missing tours are checked on their own page
feedMaxPages3Feed pages (24 tours each) per city, for your tours and for competitor scans
maxConcurrency4Parallel requests; keep it low
proxyConfigurationUNBLOCKER on ApifyGetYourGuide blocks most automated traffic; the UNBLOCKER group is used automatically when left empty

Output

One dataset item per alert. Every item has type, source, tourId, tourUrl, tourTitle and detectedAt.

{
"type": "PRICE_CHANGE",
"source": "getyourguide",
"tourId": "1156943",
"tourUrl": "https://www.getyourguide.com/antalya-l172/antalya-old-city-tour-wboat-trip-cable-car-waterfalls-t1156943/",
"tourTitle": "Antalya: Old City & Waterfall Tour, Cable Car & Boat Options",
"operatorName": null,
"detectedAt": "2026-10-30T07:00:12.408Z",
"oldPrice": 12.35,
"newPrice": 13.5,
"currency": "EUR",
"changePct": 9.31,
"oldDiscountPct": 5,
"newDiscountPct": null
}
{
"type": "NEW_REVIEW",
"source": "getyourguide",
"tourId": "1243237",
"tourTitle": "Antalya/Alanya Rafting, Zipline, Jeep, Quad, Buggy Safari",
"detectedAt": "2026-10-29T11:22:19.015Z",
"reviewId": "129227740",
"rating": 4,
"title": "",
"text": "We were a group of six… The whole group enjoyed the rafting…",
"reviewDate": "2026-10-29T11:00:43+01:00",
"language": "en",
"travelerType": "family_young",
"subRatings": { "guide": 5, "transport": 4, "value": 5 },
"photoCount": 0,
"operatorReply": null,
"operatorReplyDate": null
}
{
"type": "NEW_COMPETITOR",
"source": "getyourguide",
"query": "https://www.getyourguide.com/antalya-l172/",
"tourId": "1520562",
"tourTitle": "Antalya: Design Your Own Signature Perfume – Hands-On Workshop",
"price": 29.92,
"basePrice": 37.4,
"discountPct": 20,
"priceIsPer": "person",
"currency": "EUR",
"rating": null,
"reviewCount": 0,
"rank": 5,
"isNew": true,
"availabilityNote": "10 spots left today",
"spotsLeft": 10,
"duration": "1.5 hours",
"freeCancellation": true,
"category": null,
"activityType": "other",
"bookedYesterday": null
}

Other alerts add: AVAILABILITY_CHANGE → date, oldStatus, newStatus; RATING_CHANGE → oldRating, newRating, oldReviewCount, newReviewCount; RANK_CHANGE → oldRank, newRank; TOUR_UNAVAILABLE / ERROR → message (and stage). FIRST_SEEN and SNAPSHOT carry the full state: price, currency, rating, review count, availability and all the tour details above (basePrice, discountPct, priceIsPer, rank, bookedYesterday, isNew, availabilityNote, spotsLeft, nextAvailableDate, duration, freeCancellation, skipTheLine, bookingCutoff, category, activityType, imageUrl, operatorName). Fields GetYourGuide doesn't show for a tour are null.

Example Slack message (built with an Apify integration from the dataset):

💶 Antalya: Old City & Waterfall Tour – price €12.35 → €13.50 (+9.3%) 💬 Antalya/Alanya Rafting… – new 4★ review: "We were a group of six…" 🆕 New competitor in Antalya: Design Your Own Signature Perfume – €29.92 (20% off)

A run summary is also stored in the default key-value store under OUTPUT.

FAQ

Why didn't my first run report any changes? The first run records the baseline. Changes, new reviews and new competitors are reported from the second run on.

Why do I get ERROR items with HTTP 403? GetYourGuide blocks most automated traffic. Use the UNBLOCKER proxy group (it's the default on Apify when the proxy field is empty). Failed tours are never charged.

Why don't I get NEW_COMPETITOR for every tour I haven't seen? City pages show a changing selection of tours. Only tours that are actually new (GetYourGuide's "New activity" badge or 10 reviews or fewer, and newer than anything seen before) are reported.

Prices are in a different currency than I asked for. In fast mode prices come in your chosen currency. Tours checked on their own page (availability tracking, or tours missing from the feed) use the currency GetYourGuide picks for the visitor's location. Prices are only ever compared within the same currency, so this never creates a fake price change.

The alert says €7.60 but GetYourGuide shows €8. GetYourGuide rounds prices on its pages; the Actor reports the exact price from GetYourGuide's data. The crossed-out price is rounded too, so a small discount can look like none.

A tour's review count went up by 5 but I got 2 NEW_REVIEW items. The review count GetYourGuide shows can lag behind its review list, so some of those reviews were already known from an earlier run. Every review is reported exactly once.

Why did a ranking change arrive a run later? GetYourGuide's city ranking shuffles during the day, so a tour can jump 15 places and back within hours. A RANK_CHANGE is only reported once two runs in a row show the move in the same direction, which filters out that noise.

Is personal data collected? No. Reviewer names, countries and photos are dropped before anything is stored.

Viator, Klook, Tripadvisor? Viator is planned next.


This Actor is an independent tool and is not affiliated with, endorsed by or sponsored by GetYourGuide. It only reads publicly available pages.