Skip to main content
All guides
Tracking

Is your booking engine tracked? A 10-minute check

If bookings are not reaching GA4 and your ad platforms, AI bidding is guessing. This hands-on check uses free Google tools and takes about ten minutes.

By the HotelierKit team · 7 min read
A classic hotel guest room

You are paying Google and Meta to find guests. Their AI decides who sees your ads, when, and at what price. It makes those decisions based on one thing: which past clicks turned into bookings.

If your bookings are not reaching those platforms, the AI is guessing. It will still spend your budget. It just will not know what a good result looks like.

This guide shows you how to check, using free Google tools, in about ten minutes. You do not need to be technical. You need a laptop, Chrome and access to your GA4 property.

Why this matters more than it used to

Google's smart bidding and Performance Max, and Meta's Advantage+, promise to find the right guest at the right price. The view at Hy Digital, our sister hotel marketing agency, is simple: the AI does not know anything you have not told it. It learns from your conversion signals. When those signals are missing or wrong, it optimizes toward the wrong thing, and campaigns can look healthy while bookings tell a different story.

For hotels, the weak point is usually the same: the moment a guest clicks Book Now and leaves your website for the booking engine.

A real example

In October 2026, a technical review of a riverside resort near Bangkok found:

  • Two Google Tag Manager containers configured in the site's cookie plugin. Neither one loaded.
  • No analytics request left the page at all. Bookings, phone calls and LINE clicks were not counted.
  • The Book Now button sent guests to a separate booking domain where consent and measurement stopped.
  • One booking button still carried a tracking parameter copied from a browser session a year earlier.

The site was fast and looked good. None of this was visible to a guest, but the ad platforms had nothing to learn from. Each of these problems can be spotted with the free tools below.

The 10-minute check

Open your website in Chrome. Have your GA4 property open in another tab.

Minute 1: accept cookies like a guest would

Go to your homepage. When the cookie banner appears, accept all. This matters: Google notes that events will not appear in DebugView if consent mode is in place and analytics cookies have not been granted. You want to test the path a consenting guest takes.

Minutes 2 to 3: GA4 Realtime

In GA4, go to Reports, then Realtime. Browse two or three pages of your site.

What you want to see:

  • At least one active user (you) in the last five minutes.
  • Your page views appearing under "Views by page title".
  • Events such as page_view and scroll in the event count card.

If nothing appears after a minute or two, stop here. Your GA4 tag is not loading, or is sending data to a different property. Everything else in this guide depends on fixing that first.

Minutes 3 to 5: Tag Assistant

Go to tagassistant.google.com, click Add domain, enter your website address and click Connect. Your site opens in a new window, linked to a debugging panel.

Check the list of tags found:

  • Is there exactly one GA4 measurement ID (it starts with G-)? Two different IDs often means old and new properties are both installed.
  • Is your Google Tag Manager container present (it starts with GTM-)? If you expect one and it is missing, it is configured somewhere but not loading, exactly as at the resort above.
  • Is your Google Ads tag present (it starts with AW-)?

Connecting Tag Assistant also turns on debug mode for your browser, which you need for the next step.

Minutes 5 to 7: DebugView and the actions that matter

In GA4, go to Admin, then under Data display, DebugView. Select your device if asked. Now, in the Tag Assistant window, do what a guest would do:

  1. Click a phone number.
  2. Click your email, LINE or WhatsApp link.
  3. Click Book Now.

Each click should appear as an event in DebugView within a few seconds. Note the names. If clicks that matter to your business produce nothing, they are not being measured, and they cannot be reported to Google Ads or Meta.

Minutes 7 to 9: the booking-engine hop

This is where hotel tracking most often breaks. After you click Book Now, look at the address bar on the booking engine page.

Check for a _gl= parameter in the URL. GA4 cross-domain measurement works by adding this parameter when a guest moves from your site to another domain you have listed. It lets GA4 treat your site and the booking engine as one visit by one person. No _gl, no joined-up journey. The booking, if it is tracked at all, gets credited to your own website as a referral rather than to the ad or search that brought the guest.

Check the button links themselves. Right-click Book Now and copy the link address. It should be a clean booking URL. If it already contains _gl=, gclid= or a long string of tracking code before anyone has clicked, someone has pasted a link from their own browser into the site. That parameter should be added at the moment of the click, not hard-coded.

Check that the booking engine is tagged. With Tag Assistant still connected, see whether your GA4 measurement ID is found on the booking engine pages too. Google's guidance is that every domain in a cross-domain setup must use the same tag ID from the same data stream.

Check consent on the other side. Your booking engine is a different website. Ask your provider how it handles consent, and whether it respects the choice a guest made on your site or asks again. Under Google's consent mode, four signals control what is stored and shared: ad_storage, analytics_storage, ad_user_data and ad_personalization. If the booking engine sets them to denied by default and never asks, measurement stops there.

Minutes 9 to 10: is the purchase event arriving?

In GA4, go to Admin, then Events, and look for purchase in the last 30 days.

  • If it is missing, your booking engine is not sending bookings to GA4. Ask your provider whether they support GA4 ecommerce tracking and how to enable it.
  • If it is there, check that it is marked as a key event, and open an example to confirm it carries a transaction_id, a value and a currency. Google's ecommerce documentation lists transaction_id as required for purchases. Without a value, your ad platforms can count bookings but cannot tell a one-night stay from a two-week villa booking.

Finally, compare the purchase count for last month with the number of direct bookings in your booking engine for the same dates. They will not match exactly, but they should be close.

Reconciling Google Ads and GA4

If you run Google Ads, you will notice its conversion number rarely matches GA4. That is expected. Google Ads counts conversions within its own attribution windows, by default 30 days after a click and 1 day after a view, and can include view-through conversions. GA4 uses data-driven attribution by default and spreads credit across touchpoints.

Hy Digital's reconciliation process, from their audits, starts with three checks:

  1. Compare like with like. Same date range, same conversion event, in both tools.
  2. Look at the conversion settings in Google Ads. Check the click-through window and whether Enhanced Conversions is switched on.
  3. Look for duplicates. If both a browser tag and a server-side tag send the same booking, it may be counted twice.

In their audits, a gap of more than about 15% usually points to a setup problem rather than a difference in how the tools count. For revenue, treat your booking engine as the source of truth, and use GA4 and Google Ads to decide where to spend.

For the full walkthrough, read Hy Digital's Why do Google Ads and GA4 show different conversion numbers?

What good looks like

If your setup passes, you should be able to say yes to all of these:

  • GA4 Realtime shows your visit within a minute.
  • Tag Assistant finds one GA4 ID and the containers you expect, once each.
  • Calls, messaging clicks and Book Now clicks appear in DebugView.
  • The booking engine URL carries _gl= after you click, and the button link does not before.
  • Your GA4 tag is found on the booking engine pages.
  • The booking engine handles consent, and does not silently deny it.
  • A purchase event arrives with a transaction ID, value and currency.
  • Google Ads imports that purchase as its primary conversion.

Beyond this, Hy Digital recommends server-side tracking, Meta's Conversions API and Enhanced Conversions to recover signals that browsers and ad blockers now hide. Those are worth doing once the basics above are solid. Their article AI bidding is only as good as your tracking explains why.

If your check failed

You are not alone, and it is fixable. Most of the problems above come from tracking being set up once, at launch, and never checked again.

HotelierKit is a managed website platform for hotels. GA4, Google Tag Manager, conversion tracking and the booking engine connection are part of the service, set up during migration and kept working as your site changes. Your website keeps changing. Your bookings should not pay for it.

Book a demo and we will run this check on your site with you, and show you what we would fix first.

Frequently asked questions

Why don't my bookings show up in Google Analytics?

Many hotel booking engines run on a separate domain. If cross-domain measurement is not set up, or the booking engine does not carry your GA4 tag and handle consent, measurement stops when the guest clicks Book Now. The booking happens, but GA4 and your ad platforms never see it, or credit it to the wrong source.

Why do Google Ads and GA4 show different numbers of bookings?

They count differently. Google Ads uses its own attribution windows (by default 30 days after a click and 1 day after a view) and can count view-through conversions. GA4 uses data-driven attribution by default. Some gap is normal. A large gap usually points to a setup problem, such as duplicate tags or a conversion that fires on the wrong page.

Does AI bidding in Google and Meta need purchase data?

Yes. Smart bidding, Performance Max and Meta Advantage+ learn from the conversions you send them. If they only see clicks or page views, that is what they optimize for. Sending the real booking event, with its value, lets them find guests who actually book.

Want this done for you?

HotelierKit runs the website, tracking and AI-search groundwork for you, from $105 per month.

Guests are already asking AI where to stay

Make sure the answer includes your hotel.

A 30-minute demo on your own website. No obligation.