B2B Sales Strategy

    Cost per Acquisition Advertising: What the Platform Number Leaves Out

    An ad platform divides spend by conversions it can attribute in a window it set. Why that number flatters, and how to reconcile it against a finance-grade CAC.

    August 11, 20268 min read
    Share:
    The short answer

    Reported CPA divides platform spend by tracked conversion events, usually form fills, counted inside that platform's attribution window and credited only to interactions it can see. True CAC adds agency fees, creative, salaries and tooling, and divides by customers closed. Both are valid. Only the second belongs in a board pack, and reconciling them is a monthly job.

    Key takeaways

    • Google calculates cost per conversion as total cost divided by the Conversions column, which counts events you defined rather than customers you gained.
    • The default Google Ads conversion window is 30 days, and conversions outside it are not recorded, so long B2B cycles are invisible to the optimiser.
    • Primary conversion columns are dated by time of click rather than time of conversion, so last month's CPA keeps improving weeks after the month closed.
    • Attribution models redistribute credit among ads the platform can see, so two platforms measuring one buyer will both claim the conversion.

    Reviewed and updated August 11, 2026

    Google Ads computes the number most advertisers call CPA with one division. Its help documentation describes cost per conversion as total cost divided by the number in your Conversions column, applied only to eligible interactions such as ad clicks or video ad views (Google Ads Help). Everything interesting about cost per acquisition advertising lives in the denominator.

    That denominator is a count of events the platform defined, observed inside a window the platform set, credited under a model the platform chose. It is a real number and it is useful for steering bids. It is also systematically more flattering than the cost of acquiring a customer, and the size of the gap is rarely measured by the people quoting the figure in a board deck.

    What the platform is counting when it says conversion

    A conversion in Google Ads is an action you defined as valuable and then told the platform to track. For most B2B advertisers that action is a form submission, a demo request, or a phone call. It is not a customer, and it is not revenue.

    Three settings shape the count before you ever look at it, all documented on the same help page (Google Ads Help):

    The conversion counting setting lets you count every conversion after an interaction, or only one. On a lead form that people submit twice, or a page a prospect revisits, those two settings produce meaningfully different denominators from identical human behaviour.

    The attribution model setting decides how much credit each of a customer's clicks gets. Google notes that the Conversions column may include modeled conversions in cases where not all conversions can be observed, so part of the count can be estimated rather than directly measured.

    The account-default conversion goals setting decides which conversion actions land in the Conversions column at all, with most actions included unless you uncheck them. An account that quietly tracks newsletter signups alongside demo requests is dividing spend by a mixed bag.

    None of that is deceptive. It is a measurement system built to optimise bidding, and it does that job well. The distortion appears when the output is read as a business cost.

    The window is doing more work than the number

    Google Ads applies a conversion window to every conversion action: the period after an ad interaction during which a conversion is recorded. Its documentation describes a default 30-day conversion window and is explicit that a conversion happening after the window closes will not be recorded and will not appear in reports (Google Ads Help).

    For a considered B2B purchase, that is the whole ballgame. Revenue arriving in month four exists for your finance team and does not exist for the bidding algorithm.

    Two further behaviours of the window catch people out, both on the same page. Changing the window is not retroactive, so a shortened window applies only from the day of the change forward, and conversions that fell outside the previous setting are never recovered. And assisted conversions are shown for 30, 60 and 90 day windows regardless of the window you set, which means two reports in the same account can honestly disagree.

    Then there is dating. Google states that the primary conversion columns are calculated based on the time of the click, not the time of the conversion, so a click from last week that converts this week is reported back to last week (Google Ads Help). That is the correct choice for computing cost per conversion, because spend is dated the same way. It also means last month's CPA is still moving. Pull the same report three weeks apart and the older period will look better, without anybody having improved anything.

    30 daysDefault conversion window

    Conversions after it are not recorded

    50% / 1 secWhen a display impression counts as viewable

    Google Active View threshold

    24-48 hoursProcessing delay before comparing final results

    Google Ads guidance on cross-platform comparison

    Three platform defaults that shape a reported CPA, taken from Google Ads help documentation.

    View-through conversions and where they sit

    View-through conversions record customers who saw an ad, did not interact with it, and later converted on your site. Google's documentation sets out several boundaries worth knowing before anyone quotes a blended CPA.

    For Display Network ads, the last viewable impression gets credit, and an impression counts as viewable under Active View when at least 50 percent of the ad is onscreen for at least one second. View-through conversions automatically exclude people who also interacted with any of your other ads. They are not included in the Conversions column, appearing only in the View-through conversions and All conversions columns. And view-through conversions from browsers that do not allow cross-site cookies cannot be reported at all (Google Ads Help).

    Two practical points follow. If a report quotes CPA off the All conversions column, it includes people who never clicked, and the divide-by number is larger than the one your bidding uses. And because cookie-restricted browsers are simply absent from that measurement, the view-through count is neither a full picture nor a stable one across time as browser defaults change.

    Attribution models redistribute credit, they never subtract it

    Attribution models let you choose how much credit each ad interaction gets for a conversion. Google Ads currently offers last click and data-driven, with data-driven the default for most conversion actions, and states that the first click, linear, time decay and position-based models are no longer supported, with conversion actions that used them upgraded to data-driven (Google Ads Help).

    The structural point sits underneath the model choice. Attribution divides credit among interactions the platform can see, which means the advertiser's own ads on that platform. A conversion influenced by a conference conversation, a podcast, a referral, a review site and one search click can be credited entirely to the search click, because the search click is the only participant in the room. Two platforms measuring the same buyer will both claim them, and the two CPAs will add up to more conversions than your CRM recorded.

    Google's own documentation nods at the reconciliation problem: it notes that Google Analytics defaults to data-driven attribution while Google Ads uses ad-centric models, and advises accounting for a 24 to 48 hour processing delay before comparing final results (Google Ads Help). If two Google products need caveats to agree with each other, the gap between a platform column and a finance ledger deserves more than a copy and paste.

    What a finance-grade CAC includes

    The business version of this number asks a blunter question: what did it cost, all in, to add one new paying customer in a period?

    Platform reported CPAWhat the ads account divides
    • Media spend on that platform only
    • Divided by tracked conversion events
    • Usually a form fill or a call
    • Inside a set attribution window
    • Credited only to interactions the platform can see
    Business CACWhat finance divides
    • Media spend across every paid channel
    • Plus agency fees, platform fees and creative production
    • Plus marketing and sales salaries and commission
    • Plus tooling, data and martech subscriptions
    • Divided by new customers closed in the period
    The same campaign produces two very different numbers depending on which costs and which outcome you count.

    Here is a worked illustration with inputs chosen to make the arithmetic legible. These are not observed figures from any account, ours or a client's. Substitute your own before drawing any conclusion.

    Suppose a quarter of paid media costs $90,000 and the platform reports 300 conversions. Reported CPA is $300. Now add the costs that produced those conversions but sit outside the ads account: $15,000 of agency management, $10,000 of creative and landing page production, $45,000 of loaded salary for the marketer and the SDR handling the inbound, and $5,000 of tooling. Total is $165,000.

    Then change the outcome being counted. Of the 300 form fills, suppose 120 are genuinely in your ICP, 40 take a meeting, and 10 become customers. Cost per customer on the fully loaded basis is $16,500 against a reported CPA of $300. Those two numbers describe the same quarter. One is a bidding signal and the other is the thing your gross margin has to cover.

    The ratio between them is not fixed and cannot be borrowed from anybody else's benchmark. It falls out of your own qualification rate, close rate and cost base, which is exactly why the reconciliation has to be run rather than assumed. If your team is still arguing about which of those 300 count as leads, MQL versus SQL is the argument worth settling first.

    Reconciling the two numbers on purpose

    The reconciliation is not complicated. It is just nobody's job by default, which is how a platform number ends up in a board pack unchallenged.

    1. Step 1Name one system of record

      The CRM decides what a customer is. The ads platform never adjudicates that.

    2. Step 2Define the acquisition once

      Write down whether you are costing a lead, a held meeting, an opportunity or a closed customer, and use one definition everywhere.

    3. Step 3Send the downstream event back

      Import the qualified or closed-won event as an offline conversion so bidding optimises toward the stage that matters.

    4. Step 4Divide loaded cost by closed customers

      Media plus fees plus salaries plus tooling, over new customers in the period, on a consistent time basis.

    A repeatable monthly reconciliation between the ads account and the finance ledger.

    A few details make the difference between a reconciliation that holds and one that quietly drifts.

    Pick a time basis and keep it. Platform CPA is dated by click, finance is dated by cash or by recognised revenue, and a cohort view is dated by when the customer first arrived. All three are legitimate. Mixing them in one table is not.

    Reconcile on volume before you argue about cost. If the platform reports 300 conversions and the CRM shows 214 new records for the same period, the CPA discussion is premature. Find the 86 first.

    Keep brand and non-brand separate. Blending them produces an account average that flatters the prospecting spend and hides what new-demand acquisition actually costs.

    Watch what the optimiser is being fed. If the reported conversion is a form fill, the bidding system will pursue form fills competently and your CPA will improve while your pipeline does not. That failure looks like success on every dashboard in the account.

    What this changes about how you buy

    Understanding the gap does not mean abandoning the platform number. Cost per conversion remains the right steering metric inside an ads account, because it is measured consistently, it updates fast, and the bidding system uses it. The mistake is promoting it to a business metric without the reconciliation.

    It does change how you read a vendor's pricing. Any supplier quoting a cost per outcome is making a claim about a denominator, and the denominator is where the argument actually is. That applies to media, to agencies, and to outcome-priced services alike. RevenueFlow sells outbound priced per qualified meeting, and the reason our qualification standard is written into the MSA before launch is precisely this: an outcome price is only as honest as the definition of the outcome, and the definition has to be agreed in writing rather than inferred from a dashboard afterwards. We do not run paid ads, so nothing here is a pitch to move budget. For comparison of how human channels are priced, outsourced SDR pricing and lead generation agency cost lay out the usual structures, and pay per appointment B2B covers the outcome-priced variant.

    The test for any acquisition number is short. Name the event being counted, the window it is counted in, the costs included above the line, and the system that adjudicates the outcome. A CPA that cannot answer all four is an input to a bidding algorithm rather than a fact about your business. If you want to see an outcome-priced motion measured against your own ICP before you commit budget to anything, we build a free campaign you can audit end to end.

    Pricing and features verified as of August 2026. Verify current terms with the vendor before relying on them.

    Questions

    Frequently asked questions.

    Frequently asked questions
    Why is my reported CPA lower than our actual customer acquisition cost?
    Because the two divide different things. Reported CPA divides one platform's media spend by tracked conversion events, usually form fills. Real CAC adds agency fees, creative production, loaded salaries and tooling, then divides by customers actually closed. The gap is driven by your qualification rate and close rate, so it has to be measured rather than borrowed from a benchmark.
    What conversion window should we use in Google Ads?
    Long enough to contain the way your buyers actually decide. Google applies a default 30-day window and does not record conversions that happen after it closes. Changing the window is not retroactive, so a change applies only from that day forward. Google suggests checking the time lag report in attribution reports to see how long your own conversions actually take.
    Should view-through conversions count in our CPA?
    Treat them separately. Google excludes view-through conversions from the Conversions column, reporting them only in the View-through conversions and All conversions columns. On the Display Network the last viewable impression gets credit, viewable meaning at least 50 percent of the ad onscreen for at least one second, and browsers blocking cross-site cookies cannot report them at all.
    How do we reconcile ad platform numbers with the CRM?
    Start with volume, not cost. Name the CRM as the single system of record, write down one definition of the acquisition you are costing, then compare conversion counts to new CRM records for the same period and find the difference before debating price. Import the downstream event back as an offline conversion so bidding optimises toward that stage.
    cpapaid mediaattributionb2b sales strategymarketing metrics
    Byline

    About the author.

    RevenueFlow Team

    B2B cold email experts helping companies generate qualified leads through done-for-you outreach campaigns.

    RevenueFlow Team

    Your next move

    Ready to scale your outreach?

    We build GTM engines that book real meetings. See the receipts.