How to set up booking conversion tracking in GA4 for tour operators

A step-by-step guide to tracking bookings as conversions in Google Analytics 4, so you can see which pages and campaigns actually bring in revenue.

alpnAI/ 8 min read

You’re running ads, publishing blog posts, maybe even paying someone to manage your SEO. But when someone actually books a trip on your site, do you know where they came from? Can you tell which blog post or Google search led them to pull out their credit card?

If you don’t have conversion tracking set up in Google Analytics 4, the answer is no. You’re flying blind on the one metric that matters most: bookings. Everything else, the traffic numbers, the bounce rates, the time-on-page stats, is just noise until you can connect it to revenue.

Setting this up is not complicated. Maybe 30 minutes if you’ve never touched GA4 before. After that, you’ll actually know what’s working.

What GA4 conversion tracking actually does

GA4 tracks events. Every interaction on your site, a page view, a button click, a form submission, gets logged as an event. Conversion tracking is just telling GA4 which of those events represent something you care about.

For a tour operator, the event you care about is a completed booking. When someone finishes the checkout process, whether through FareHarbor, Peek, Rezdy, or your own booking system, GA4 needs to know it happened. Once it does, you can look at any traffic report and see not just how many people visited, but how many booked.

That changes everything. Instead of guessing that your Arkansas River rafting page “seems to be doing well” because it gets a lot of traffic, you can see that it generated 23 bookings last month from organic search. Compare that to your half-day kayak page, half the traffic, twice the bookings. Now you know where to put your energy.

Check your current setup first

Before you build anything new, take five minutes to see what’s already in place. Open GA4 (analytics.google.com), go to Admin, and click on Events in the Data Display section.

You’ll see a list of events GA4 is already collecting. Page views, session starts, scrolls, and clicks are usually there by default. What you’re looking for is anything related to bookings. If your booking platform has its own GA4 integration (FareHarbor, Peek, and Checkfront all do), you might already have events named something like “purchase,” “begin_checkout,” or “booking_complete” showing up.

If you see a purchase event with data flowing in, good. You’re further along than most operators and may just need to mark it as a conversion (more on that below). If you see nothing related to bookings, that’s where we start.

While you’re in there, confirm GA4 is actually receiving data from your website. Go to Reports, then Realtime. Open your site in another tab and browse around. Your visit should appear within a few seconds. If nothing shows up, your tracking code isn’t installed correctly. Fix that before worrying about anything else.

Set up the booking event

How you create the booking event depends on your setup. There are two common paths for tour operators.

If your booking platform sends data to GA4, this is the easier route. FareHarbor, Peek, and most modern booking tools can push a purchase event to GA4 when a booking is confirmed. Check your booking platform’s settings or help docs for “Google Analytics 4 integration” or “GA4 event tracking.” You’ll usually need to paste your GA4 Measurement ID (it starts with G- and you’ll find it under Admin, then Data Streams in GA4) into a field in your booking platform’s admin panel.

If your booking happens on a third-party domain (the customer leaves your site and completes checkout on fareharbor.com, for example), you’ll also need cross-domain tracking. In GA4, go to Admin, Data Streams, click on your web stream, then Configure Tag Settings, then Configure Your Domains. Add the booking platform’s domain there. Without this step, GA4 treats the customer’s trip to the booking page as a separate session, and you lose the connection between their original visit to your site and the booking they made.

If your booking platform doesn’t integrate with GA4, you’ll need Google Tag Manager. This is more hands-on but still manageable. The basic approach is to fire a custom event when a visitor reaches your booking confirmation page, the “thank you” or “booking confirmed” page that appears after payment.

In Tag Manager, create a new tag of type GA4 Event, set the event name to “purchase” or “booking_complete,” and set the trigger to fire on the confirmation page URL. If your confirmation page URL contains something consistent like “/confirmation” or “/thank-you,” you can use a Page View trigger filtered to that URL.

Once your booking event is flowing into GA4, you need to mark it as a conversion. Go to Admin, then Events. Find your booking event in the list. On the right side, there’s a toggle to mark it as a key event. Flip it on.

That’s it. Every traffic report, campaign report, and landing page report will now include a column showing how many conversions each source generated. The numbers start populating immediately.

You can also track revenue alongside conversions. Your booking event needs a “value” parameter with the dollar amount. Most booking platform integrations send this automatically with the purchase event. If you’re using Tag Manager, you can pull the revenue from the confirmation page using a data layer variable. Worth doing. A half-day trip and a multi-day expedition look very different in a revenue report even if they both count as one conversion.

Verify everything works

Don’t assume it’s working. Test it yourself.

Make a test booking. Most platforms let you create a test reservation or use a promo code for a zero-dollar transaction. Then check three places in GA4.

Go to Realtime and look for your booking event. It should appear within a few seconds of the confirmation page loading. If it doesn’t show up, something in the event setup is wrong. Double-check your tag configuration, your Measurement ID, and your trigger conditions.

Go to Events (under Admin) after 24-48 hours and confirm the event is listed and accumulating counts. GA4’s standard reports have a processing delay, so don’t panic if it doesn’t appear in the main reports immediately.

Go to Advertising, then Attribution, then Conversion Paths. After a few conversions have been recorded, this report shows the touchpoints visitors hit before converting. You’ll see things like “organic search then direct then booking,” which tells you the customer first found you through Google, came back later by typing your URL, and then booked. This is where the real insight lives.

What to do with the data once you have it

Tracking conversions is the starting point, not the finish line. Once you have a few weeks of data, here’s where to look.

Check which landing pages produce bookings. In GA4, go to Reports, Engagement, then Landing Pages. Add the key events column if it’s not already visible. You’ll quickly see which pages bring in visitors who actually convert versus pages that get traffic but no bookings. If your trip pages aren’t converting, this report will show you exactly which ones need work.

Check which traffic sources produce bookings. Under Reports, Acquisition, look at Traffic Acquisition. Filter to key events. Organic search, paid search, social media, referral, direct, they all show up here with their conversion counts. If you’re comparing organic SEO to paid ads, this is where you get a real answer instead of a guess.

Check which blog posts lead to bookings. This one surprises most operators. Go to the Pages and Screens report and look for blog URLs with conversions attached. A post about what customers search before booking might be pulling in people who convert at a higher rate than your homepage. That’s worth knowing when you’re deciding what to write next.

Check your overall marketing performance regularly. Conversion data in GA4 is most useful when you look at it monthly and compare trends over time, not as a one-time snapshot.

Common mistakes to avoid

A few things trip up operators when they first wire this up.

The most common one: tracking page views on the checkout page as conversions instead of tracking completed bookings. If you mark every visit to your booking form as a conversion, you’re counting browsers, not buyers. Track the confirmation page, the one that appears after payment.

Cross-domain tracking is easy to forget. When your booking widget lives on a different domain and you skip this step, GA4 attributes most bookings to “referral” from the booking platform. Suddenly it looks like FareHarbor is a traffic source instead of a checkout step, and you lose all the upstream data about how the customer originally found you.

Internal traffic is another blind spot. Your team tests the booking flow, checks the site, clicks around. Those visits inflate your numbers unless you exclude them. Go to Admin, Data Streams, Configure Tag Settings, then Define Internal Traffic, and add your office IP address.

Then there’s impatience. GA4 needs volume before the reports tell you anything useful. Five bookings a month means it takes a couple of months to spot patterns. Don’t tear out your tracking after two weeks because the data looks thin.

Where this fits in the bigger picture

Conversion tracking in GA4 is one piece. On its own, it tells you which channels and pages produce bookings. Pair it with Google Search Console and you can see which keywords drive the traffic that actually converts. Pair it with your booking platform reports and you get the full revenue picture.

Most tour operators are somewhere between “I check my website traffic sometimes” and “I have no idea where my online bookings come from.” This gets you past both. You stop guessing and start seeing the actual path from search query to completed booking.

Half an hour of setup. Real data from that point on. Worth it.

Keep Reading