CPA calculator
Cost per acquisition per channel, weighted properly across them, and the target CPA your margin can pay.
Total spend ÷ total conversions — what the budget actually paid per conversion. The plain average of the rows above is a different number, and usually the wrong one.
Runs entirely in your browser — nothing is uploaded, nothing is stored. Updated 2026-09-30.
Cost per acquisition is ad spend divided by conversions: CPA = cost ÷ conversions. $4,800 that produced 160 purchases is a CPA of $30.
Two things go wrong as soon as there is more than one channel. The CPA across channels is total spend over total conversions, not the average of each channel's CPA — the average gives a small, cheap channel the same weight as the one carrying the budget, and in the example below it reports $35 for a budget that actually paid $30. And each platform counts the conversions it takes credit for, so adding their numbers together counts shared sales twice. The table weights by spend; the panel under it works backwards from your margin to the most you can pay per conversion.
CPA = ad spend ÷ conversions
Weight by spend; never average the rows
With the seed numbers above, Google Ads converts at $25, Meta at $50 and TikTok at $30. The mean of those three is $35. The budget, though, spent $4,800 and got 160 conversions: $30 each. The mean is wrong because it counts TikTok's $300 as heavily as Google's $3,000.
The same arithmetic mistake shows up in dashboards that chart a CPA column and then show its average as the "overall" figure. A ratio across groups is always the sum of the numerators over the sum of the denominators — the same rule behind blended ROAS. It is why the CPA in TableBI is a macro over sums, cpa(SUM(cost), SUM(conversions)), rather than a column you can average.
Whose conversions are in the denominator
Each ad platform reports the conversions it attributes to itself, under its own attribution settings — Meta includes view-through conversions by default, Google Ads applies whichever attribution model the conversion action uses. A customer who clicked a Google ad and saw a Meta ad can be claimed by both. Add the two platforms' conversion counts together and that sale is in the denominator twice, which makes the CPA across channels look better than it is.
Two honest versions exist. Platform CPA uses each platform's own count and is fine for comparing campaigns inside one platform. Business CPA divides total spend by the conversions your store or CRM actually recorded, each counted once — the number to hold against margin. When the two diverge sharply, the gap is attribution overlap, not performance.
Target CPA is a margin question, not a benchmark
There is no good CPA in the abstract. A $60 CPA is excellent on a $400 order at 45% margin and ruinous on a $90 one. The ceiling comes from your own numbers: break-even CPA = average order value × gross margin, and a target that leaves profit on top is order value × (margin − profit share). That is what the second panel computes, and it also shows the same target expressed as ROAS, because the two are the same constraint seen from two sides — target CPA × target ROAS equals the order value.
Google Ads uses the same term for a bidding setting: Target CPA tells Smart Bidding the average cost per conversion to aim for. The number you enter there should come from this arithmetic, not from an industry average.
CPA, CAC and CPL are not interchangeable
| Metric | Denominator | Answers |
|---|---|---|
| CPA — cost per acquisition | Any conversion you defined: a purchase, a signup, a trial | Is this campaign buying the action it was set up for at a sane price? |
| CPL — cost per lead | Leads only | What does the top of a sales funnel cost? |
| CAC — customer acquisition cost | New paying customers, usually with salaries and tools in the numerator | What does the business pay to grow? See the CAC calculator. |
In a store where every conversion is a first purchase, CPA and paid CAC coincide. Where there is a funnel — lead, trial, then payment — CPA can look healthy while CAC is several times higher, because most conversions never pay.
Computing this from your own accounts
Every calculator on this page takes numbers you typed. The version that keeps working is the one that reads them from the accounts themselves — which is what TableBI is: connect Google Ads, Meta Ads, GA4 or Search Console once, and cpa() becomes a macro you can query from your terminal.
# connect once, then the metric is a standing query tablebi connect google_ads tablebi connect meta_ads # beta: your own or test ad accounts tablebi ask "WITH w AS (SELECT MAX(date) AS anchor FROM metrics) SELECT platform, cpa(SUM(cost), SUM(conversions)) AS cpa FROM metrics, w WHERE date > w.anchor - 30 GROUP BY platform ORDER BY cpa DESC" # pin the answer to a URL that refreshes itself tablebi pin --title "CPA calculator by channel" → https://you.tablebi.com/d/dsh_…
The pinned answer is a live URL that refreshes on its own — here is one running now. No hosted model does the reasoning; your own Claude Code or Codex drives the CLI, which is why there is no inference bill attached to it.
Questions people ask about cpa calculators
How do I calculate CPA?
Divide ad spend by the number of conversions over the same period. $4,800 that produced 160 purchases is a cost per acquisition of $30.
How do I calculate CPA across several channels?
Add up the spend of every channel and divide by the total conversions. Do not average the per-channel CPAs: that weights a small channel as heavily as a large one. And if the conversions come from each platform's own reports, remember that a sale claimed by two platforms is counted twice.
What is a good CPA?
One below your break-even CPA, which is your average order value times your gross margin. At a $90 order and 45% margin that is $40.50; a CPA of $27 leaves 15% of the order value as profit. Industry averages do not know your margin.
What is the difference between CPA and CAC?
CPA counts any conversion you defined — a purchase, a lead, a signup. CAC counts only new paying customers and usually includes salaries and tools, not just media. They match only when every conversion is a first purchase.
How do I work out a target CPA?
Multiply your average order value by your gross margin minus the profit share you want to keep. At a $90 order, 45% margin and 15% profit, the target CPA is $27 — the equivalent target ROAS is 3.33×.
Related calculators
Customer acquisition cost calculator
Paid CAC per channel, blended CAC across the business, and what the ratio to LTV says.
Break-even ROAS calculator
The ROAS below which every extra dollar of spend loses money.
Customer lifetime value calculator
CLV on gross margin, not revenue — for stores and for subscriptions — and the acquisition cost it can carry.
CPC calculator
Cost per click from spend and clicks — or from CPM and CTR when that is all you have.
All of them are listed on the free marketing calculators page.