Open Google Ads and it reports 16 conversions this week. Open the CRM for the same week and there are 15. Meta wants credit for a few of those too. Someone asks the obvious question: which number is real?
The instinct is that something is broken, a misfiring pixel or a bad tag. Usually nothing is broken. The three numbers disagree because the three tools are answering three different questions, each with its own attribution model. Understanding that, and deciding what to do about it, is most of what attribution actually is.
Why the three numbers never match
Each platform credits a conversion using its own model, and the defaults are not the same.
- Google Ads defaults to data-driven attribution, distributing credit across the path based on your account's own data.
- Meta defaults to a 7-day-click, 1-day-view window, counting a conversion if someone clicked in the last seven days or viewed in the last one.
- Your CRM typically logs first touch. HubSpot's Original Source field records whoever originally created the contact, and it is set once and stays put.
Same lead, three models, three totals. Chase all three and you lose a day reconciling spreadsheets that were never designed to agree. The full worked example is in why Google, Meta and your CRM disagree on conversions.
Google Ads attribution, as it stands now
Google's attribution has quietly narrowed to two options, and a lot of older advice still references models that no longer exist.
As of the 2023 to 2024 sunset, Google Ads supports only data-driven attribution and last click. First click, linear, time decay and position-based were all retired, because fewer than 3% of conversions used them. Any conversion action still set to one of those was migrated to data-driven automatically.
Data-driven attribution is now the default. It uses Google's modelling to spread credit across the touchpoints on the path, rather than handing all of it to the last click. Paired with Smart Bidding, that is genuinely useful, because the algorithm optimizes toward the whole converting path, not just the final interaction. The trade is transparency: it is a model, not a ledger, and you cannot fully audit why it assigned the credit it did.
Last click is still available and still has one honest use: as a reference count when you want a simple, legible number to sanity-check against, not as the thing you optimize toward.
Meta attribution, and why it over-reports
Meta's standard attribution is set at the ad set level, with a click-through window of 1 or 7 days and a view-through window of 1 day. The common default, 7-day click and 1-day view, is also the setting most likely to flatter Meta's own numbers.
The reason is view-through attribution. Meta will claim a conversion from someone who merely saw an ad and did not click, as long as they converted within a day. On a warm retargeting audience that is sometimes fair. On cold prospecting it means Meta takes credit for purchases it may have had little to do with. This is why Meta's reported numbers are almost always the highest of the three, and why they should never be the number the business runs on.
There is a structural point underneath this: every ad platform grades its own homework. Google and Meta are both incentivized to claim the conversion, so of course their totals are generous. That is not dishonesty, it is design. It is also exactly why the deciding number has to come from somewhere that does not benefit from the answer.
The window problem, and why it bites B2B hardest
Attribution windows assume a short path from click to conversion. In B2B, the path is not short.
A 7-day click window cannot see a deal that takes four months to close. The touch that created the opportunity falls outside the window, so the platform never connects the spend to the revenue, and the campaign that actually generated pipeline looks like it produced nothing. Teams then cut the very campaigns that were working, because the platform's window was too short to give them credit. If your sales cycle is measured in months, platform-window attribution will systematically undervalue your top-of-funnel and over-credit whatever ran closest to the purchase.
First touch, last touch, multi-touch: what each is for and what each lies about
These get argued about as if one is correct. None is. Each answers a different question, and each is blind in a specific way.
- First touch credits the channel that started the relationship. Good for judging which channels create demand. Blind to everything that closed it.
- Last touch credits whatever ran just before the conversion. Good for judging what closes. Systematically over-credits bottom-funnel and brand terms, and undervalues the demand generation that made the closing click possible.
- Multi-touch spreads credit across the journey. The most complete picture, and the hardest to implement honestly, because it needs clean cross-channel identity stitching most stacks do not have.
- Data-driven is a modelled version of multi-touch. Better than a fixed rule, but a black box.
The practical mistake is not picking the wrong model. It is using one model for a question it cannot answer, like judging demand generation on last-click, or judging closing efficiency on first-touch.
The resolution: one source of truth, and two different jobs
The fix is not a better spreadsheet or a cleverer model. It is a decision, and a distinction.
Pick one source of truth, and make everything answer to it. We use the CRM's first-touch record, HubSpot's Original Source property. The platforms each want credit for the sale; the CRM does not care who wins, it just records where the relationship started. When Google says 16 and the CRM says 15, the CRM is the count of record and Google's 16 is a platform estimate, not a discrepancy to resolve.
One distinction worth keeping straight: HubSpot's Original Source property is a single first-touch label, which is not the same as HubSpot's multi-touch revenue attribution reporting. For a single count of record to reconcile platforms against, the first-touch property is what you want. For understanding how revenue spread across the journey, the multi-touch report is a separate tool.
Then hold two jobs apart, because attribution is doing two things and people conflate them:
- Platform attribution is for the algorithm. Data-driven attribution plus Smart Bidding exists so the platform can optimize delivery toward the converting path. Leave it on. It is doing a job for the machine.
- Your source of truth is for the business. Budget decisions, channel calls and board reporting run on the CRM and pipeline, tied through to pipeline ROAS and closed revenue, not on platform-reported conversions.
Most attribution pain comes from using the platform's number for the business's job. Once the two are separated, the three numbers stop being a problem to reconcile and become what they always were: one estimate per platform, and one number of record.
The takeaways
- Google, Meta and your CRM report different conversion numbers because they use different models. None is broken.
- Google Ads now offers only data-driven (default) and last-click; the other four models were retired.
- Meta's 7-day-click, 1-day-view default over-reports because of view-through credit, and every platform grades its own homework.
- Short attribution windows systematically undervalue B2B top-of-funnel on long sales cycles.
- Pick one source of truth (the CRM/pipeline). Platform attribution is for the algorithm to optimize; your CRM is for the business to decide.