Track hotel bookings and restaurant orders, and send event data to Klaviyo for email marketing and automation.
This Google Tag Manager template enables seamless tracking of behavioral events from popular hotel booking engines and restaurant ordering platforms, sending structured data directly to Klaviyo.
Note on the name: this repository is named
klaviyo-hotels-tagsfor historical reasons, but the template now supports both hotels and restaurants. The published tag is "Klaviyo Hotels and Restaurants Tracking."
- ๐จ Hotels: Cloudbeds, Mews, and Guesty booking engines
- ๐ฝ๏ธ Restaurants: Olo (Olo Serve) online ordering
- ๐ Automatic Event Tracking: Viewed Listing / Viewed Product, Added to Cart, Started Checkout, and more
- ๐ค Customer Identification: Automatically identifies guests with email/phone
- ๐ฏ Rich Event Data: dates, pricing, guests, property details (hotels); items, modifiers, fulfillment type (restaurants)
- ๐ง Easy Setup: Simple GTM installation with no coding required
Tracks events from Cloudbeds booking engine via GTM dataLayer events.
๐ View Cloudbeds Setup Guide
Tracks events from Mews Distributor (booking engine) via GTM dataLayer events.
Tracks events directly from Guesty booking via GTM and direct DOM elements.
Tracks restaurant ordering events from Olo Serve via Olo's native on-site event bus (window.Olo).
Hotels (Cloudbeds, Mews, Guesty)
| Event | Description | Trigger |
|---|---|---|
| Viewed Listing | Guest views property details | Property/room page view |
| Started Checkout | Guest begins checkout process | Checkout initiated |
Restaurants (Olo)
| Event | Description | Trigger |
|---|---|---|
| Viewed Product | Guest views/opens a menu item | Item detail / product click |
| Added to Cart | Guest adds an item to the cart | Add to cart |
| Started Checkout | Guest begins checkout | Checkout initiated |
Additionally, we identify a guest on the checkout if they are anonymous after they fill in their email or phone number.
- Hotels: property name, ID, location; room/listing details; check-in/out dates; guests, nights, rooms; pricing
- Restaurants: product name, ID, brand; price; categories; modifiers; fulfillment type (Pickup/Delivery); cart items and value; image URL
- Guest contact information (email, phone, name)
- Active Klaviyo account
- Google Tag Manager installed on your website
- A supported platform โ hotels: Cloudbeds, Mews, or Guesty; restaurants: Olo
- In Google Tag Manager, go to the Templates section in the sidebar
- Under Tag Templates, click "Search Gallery"
- Look for "Klaviyo Hotels and Restaurants Tracking"
- Install the template
-
Go to Tags โ New
-
Click Tag Configuration
-
Select Klaviyo Hotels and Restaurants Tracking from your templates
-
Configure the following:
Required Fields:
- Klaviyo Public API Key: Your Klaviyo account public key (6-character code)
- Platform: Select your platform โ Cloudbeds, Mews, Guesty (hotels) or Olo (restaurants)
-
Triggering: Set to fire on All Pages or specific pages where your booking/ordering experience loads
- Click Save
- Submit your GTM container
- Publish changes
- Use GTM Preview Mode to test
- Complete a booking or ordering flow on your website
- Verify events appear in your Klaviyo account
- Log in to Klaviyo
- Go to Settings โ Account โ Settings โ API Keys
- Copy your Public API Key (6-character code, e.g.,
ABC123) - Paste into the GTM tag configuration
Once events are flowing to Klaviyo, you can:
- Guests who viewed properties/products but didn't book or order
- Guests who started checkout but didn't complete
- Guests who engaged with specific property types or menu items
- Abandoned checkout / cart recovery emails
- Browse recovery for viewed properties and products
- Post-booking / post-order confirmation and upsells
- Pre-arrival information and reminders (hotels); reorder reminders (restaurants)
Use event properties in emails:
- Property or product name and details
- Booking dates / cart contents
- Pricing information
- All modern browsers (Chrome, Firefox, Safari, Edge)
- Mobile browsers supported
- Minimal impact on page load
- Asynchronous event tracking
- No blocking operations
- Reach out to our support team at support@klaviyo.com
- Check out our help center Klaviyo Documentation
Copyright ยฉ Klaviyo. All rights reserved.
Version: 2.0.0 Last Updated: June 2026 Maintained by: Klaviyo