Google Ads conversion tracking for med spas
Med spa marketing runs on paid social and a booking calendar, and the gap between those two is where the money leaks. What Google Ads adds on top of that is a mechanical requirement: gclid, gbraid and wbraid have to reach the record that holds the money, because Google Ads can only credit a conversion it can tie back to a click it recognizes. This page covers both halves — what a conversion is in med spas, and what Google Ads specifically needs to accept it.
Free30 minutesNo obligation
Specific to Google Ads × Med spa
Google Ads for med spas: attended visits imported on gclid and gbraid
On Google Ads, a med spa should import the attended appointment as the primary conversion action, valued at the amount the client actually paid, uploaded from the booking system against the stored gclid, gbraid or wbraid. Use Enhanced Conversions for leads as a backup match, and keep the booking itself as a secondary action.
Google is the intent channel for med spas: someone typing a treatment and a city has usually chosen the treatment and is now choosing a clinic. The time from that search click to an attended visit is typically days, not weeks, so the 90-day import window is rarely what limits a med spa. The hosted booking widget is. The searcher clicks Book, the scheduler loads on another domain, and the gclid stays behind on your landing page unless it is written into the widget's hidden field. Map gbraid and wbraid into that field as well, because aesthetics searches are phone-heavy and iPhone clicks often carry those instead.
Make the attended appointment the primary conversion action, counting set to one, valued at what was transacted that day. Keep booked appointments as a secondary action so they appear in reports without steering Smart Bidding. A membership or package sold at the visit can make one attended appointment worth many times another, and that spread is exactly what value-based bidding needs, so send it rather than flattening it.
Google treats health as a sensitive category for personalized advertising, and many aesthetic treatments sit close to that line. Remarketing lists built from individual treatment pages, and conversion actions named after procedures, are where med spa accounts get into trouble. Name actions by stage and keep paths like /botox-booked out of the conversion flow. Prescription weight-loss programs fall under Google's separate healthcare and medicines rules; check what certification they need before they run.
Google Ads · Med spa · what breaks
Why Google Ads under-reports for med spas
- 01
A full inbox and an empty calendar
Bidding toward form fills reliably produces more form fills. Attendance is a different population.
- 02
Every treatment valued the same
A consultation, a single injectable and a six-session package are not one conversion type, and averaging them hides which campaigns pay.
- 03
Treatment names traveling into ad platforms
Aesthetic procedures are health-adjacent. A booking confirmation URL naming the procedure sends that to every connected platform.
- 04
Gclid, gbraid and wbraid never reaches the record
Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.
Google Ads · Med spa · the fix
What working looks like — Google Ads · Med spa
Attended appointments as the conversion
Sent from the booking system after attendance, not at the moment of booking.
Real value on the conversion
The amount actually transacted, including packages bought in clinic, rather than a flat placeholder.
Procedure detail kept out of the payload
A value and a category, not a treatment name.
Google Ads · Med spa · architecture
How Google Ads and med spas actually connect
- 1
The conversion in med spas
The money event is an attended appointment with a transacted value. Bookings are worth measuring as a leading indicator, but they are not the target, and treating them as one is the single most common mistake in this category.
- 2
Google Ads needs a click to match
A click identifier inside the 90-day window, a conversion action name that matches one configured in the account, a conversion timestamp for when the outcome happened, and a value. Read the match rate after uploading — a file can upload perfectly and match nothing.
- 3
The identifier: gclid, gbraid and wbraid
Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.
- 4
Where it gets sent from
The booking or practice management system — attended appointments and transacted value for the same window..
- 5
Deduplication and window
There's no shared event ID mechanism like Meta's. What matters instead is the counting setting on each conversion action — 'one' for lead-type conversions so a repeat submitter doesn't count three times, 'every' for ecommerce where a second purchase is a second sale. This is the single most common misconfiguration we find in Google Ads accounts. Google's offline import window is 90 days from the click. Anything older can't be matched, and rows outside it fail as unmatched without much explanation. Measure your median click-to-outcome time against that before designing anything.
Google Ads · Med spa · events
The conversion map for med spas — Google Ads · Med spa
Four steps, and the interesting distance is between the second and the third.
| Event | What it means here |
|---|---|
| Inquiry or form fill | Volume only. Useful for learning, misleading as a target. |
| Booked appointment | A leading indicator. Track it, report it, do not bid on it alone. |
| Attended appointment | The real conversion. This is where paid traffic stops being a promise. |
| Transacted value | What was actually spent, including anything added or upgraded in clinic. |
| Repeat booking | The economics of this business live here. Worth reporting even where it cannot be sent. |
Google Ads · Med spa · diagnose
Diagnostic order — Google Ads · Med spa
- 01
Count records carrying gclid, gbraid and wbraid
- 02
Third-party booking widgets on another domain
The identifier does not travel across the origin boundary on its own, and most med spa sites book through a hosted widget.
- 03
Bookings taken over the phone or by DM
A large share of aesthetics bookings never touch the website form. If nothing captures those, your paid channels are being judged on a fraction of what they produced.
- 04
Package sales that happen in the chair
The website records a consultation; the revenue happens in person. Without the practice system in the loop, that value is invisible.
- 05
Read the match rate on the upload, not the success message
A conversion action that stops receiving hits is flagged as inactive 30 days later — by which point a month of budget has already run against a missing signal. Check the last-received date on every action monthly; it takes two minutes and it's the cheapest monitoring available.
Google Ads · Med spa · prove
How it gets proven — Google Ads · Med spa
Source of truth
The booking or practice management system — attended appointments and transacted value for the same window.
- Attended appointments reconciled per appointment against what each platform reports.
- The no-show rate measured and stated, because it is the difference between the booking number and the real one.
- Identifier coverage measured on bookings taken through every channel, including phone.
- A confirmation that no procedure name or treatment detail appears in any outbound payload.
- The match rate on the upload, not the success message read directly, not inferred from an upload succeeding.
Google Ads · Med spa · free audit
What we check in the free audit
- Count records carrying gclid, gbraid and wbraid
- Third-party booking widgets on another domain
- Bookings taken over the phone or by DM
- Package sales that happen in the chair
- Read the match rate on the upload, not the success message
Checked against
The booking or practice management system — attended appointments and transacted value for the same window.
Free30 minutesNo obligation
Google Ads · Med spa · when not to buy
When you don't need this — Google Ads · Med spa
- If Google Ads already reports conversions that reconcile against the booking or practice management system within a few percent, this is working and there is nothing to buy.
- Measure identifier coverage yourself first — pull your last hundred records and count how many carry gclid, gbraid and wbraid.
- If you're running Performance Max exclusively and haven't separated your conversion actions, the import will work and the reporting won't tell you much. Worth sorting the account structure first.
Google Ads · Med spa · what we deliver
What gets built — Google Ads · Med spa
Click identifier captured and persisted
Before the visitor reaches a booking widget on someone else's domain, which is where it is usually lost.
Carried into the booking record
Through a hidden field or a prefilled booking question, and stored on the appointment.
Attendance fires the conversion
From the booking or practice management system when the appointment is marked attended.
No-shows and cancellations reversed
Cold paid traffic no-shows at a rate that materially changes which campaign looks best.
Dispatch via Google's offline conversion import
Uploaded against the click identifier, either through the Google Ads API or as a file. The upload is the easy part; what limits it is how many of your records carry an identifier at all. Verify the current column format against Google's own template — it has changed before.
Written guarantee
95%+ tracking accuracy
Measured against The booking or practice management system — attended appointments and transacted value for the same window.. Miss it and we keep working at no cost.
From $400 · See packages
FAQ
Google Ads · Med spa questions, answered
Yes, alongside the click identifier. The booking form already collects an email or phone number, and the hashed version gives Google a second way to match the attended visit when the gclid was lost on the way into the widget.
Usually because the booking is the primary action and cancellations and no-shows are never taken back. Make attendance primary, or upload conversion adjustments that retract cancelled bookings, and the two numbers start to agree.
Attendance, if you can — and you almost always can, because the booking system already records it. Cold paid traffic no-shows heavily, and the campaigns that produce the most bookings are frequently not the ones that produce the most attendances.
Partly, and it is important to be clear about the limit. A DM conversation has no click identifier, so it cannot be attributed to a specific ad the way a click can. What can be done is measuring everything that does carry an identifier properly, and counting the rest honestly as unattributable rather than pretending.
Send a value and, if you need it, a broad category you have agreed is not health information. Do not send procedure names. The value is what bidding actually uses; the procedure name adds risk and no optimization benefit.
Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.
Uploaded against the click identifier, either through the Google Ads API or as a file. The upload is the easy part; what limits it is how many of your records carry an identifier at all. Verify the current column format against Google's own template — it has changed before.
By reading the match rate on the upload, not the success message and reconciling against The booking or practice management system — attended appointments and transacted value for the same window.. An upload that succeeds is not an upload that matched.
More on Google Ads · Med spa
- Med spaGoogle Ads for med spas and aesthetic clinics: the build order
- Med spaConversion tracking for med spas, measured in attended appointments
- Meta · Med spaMeta Ads conversion tracking for med spas
RELATED GUIDES
More for med spas: other angles on the same outcome
- Med spaConversion tracking for med spas, measured in attended appointments
- Google Ads · LASIKGoogle Ads conversion tracking for LASIK and refractive surgery practices
- Google Ads · Home healthcareGoogle Ads conversion tracking for home healthcare agencies
- Google Ads · Phone call → saleHow to track phone call to sale for Google Ads
- Google Ads × Appointment SystemHow to reconcile Google Ads against your practice or scheduling system
- Dermal Filler ClinicGoogle Ads for dermal filler clinic: the build order
- Booksy → Google AdsConnecting Booksy to Google Ads
- StyleSeatConversion tracking for StyleSeat
Free · 30 min
Get Google Ads reporting what med spas actually earn
Free30 minutesNo obligation
