Once a Meta Pixel is connected, it records page views on the pages it covers. Booking events go further: they report every step a client takes on the way to booking, so you can optimise your Meta ads against completed bookings rather than against visits, and see how much each scheduling link earns.
You need a pixel connected first. See Connect Meta Pixel.
Turning on booking events
Booking events are on by default, for both new and existing connections, so there is nothing to switch on to get them. If they were turned off, turn them back on here.
Visit Admin panel.
Click on Other Integrations.
Click on Meta Pixel.
Turn on Send booking events to Meta.
The switch belongs to the pixel it sits under, not to the page. If a scheduling link or intro page carries a pixel of its own alongside this one, turn it on there as well.
What gets tracked
These are Meta's own standard events, so Meta's ad optimisation and reporting understand them with no further setup.
ViewContentwhen a client opens your intro page and sees your list of meetings, and again when they open one scheduling link. Meta has no separate event for a list, so both steps use this name. The intro page one carries the intro page as its content category and every meeting on it as content ids.AddToCartwhen a client picks a time slot.InitiateCheckoutwhen a client fills in the booking details.AddPaymentInfowhen a client submits a payment.Purchasewhen a booking is placed on a paid scheduling link, carrying the amount.Leadinstead of Purchase when the booking is on a free scheduling link. A free booking is a lead, not a sale worth nothing, and reporting it as a zero value Purchase would drag down the return on ad spend Meta calculates for you.Schedulewhen a booking is placed, free or paid.
A completed booking therefore sends two events: Schedule, plus either Purchase or Lead. Use Schedule when you want to count bookings whatever they cost, and Purchase when you want revenue.
Sending the client’s details along with the events
A second switch under the same pixel, Send client details along with booking events, attaches the booker’s name, email address and phone number to each event. Meta calls this advanced matching, and it lets Meta credit a booking to the ad that caused it even when the client arrived on one device and booked on another. Each value is hashed in the client’s browser, so what reaches Meta is a fingerprint rather than the details themselves.
Whether to turn this on is a question about your own privacy obligations rather than a technical one. Check it against the privacy policy you show your clients, and leave it off if you are unsure. Booking events work perfectly well without it, and with it off no client details reach Meta at all.
Breaking reports down by scheduling link
Booking events carry extra details, and the most useful one tells you which scheduling link a client was booking. Meta ignores these until you build a Custom Conversion on them.
scheduling_linkis the scheduling link the client is booking. Sent on every booking event except the intro page list.is_freeis whether the meeting is free or paid. Sent on every booking event except the intro page list.is_awaiting_approvalis whether the booking still needs your approval. Sent on Purchase and Lead.is_payment_pendingis whether the money has not arrived yet, which is the case for cash, UPI and recurring meetings where card is yet to be charged. Sent on Purchase and Lead.valueandcurrencyare the amount the client was charged, in the currency they were charged in. Sent on every booking event except the intro page list and Schedule.
A Purchase also carries the meeting and each add-on service as separate contents, along with the tax, the discount code used and the payment provider.
Refer Meta’s guide on creating a Custom Conversion.
Seeing your booking funnel in Meta
Events Manager’s Overview lists each event with the number of times it arrived, which is the funnel itself: ViewContent, AddToCart, InitiateCheckout, AddPaymentInfo, then Purchase or Lead. The drop between two of them is where your clients are leaving.
In Ads Manager, pick Purchase, Lead or Schedule, or a Custom Conversion built on one of them, as the conversion event for a campaign, and Meta optimises delivery towards the people most likely to book.
The reports in Events Manager take a few minutes to fill in. Test events updates straight away, so use it to confirm events are arriving.
Note
Embedded scheduling links report their bookings too, but through the pixel on your own website rather than one NeetoCal loads. They send no page views of their own, since your website's pixel already records the page holding the embed. See Capturing booking events from embedded scheduling links.
Revenue counts bookings placed, not money received. A booking paid in cash, one still awaiting your approval, and one later cancelled or refunded are all counted, so the revenue Meta reports reads higher than what you collect. Filter out
is_awaiting_approvalto leave out bookings you have not accepted yet, andis_payment_pendingto leave out bookings whose money has not arrived.Free bookings are sent with a value of 0. Meta needs a currency whenever a value is set and a free meeting has no fee to take one from, so those are reported in USD. They add nothing to your revenue. Use
is_freeto tell free and paid bookings apart.