Skip to main content
Google Ads · Tours and activitiesGoogle Ads × Tours and activities

Google Ads conversion tracking for tour operators and activity businesses

A tour operator's most important number is the split between direct bookings and OTA bookings, because the same seat earns very differently depending on which one filled it. What Google Ads adds on top of that is a mechanical requirement: gclid, gbraid and wbraid have to reach the record that holds the money, because Google Ads can only credit a conversion it can tie back to a click it recognizes. This page covers both halves — what a conversion is in tour operators and activity businesses, and what Google Ads specifically needs to accept it.

Free30 minutesNo obligation

Specific to Google Ads × Tours and activities

Google Ads for tours: bid on direct bookings, adjust for cancellations

Track a direct tour booking on Google Ads as a conversion action valued at the booking total, matched on gclid, gbraid or wbraid stored on the reservation record. Upload it from the reservation system through offline conversion import, then restate or retract it when weather or minimum numbers cancel the departure.

Google is where travelers who already know the destination search for the activity by name: a sunset cruise in a specific harbor, a guided hike at a specific park. That intent sits close to the booking, so the direct booking usually lands well inside the 90-day import window even when the departure itself is months away. Bid on the booking, not on the departure, and keep departure revenue as a reporting figure.

The step most tour operators skip is correcting the booking afterward. Google supports conversion adjustments, so a booking that later loses its departure to weather or a trip that fails to reach minimum numbers can be retracted or restated against the original conversion. Check the adjustment window and the current upload format in your account before you build the job, and run it on a schedule that matches how quickly your cancellations settle.

Where it breaks for tours: visitors on iPhones, which is a large share of in-destination searches, arrive with gbraid or wbraid rather than gclid, and the booking widget embedded from the reservation system often drops all three on its way to checkout. Test a real click on an iPhone through to a paid booking and confirm the identifier is on the reservation record. Bookings resold through an OTA will never carry one, so exclude them before you calculate coverage.

Google Ads · Tours and activities · what breaks

Why Google Ads under-reports for tour operators and activity businesses

  1. 01

    OTA and direct bookings blended

    The same seat at very different margins, and OTA carries no click identifier.

  2. 02

    Bookings counted rather than departures

    Weather and minimum-numbers cancellations are real and frequent.

  3. 03

    Departure capacity invisible

    A full boat makes further spend waste.

  4. 04

    Gclid, gbraid and wbraid never reaches the record

    Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.

Google Ads · Tours and activities · the fix

What working looks like — Google Ads · Tours and activities

  • Completed departures as the conversion

    At the direct-booking value, from the reservation system.

  • Direct and OTA reported separately

    Always, because the margin differs.

  • Capacity by departure in the report

    So spend does not chase full trips.

Google Ads · Tours and activities · architecture

How Google Ads and tour operators and activity businesses actually connect

  1. 1

    The conversion in tour operators and activity businesses

    The money event is a completed departure. Because weather and minimum numbers cancel trips, a booking is a promise rather than revenue, and the gap between the two varies by season.

  2. 2

    Google Ads needs a click to match

    A click identifier inside the 90-day window, a conversion action name that matches one configured in the account, a conversion timestamp for when the outcome happened, and a value. Read the match rate after uploading — a file can upload perfectly and match nothing.

  3. 3

    The identifier: gclid, gbraid and wbraid

    Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.

  4. 4

    Where it gets sent from

    The reservation system — departures completed by departure date, by channel, for the same window.

  5. 5

    Deduplication and window

    There's no shared event ID mechanism like Meta's. What matters instead is the counting setting on each conversion action — 'one' for lead-type conversions so a repeat submitter doesn't count three times, 'every' for ecommerce where a second purchase is a second sale. This is the single most common misconfiguration we find in Google Ads accounts. Google's offline import window is 90 days from the click. Anything older can't be matched, and rows outside it fail as unmatched without much explanation. Measure your median click-to-outcome time against that before designing anything.

Google Ads · Tours and activities · events

The conversion map for tour operators and activity businesses

Five events with a booking-to-departure gap measured in months.

Availability searchVolume signal, useful for demand shape.
Direct booking madeThe valuable channel, with an identifier.
OTA booking madeReal revenue at lower margin, no identifier.
Departure completedThe money event.
CancellationWeather or minimum numbers. Reversed.

Google Ads · Tours and activities · diagnose

Diagnostic order — Google Ads · Tours and activities

  1. 01

    Count records carrying gclid, gbraid and wbraid

  2. 02

    Long booking-to-departure gaps

    Seasonal trips booked months ahead can exceed import windows.

  3. 03

    OTA bookings with no click

    Segment them out before measuring coverage.

  4. 04

    Weather cancellations

    Not campaign failures and they must reverse.

  5. 05

    Read the match rate on the upload, not the success message

    A conversion action that stops receiving hits is flagged as inactive 30 days later — by which point a month of budget has already run against a missing signal. Check the last-received date on every action monthly; it takes two minutes and it's the cheapest monitoring available.

Google Ads · Tours and activities · prove

How it gets proven — Google Ads · Tours and activities

Source of truth

The reservation system — departures completed by departure date, by channel, for the same window

  • Completed departures reconciled per booking against what each platform reports, direct only.
  • OTA bookings identified and reported separately.
  • The booking-to-departure gap measured against every import window.
  • Cancellations confirmed to reverse.
  • The match rate on the upload, not the success message read directly, not inferred from an upload succeeding.

Google Ads · Tours and activities · free audit

What we check in the free audit

  • Count records carrying gclid, gbraid and wbraid
  • Long booking-to-departure gaps
  • OTA bookings with no click
  • Weather cancellations
  • Read the match rate on the upload, not the success message

Checked against

The reservation system — departures completed by departure date, by channel, for the same window

Get my free conversion tracking audit

Free30 minutesNo obligation

Google Ads · Tours and activities · when not to buy

When you don't need this — Google Ads · Tours and activities

  • If Google Ads already reports conversions that reconcile against the reservation system within a few percent, this is working and there is nothing to buy.
  • Measure identifier coverage yourself first — pull your last hundred records and count how many carry gclid, gbraid and wbraid.
  • If you're running Performance Max exclusively and haven't separated your conversion actions, the import will work and the reporting won't tell you much. Worth sorting the account structure first.

Google Ads · Tours and activities · what we deliver

What gets built — Google Ads · Tours and activities

  • Click identifier captured and persisted

    Bookings run months ahead of departure.

  • Carried into the reservation system

    Onto the booking record.

  • Completed departure fires the conversion

    At the booking value with the channel.

  • Cancellations reversed

    Weather and minimum-numbers cancellations are common.

  • Dispatch via Google's offline conversion import

    Uploaded against the click identifier, either through the Google Ads API or as a file. The upload is the easy part; what limits it is how many of your records carry an identifier at all. Verify the current column format against Google's own template — it has changed before.

Written guarantee

95%+ tracking accuracy

Measured against The reservation system — departures completed by departure date, by channel, for the same window. Miss it and we keep working at no cost.

Get my free conversion tracking audit

From $400 · See packages

FAQ

Google Ads · Tours and activities questions, answered

Yes, through conversion adjustments, which let you retract or restate a conversion you already uploaded. Confirm the time limit for adjustments in your account before relying on it for cancellations that happen close to departure.

Free · 30 min

Get Google Ads reporting what tour operators and activity businesses actually earn

Free30 minutesNo obligation