Set up conversion tracking (Meta Pixel, Google Tag Manager, GA4)
Conversion tracking connects your Rex booking page to your marketing and analytics tools. As guests move through the booking flow, Rex can fire events β page views, package views, add-to-cart actions, and completed bookings β to the platforms you advertise and report on. That lets you measure which ads and campaigns actually drive reservations, optimize them, and build retargeting audiences.
Rex supports four destinations, and you can run any combination of them at once: Meta Pixel, Google Tag Manager, Google Analytics 4, and server-side GTM. This guide walks through each.
Where to set this up
All tracking is configured in one account-wide place β the settings apply across every venue and booking page on your account, so you only set them up once.
On the Global Integrations page, find the integration you want (for example Meta Pixel), open it, fill in its fields, and save. Each integration is independent β connect only the ones you use.
What you can connect
| Field | Description |
|---|---|
| Meta Pixel | Track conversions, page views, and funnel events to Meta (Facebook & Instagram) Ads. You'll need your Meta Pixel ID. |
| Google Tag Manager | Push booking events into your GTM container, then forward them from there to GA4, Google Ads, or any other tag. You'll need your GTM container ID. |
| Google Analytics 4 (GA4) | Send events straight to GA4 using the Measurement Protocol, without needing a tag manager. You'll need your GA4 Measurement ID and an API secret. |
| Server-side GTM (advanced) | Forward events to your own server-side GTM container for first-party, server-side tracking. For teams already running sGTM. |
If you're not sure which to pick: Meta Pixel for Facebook/Instagram ads, GA4 for analytics and Google Ads, or Google Tag Manager if you'd rather manage all your tags in one container.
Connect Meta Pixel
Open the Meta Pixel integration
On the Global Integrations page, open Meta Pixel.
Enter your Pixel ID
Paste your Meta Pixel ID into the Pixel ID field. It's the 15β16 digit number from your Meta Events Manager.
Choose your tracking events
Under Tracking Events, select the events you want sent to Meta, then save. Each one maps to a standard Meta event (for example Reservation Confirmed sends a Purchase). See the event list below for what each one means.
On a completed booking, Rex also passes the guest's email and phone for Meta's advanced matching when they're available, which improves attribution.
Connect Google Tag Manager
Open the Google Tag Manager integration
On the Global Integrations page, open Google Tag Manager.
Enter your Container ID
Paste your GTM container ID into the Container ID field β it looks like GTM-XXXXXXX.
Choose your connected events
Under Connected Tracking Integrations, select the events you want pushed to your container's data layer, then save. From GTM you can forward those events on to GA4, Google Ads, or any other tag you manage.
Connect Google Analytics 4 (GA4)
Open the GA4 integration
On the Global Integrations page, open Google Analytics 4.
Enter your Measurement ID and API secret
Enter your GA4 Measurement ID (it looks like G-XXXXXXXXXX) and an API Secret. Create the secret in GA4 under Admin β Data Streams β your stream β Measurement Protocol API secrets, then paste it in and save.
Server-side GTM (advanced)
If you run your own server-side GTM container, Rex can forward events to it directly. This is an advanced setup β skip it unless your team already uses sGTM.
| Field | Description |
|---|---|
| sGTM Endpoint URL | The full URL of your server-side GTM container. Must start with https://. |
| GA4 Measurement ID | Your GA4 Measurement ID (for example G-XXXXXXXXXX). |
| API Secret | The Measurement Protocol API secret from your sGTM container. |
| Server Preview Header | Optional. The x-gtm-server-preview header value β set this only while you're using sGTM preview mode. |
| Tracking Events | Select which events to forward to your container. |
Choose which events to track
Each integration lets you pick exactly which moments in the booking flow to track. Turn on only what you need β at minimum, most venues track Reservation Confirmed (your purchase/conversion event). Here's what each event means and when it fires:
| Field | Description |
|---|---|
| Page Visited | Any page in the booking flow loads. |
| Venue Page Visited | A guest opens one of your venue booking pages. |
| Package Card Expanded | A guest opens a package to view its details. |
| Time On Package Selected | A guest picks a time slot for a package. |
| Add Ons Page Visited | The add-ons step opens. |
| Add On Selected | A guest adds an add-on to their booking β a cart event. |
| Activities Page Visited | The activities step opens. |
| Activity Selected | A guest adds an activity to their booking β a cart event. |
| Checkout Started | The guest reaches the checkout step (when they're signing). |
| Reservation Details Page Visited | The reservation-details step opens. |
| Payment Page Visited | The guest reaches the payment step. |
| Cart Abandoned | A guest reached the payment page but left without booking. |
| Reservation Confirmed | A booking is completed. This is your purchase/conversion event. |
| Membership Confirmed | A guest completes a membership signup. |
| Feedback Confirmed | A guest submits the post-visit feedback survey. |
What's included with a completed booking
The Reservation Confirmed event is the important one for measuring return on ad spend. When a booking completes, Rex sends the order value, the currency, a transaction ID, the package name, the number of guests, and any discount codes used β so your platform can attribute revenue to the right campaign.
You're responsible for disclosing tracking and collecting any consent your guests are entitled to under your local privacy laws. Reflect whatever you enable here in your own privacy policy.
Troubleshooting
No events are showing up in my ad or analytics platform
Possible causes
- β’The integration isn't connected, or no events were selected.
Fix
Open the integration on the Global Integrations page, confirm the ID is entered, and make sure the events you expect are checked.
Events fire but the ID looks rejected
Possible causes
- β’The ID is in the wrong format.
Fix
Check the format: Meta Pixel is a 15β16 digit number, a GTM container is GTM-XXXXXXX, and a GA4 Measurement ID is G-XXXXXXXXXX.
Purchases come through with no revenue value
Possible causes
- β’Reservation Confirmed isn't selected, or your platform isn't mapping the value field.
Fix
Make sure Reservation Confirmed is turned on. Rex sends the order value and currency with it β map those fields in your platform or GTM tag.
GA4 isn't receiving events
Possible causes
- β’The Measurement Protocol API secret is missing or wrong.
Fix
Re-create the secret in GA4 under Admin β Data Streams β Measurement Protocol API secrets and paste it into the API Secret field.
Updated Jun 19, 2026
Was this helpful?