Docs›Marketing tracking
Google Analytics & Google Ads Conversion Tracking in Mangobeds
5 min read
If you run ads or post on social media to get direct bookings, you want to know what works. Connect your Google Analytics 4 and Google Ads accounts to your property in Mangobeds and your booking form reports every step a guest takes, from the first search to the finished booking.
No Tag Manager setup, no custom code, no scripts to paste into your website. It is part of marketing tracking in Mangobeds, which also covers the Meta Pixel and Google Tag Manager.
What You Need
- A Google Analytics 4 property with a web data stream. You need its Measurement ID, which looks like
G-XXXXXXXXXX. Find it in GA4 under Admin > Data streams > your web stream. - A Google Ads Conversion ID, optional. It looks like
AW-XXXXXXXXXand lets Google Ads link bookings to the ad clicks that brought them. You find it in Google Ads under Goals > Conversions.
Setting It Up
Go to your property’s Apps section and open Marketing Tracking. Enter your GA4 Measurement ID, add your Google Ads Conversion ID if you have one, and click Connect. If the app is already connected for Meta, open Settings and add them there. Your booking form starts sending events right away.
Each property has its own settings, so if you manage several properties each one can report to its own GA4 property and Google Ads account. It works alongside any Google Analytics or Google Tag Manager you already have on your website, and does not send page views of its own, so your page counts stay as they are.
Embedding the form on your website? Use the embed code from your booking form’s page in Mangobeds. It sends the events from your own website’s page, so they arrive in every browser and join the visit that brought the guest in, with its campaign and source. A form placed in a hand-made iframe cannot send them.
What Your Booking Form Sends
Mangobeds uses the standard GA4 ecommerce events, so they fill in GA4’s own funnel and monetization reports with no extra setup.
- Search:
searchandview_item_listare sent when a guest searches dates and sees the results. Searches where nothing was free are sent too, so you can spot the dates guests want and you cannot offer. - Picking rooms and extras:
add_to_cartandremove_from_cartare sent each time a guest adds or removes a room or an extra. - Starting checkout:
begin_checkoutis sent when the guest reaches the step where they fill in their details. - Going to payment:
add_payment_infois sent when the guest clicks Book on a booking that is paid online. - Booking:
purchaseis sent when the booking is created, just before the guest is taken to the payment page.
What Each Event Includes
The events carry the booking details, not just the fact that something happened:
- Booking amount (
value): the full price of the booking, rooms plus extras, minus any coupon discount. Onpurchasethis is the money the booking is worth, which is what Google Ads needs to optimise for revenue. - Currency (
currency): your property’s currency, even when the guest browsed the form in another one. - Rooms and extras (
items): one line per room, with its name, the unit and its price for the stay, and one line per extra with its quantity. GA4 uses these for its item reports, so you can see which rooms sell. - Coupon (
coupon): the coupon code, when the guest used one. - Booking ID (
transaction_id): onpurchaseonly. GA4 uses it to never count the same booking twice. - Property name (
affiliation): onpurchase, so bookings from several properties in one GA4 account stay apart. - Payment provider (
payment_type): onadd_payment_info. - Stay details: check-in and check-out dates, nights and number of guests, covered in the next section.
Optimise Your Ads for Bookings
Because purchase carries the booking amount, you can tell Google Ads to bring you bookings and revenue rather than clicks. Mark purchase as a key event in GA4, link GA4 to Google Ads, and import purchase as a conversion in Google Ads under Goals > Conversions. Campaigns can then bid for conversions, or for conversion value using the booking amount.
See Dates and Guests in Your Reports
Events also include the stay details below. GA4 receives them, but only shows them in reports once you register each one as a custom dimension. In GA4 go to Admin > Data display > Custom definitions, click Create custom dimension, choose the Event scope and type the parameter name exactly as written here:
start_date: the check-in date.end_date: the check-out date.nights: the number of nights.number_of_guests: how many guests the stay is for.results_count: how many rooms a search offered, and 0 when nothing was free.
Data only shows up in a custom dimension from the moment you create it, so set these up early.
Google Analytics or Google Ads?
The GA4 Measurement ID is for understanding your guests: how many search, how many start a booking, where they drop off, and what they book.
The Google Ads Conversion ID is for your ads: it tells Google Ads a booking happened, so it can learn which clicks lead to bookings and show your ads to people more likely to book. Link your GA4 and Google Ads accounts in Google Ads and import the purchase event as your conversion.
You can use both together, or just GA4 if you do not run ads.
Check That It Works
- Watch it live: open GA4 > Reports > Realtime, go through your booking form in another tab, and the events show up there shortly.
- Count bookings as conversions: check that
purchaseis marked as a key event in GA4 under Admin > Events. - Remember the steps:
purchaseis only sent when the guest clicks Book. A guest who stops on the details step sendsbegin_checkoutbut nopurchase, which is exactly the drop-off you want to see.