How to reconcile Meta Ads against your practice or scheduling system
This is the check we run first on every account, written out so you can run it without us. It takes about thirty minutes and needs two numbers: what Meta says it produced, and what your practice or scheduling system actually shows. The gap between them is the only honest measure of whether your tracking works — and if it comes back small, you do not need us.
Free30 minutesNo obligation
Specific to Meta × Appointment System
Meta vs your scheduling system: why Meta claims more visits
Match attended appointments to Meta through hashed email or phone and a stored _fbc value, sent as a server event at the visit. Compare a closed month with view-through excluded. Meta reading above your attended count is normal under its default 7-day click, 1-day view setting; above your total bookings points to a booking-based event or no deduplication.
Practice systems rarely keep a Meta click identifier, so the realistic join is the patient's email and phone, normalized and hashed, plus _fbc if your booking form captured it. That makes match quality the deciding factor: a front desk that types phone numbers with spaces or a shared family email lowers it. For health businesses, Meta restricts what can be sent, so check its current policy before sending attendance events at all.
The default window counts a booking within seven days of a click or one day of a view, and Ads Manager dates results to the ad interaction rather than the service day. An attended-visit event sent two or three weeks after the click can fall outside the 7-day click window entirely, so Meta may credit the booking and never the attendance. Compare using a click-only attribution setting, broken out by day, against attended appointments by service date.
Meta will almost always read higher than attended new patients, partly from view-through and partly because its Lead or Schedule event fires on the booking form. A gap roughly the size of your no-show and cancellation rate is that event doing exactly what it was set up to do. A gap larger than your total bookings usually means the pixel and server event are both counting without a shared event_id.
Meta × Appointment System · what breaks
Why Meta and your practice or scheduling system disagree
- 01
Bookings counted instead of attendance
The defining error in this category. No-show rates of fifteen to thirty percent are normal, and a conversion bound to the booking confirmation counts every one of them.
- 02
Cancellations never reversed
Even where attendance is counted, a cancelled appointment frequently stays counted because no reversal was ever wired.
- 03
Returning patients counted as new
Retention is not acquisition. A recall or rebooking credited to the original campaign makes it look extraordinary and tells you nothing.
- 04
Phone bookings outside the funnel
In most appointment businesses the phone is a large share of bookings, and without call tracking it is entirely invisible.
Meta × Appointment System · the fix
What you get from this — Meta × Appointment System
A number instead of a suspicion
The likely cause, narrowed
A basis for deciding
Meta × Appointment System · architecture
What each side is actually counting — Meta × Appointment System
- 1
What Meta counts
event_name from the standard set with exact casing, event_time in seconds, a shared event_id, an action_source, and hashed user_data that was normalized before hashing. Purchase additionally requires value and currency.
- 2
How Meta attributes it
fbclid arrives on the landing URL and is normally written into the _fbc cookie. If it isn't captured on landing, _fbc never exists — and _fbc is the strongest click signal Meta has, so its absence caps your match quality regardless of what else you send. Forward _fbp too, from the browser rather than regenerating it server-side.
- 3
The window it uses
Meta's default attribution is a 7-day click and 1-day view. View-through is included by default, which is a large part of why Meta claims more conversions than your other platforms — that overlap is expected rather than a fault.
- 4
What your practice or scheduling system counts
Appointments that were actually attended, counted rather than described, found in Your practice management or scheduling system, filtered by appointment status.
- 5
The filter that makes them comparable
Status is completed or attended — not booked, not scheduled, not confirmed.
Meta × Appointment System · events
Reading the gap — Meta × Appointment System
| What you see | What it usually means |
|---|---|
| 15%+ platform higher | Usually the wrong event entirely — the platform is counting bookings rather than attendance, cancellations that never reversed, or returning patients as new. |
| 20%+ platform lower | Usually structural — the platform is missing appointments it produced — usually phone bookings, or an identifier lost between the website and the practice system. |
Meta × Appointment System · diagnose
Diagnostic order — Meta × Appointment System
- 01
Confirm both numbers cover the same period and channel
- 02
Bookings counted instead of attendance
The defining error in this category. No-show rates of fifteen to thirty percent are normal, and a conversion bound to the booking confirmation counts every one of them.
- 03
Cancellations never reversed
Even where attendance is counted, a cancelled appointment frequently stays counted because no reversal was ever wired.
- 04
Returning patients counted as new
Retention is not acquisition. A recall or rebooking credited to the original campaign makes it look extraordinary and tells you nothing.
- 05
Read the Deduplicated indicator and the per-event match quality score, both read over seven days
Match quality is where most Meta accounts lose attribution, and it's almost always normalization rather than coverage. An email hashed with a capital letter, or a phone hashed with brackets, produces a perfectly valid hash that matches nobody and errors nowhere. Normalize first, then hash, and read the score per event rather than overall.
Meta × Appointment System · prove
How to know you did it right — Meta × Appointment System
Source of truth
your practice or scheduling system — attended appointments for a fully closed month
Meta × Appointment System · free audit
What we check in the free audit
- Confirm both numbers cover the same period and channel
- Bookings counted instead of attendance
- Cancellations never reversed
- Returning patients counted as new
- Read the Deduplicated indicator and the per-event match quality score, both read over seven days
Checked against
your practice or scheduling system — attended appointments for a fully closed month
Free30 minutesNo obligation
Meta × Appointment System · when not to buy
When the answer is that you do not need us — Meta × Appointment System
- If almost all of your attended appointments come from a channel with no click behind it, no tracking work will reach them — and knowing that is worth more than a build.
- If you're advertising a business type Meta restricts data collection for — health being the obvious one — the parameters you can legitimately send are narrower, and that constraint should shape the build rather than be worked around.
Meta × Appointment System · what we deliver
The method, step by step — Meta × Appointment System
Pull what Meta reports
The deduplicated indicator and the per-event match quality score, both read over seven days.
Pull what your practice or scheduling system shows
Export appointments by service date for a fully closed month, filtered to attended, and count new patients or clients separately from returning ones.
Filter both to the same thing
Status is completed or attended — not booked, not scheduled, not confirmed.
Compare per record, not on totals
FAQ
Meta × Appointment System questions, answered
Most are bookings that became no-shows or cancellations, plus view-through credit for patients who saw an ad and booked another way. Filter Meta to click-only and your system to attended before comparing.
Possibly, but Meta limits data from health businesses, and some event parameters may be blocked or flagged. Check Meta's current health policy and your HIPAA position first, and never include treatment or condition details.
Because you should know the size of the problem before anyone quotes you for it. If the gap is small, you have saved yourself a purchase. If it is large, you now know what you are buying rather than taking our word for it.
No. Both numbers come from systems you already own and neither leaves them. There is no tool to sign up for and nothing to upload.
Then compare totals for a closed period and treat the result as directional rather than exact. The deduplicated indicator and the per-event match quality score, both read over seven days is still the right place to read the platform's side.
Under five percent is working. Five to fifteen usually means reversals are missing. Above twenty is normally the wrong event being counted, not a broken tag — which is why debugging tags first wastes so much time.
Then fix the filter before drawing any conclusion. Status is completed or attended — not booked, not scheduled, not confirmed. A mismatch in scope produces a gap that looks like a tracking fault and is not one.
Book the free thirty-minute call and bring both numbers. We will tell you which of the causes above it is, and whether it is something you can fix yourself — which it sometimes is.
More on Meta × Appointment System
- Google Ads × Appointment SystemHow to reconcile Google Ads against your practice or scheduling system
- Meta × Booking SystemHow to reconcile Meta Ads against your booking or reservation system
- Meta × Invoicing SystemHow to reconcile Meta Ads against your invoicing system
RELATED GUIDES
Systems of record beside appointment system, and the funnels it settles
- Meta × Enrolment SystemHow to reconcile Meta Ads against your application or enrolment system
- Meta × Job SystemHow to reconcile Meta Ads against your job management system
- Meta · Lead → booked callHow to track lead to booked call for Meta Ads
- Meta · Home healthcareMeta Ads conversion tracking for home healthcare agencies
- Meta · OptometryMeta Ads conversion tracking for optometry practices
- GlossGenius → MetaConnecting GlossGenius to Meta Conversions API
- Squire → MetaConnecting Squire to Meta Conversions API
- Meta × Invoicing SystemHow to reconcile Meta Ads against your invoicing system
Free · 30 min
Found a gap between Meta and your practice or scheduling system?
Free30 minutesNo obligation
