How to track Square Appointments bookings as conversions in Meta and Google Ads
Curve Compliance keeps the ad click attached when a visitor leaves your site to book in Square Appointments, and credits bookings made days later to the original ad. Without it, the click ID and UTMs stay behind when the visitor moves to Square, so the booking can't be credited to the ad. Curve carries that attribution across with a bridge token, credits the booking when Square's webhook arrives and sends the conversion server-side to Meta, Google, TikTok, Microsoft and LinkedIn.
Square Appointments BAA status: Signs a BAA. Square Appointments, Invoices and other features Square identifies as HIPAA-enabled. See Square Appointments in the BAA Directory.
See how Curve Compliance tracks Square Appointments bookings on your own funnel.
How it works
Step 1
One script replaces your ad pixels
Curve's team installs the Curve Compliance script on your site in place of your browser ad pixels, so conversions reach your ad platforms from Curve's servers.
Step 2
The click to Square carries a bridge token
When a visitor clicks a plain link to Square Appointments, Curve keeps their ad attribution: click IDs, UTM parameters, the session and the page the click came from. It adds a short reference to that attribution, called a bridge token, to the booking link and records a booking_intent event. The token carries no form content and is not a patient identifier.
Step 3
Square returns the token with the booking
Square keeps the token with the appointment and includes it in the webhook it sends when the booking is made. Where a custom field is needed to carry the token into that webhook, Curve's team sets it up.
Step 4
Curve credits the booking to the ad click
The webhook is set up in Curve under Incoming Webhooks to match on the bridge token, and Curve's team configures it with you. When it arrives, Curve credits the booking to the original visit, even when the patient books days after the click.
Step 5
The conversion goes out server-side
Curve forwards the booking as a conversion to Meta, Google, TikTok, Microsoft and LinkedIn. Campaign Reporting then puts your ad spend next to the tracked bookings for each campaign.
What reaches Meta and Google
Meta and Google receive the Square booking as a conversion sent from Curve's servers and credited to the ad click that started it. TikTok, Microsoft and LinkedIn receive it the same way.
- Each ad platform receives only a fixed list of fields.
- Contact identifiers are off by default, and SHA-256 hashed when you turn them on.
- The event can use a neutral name such as "Lead" in place of a treatment or condition.
- The bridge token in the Square link carries no form content and is not a patient identifier.
- Curve detects PHI-like patterns, such as condition names, form answers and emails in URLs, and flags them so they can be fixed at the source.
- Event Logs show what Curve sent to each platform and what each platform accepted.
Read more about Meta Conversions API and Google Ads with Curve Compliance.
Does Square Appointments sign a BAA?
Signs a BAA
Yes. Square's HIPAA BAA covers Square Appointments, Invoices and other features Square identifies as HIPAA-enabled, and you agree to it when you use them with PHI as a covered entity or business associate.
Square says whether a service supports HIPAA compliance depends on how it is configured and used, and that not all of its services are HIPAA-enabled.
That BAA covers the patient data Square handles for you as your business associate. It does not reach the ad platforms that receive your conversions, so the booking should reach Meta and Google without health information.
Curve Compliance signs its own BAA with you on every plan.
We checked Square's own pages on November 9, 2026. The quotes and source links are on the Square Appointments entry in the BAA Directory.
Square Appointments booking tracking FAQ
Can I send Square Appointments bookings to Meta Conversions API?
Yes. Curve Compliance credits each Square Appointments booking to the ad click behind it when Square's webhook arrives, then sends it from Curve's servers to Meta Conversions API. Meta receives only a fixed list of fields, contact identifiers are off by default and SHA-256 hashed when enabled, and the event can use a neutral name such as "Lead". The same booking can also go to Google, TikTok, Microsoft and LinkedIn.
Does attribution survive if the patient books days later?
Yes. Square keeps the bridge token with the appointment and sends it back in its webhook, so Curve Compliance matches the booking to the original visit, with its click IDs, UTM parameters and the page the click came from, even when the patient books days after the ad click.
Does Square Appointments sign a BAA?
Yes. Square's HIPAA BAA covers Square Appointments, Invoices and other features Square identifies as HIPAA-enabled, and you agree to it when you use them with PHI. That BAA covers the patient data Square handles for you, not the ad platforms that receive your conversions. Curve Compliance signs its own BAA with you on every plan.
What if the Square Appointments booking page is embedded or opens in a pop-up?
Curve's team sets that up. Plain links to Square Appointments are handled automatically, and embedded booking widgets, pop-ups and buttons that open the scheduler with JavaScript get a small custom setup from Curve's team. Either way, the booking is credited to the ad click that started it.
How long does setup take?
About a week; it varies case by case. Curve's team does the setup: it replaces your browser ad pixels with one script, configures the Square webhook under Incoming Webhooks, sets up any custom field the token needs and turns on forwarding to your ad platforms. Curve signs a BAA on every plan.
Track Square Appointments Bookings as Conversions
Curve's team sets up the Square handoff, the webhook and server-side delivery to your ad platforms, with a BAA on every plan.
- BAA on every plan
- Set up by Curve's team
- Server-side delivery