Where do your bookings actually come from — search, paid ads, a partner's link, that blog feature from last spring? And where in the checkout do would-be guests give up? Google Analytics answers both questions, and because the TicketingHub booking widget runs on your own website, your booking funnel can be measured with the same tool you already use for the rest of your site.
What is Google Analytics?
Google Analytics is Google's free web analytics service and by far the most widely used one on the web. It reports where your visitors come from, what they do on your site, how long they stay, and — once e-commerce tracking is on — how much revenue each traffic source produces. The current generation, Google Analytics 4 (GA4), is built around events: every meaningful action a visitor takes can be recorded, counted, and segmented.
For a tour, activity, or attraction operator, that turns gut feeling into evidence: which campaigns sell tickets, which pages convince people, and which step of checkout leaks bookings.
How TicketingHub connects to Google Analytics
TicketingHub automatically detects Google Analytics code installed on your website — there is no separate tag to add inside the widget. To see sales figures, you enable e-commerce reporting in your Analytics account, and booking revenue starts appearing against your traffic sources.
Because the widget is a single-page application (it doesn't reload the page as guests move through booking steps), TicketingHub also exposes its own browser events so GA4 can follow the journey in detail. The widget fires a th:page_view event each time the booking view changes, and a th:purchase event at order completion carrying the currency, order value, order ID, items, transaction ID, and any coupon used.
Follow the whole booking funnel in GA4
The widget's booking steps map cleanly onto GA4's standard e-commerce events. TicketingHub supports seven trackable events covering the complete journey:
- page_view — the widget view changed (steps include event selection, date and time, ticket tier, basket, customer details, payment, and success)
- select_item — the guest picked a product or ticket
- add_to_cart — items were added to the basket
- view_cart — the order summary was shown
- begin_checkout — checkout started
- add_payment_info — payment details were submitted
- purchase — the booking was completed
Events can be sent to GA4 through Google's Measurement Protocol using your measurement ID and API secret, with parameters such as store name, widget name, currency, value, and an items array.
See exactly where guests abandon checkout
With each widget step reported as an event, GA4's funnel reports show you where people drop off: are they leaving at date selection because availability looks thin, or at payment because a surprise cost appeared? Knowing the step turns a vague conversion problem into a specific fix.
Attribute bookings to the channels that earn them
Once purchase events carry real revenue, every channel report becomes a revenue report. You can compare organic search, paid campaigns, email, and referral partners on the only metric that matters — booked value — and shift budget accordingly. Google Ads can be linked for campaign-level conversion reporting.
Understand your audience and season
Analytics shows the countries, cities, devices, and dates behind your demand. Operators use this to time promotions before shoulder season, prioritise translations for their biggest source markets, and make sure mobile checkout gets the attention its traffic share deserves.
One structural advantage worth noting: because the TicketingHub widget is embedded in your own website rather than redirecting guests to a separate booking domain, there's no cross-domain measurement to wrestle with. The visit that started on your homepage and ended in a completed booking is one continuous, attributable session — which keeps channel and campaign reports honest.
Setting it up
- Add your Google Analytics tag to your website, if it isn't there already.
- Enable e-commerce reporting in your Analytics account so booking revenue is recorded.
- For GA4 funnel tracking, forward the widget's events using the measurement ID and API secret from your GA4 property — the help centre documents the event names and parameters.
- Prefer the widget not to generate pageview hits? Add the ga-track-pageviews="false" attribute to the widget script.


