Picture a dental clinic running Meta lead ads. The default report shows 7-day click plus 1-day view, the dashboard looks great every week, and then the CRM shows fewer booked consults than Ads Manager claims. I'm not sure the fix is to pick one window and forget about it. Delivery can keep optimizing on 7-day click, since that's the signal the algorithm learns from, but the budget should be judged on a number that only counts clicks. View-through credit inflates whatever it touches, and a Google search or a friend's recommendation often deserves the real last touch. A long view window just makes campaigns look better than they are. How do you handle it when the CRM and the dashboard disagree?
Meta attribution window: optimize on 7-day click but judge spend on clicks only?
Judging budget on clicks alone can starve a campaign that's actually working through views. I'd let booked consults in the CRM make the budget call and treat clicks mostly as a delivery signal. How long is the lag between a lead and a booked consult?
I'd lean on the CRM for the budget call, but it isn't clean truth. A booked consult usually gets tagged with whatever UTM or form source survived, so you often end up with last-click again, just a different last click. A patient who saw a Meta ad and then searched the clinic name a week later can easily get credited to Google or to "direct."
For a clinic, volume is the bigger problem. If you book 15 consults a month, going from 12 to 15 is noise, and no attribution window setting will fix that. Comparing total booked consults before and after a change works better, or you can run a geo or audience holdout where Meta is paused in one area for a few weeks. That shows whether Meta adds consults at all, which is the question the budget really depends on.
Roughly how many new consults does that clinic book in a month?
The CRM tag is only as good as the UTM that survived, and that's the part people skip. The fix I'd try first is carrying the Meta lead ID into the CRM. Lead ads hand you a lead_id, and if the form submission stores it in a hidden field, the booked consult can be matched back to the exact ad. From there you can send "consult booked" back to Meta as an offline conversion using that lead_id, so delivery learns from the outcome you care about, not just the form fill.
It won't catch patients who saw the ad and searched the clinic name later, so you still need the holdout for that. But it turns the CRM number from "whatever UTM survived" into something you can actually audit. At 15 consults a month, a geo holdout will take a long time to show a clear difference, so plan for a couple of months of data, not a few weeks.
Sending the lead_id back is the right move, but I'd hold off on using consults as the optimization event. Meta wants roughly 50 optimization events per ad set per week to get out of learning, and 15 consults a month is nowhere near that. Feed it that signal and the ad set will probably stall or optimize on noise.
What works better is letting delivery optimize on the lead event and using the lead_id and CRM only to judge budget. Don't move money until the booked-consult count shifts by more than your normal month-to-month swing.
Agreed, and at 15 consults a month the gap is even wider than it looks. You'd need dozens a week per ad set before consults could drive optimization. Nobody has mentioned that lead_id matching only covers instant form leads. If any budget goes to a landing page or traffic campaign, those people won't carry a lead_id, so the CRM will undercount that channel. Judge each campaign type separately, or you'll end up cutting a channel that's actually working.
It depends on how long people wait between filling in the form and booking the consult. If most patients book within a few days, the lead_id match is reliable enough for a weekly read on the CRM. If it's routinely three or four weeks, leads land in the wrong month and the budget call looks worse than it really is, so you'd want a much longer comparison window before acting on the numbers.
The lag is what decides this, and you can measure it from your own data before you trust any read. Pull two or three months of lead_ids, match them to booked consults, and look at the gap between form fill and booking. If most land within a week, a weekly read is fine. If they spread over a month, group the CRM numbers by the week the lead came in, not the week the consult was booked. That way a slow month doesn't look like a performance drop, and you're comparing like with like.