Google Ads true-profit calculator
Strip out branded cannibalisation and attribution inflation, apply your real cost stack, and see the actual profit your Google Ads make.
Monthly net profit
$8,230
The real dollars these ads add to your bank account each month, after cannibalisation, attribution, your full cost stack, and overhead.
True POAS
1.32x
Above 1.0 the ads print money after every real cost. Below 1.0 the rest of the business is subsidising them.
True (incremental) ROAS
2.87x
Revenue the ads actually caused, divided by spend. Almost always far below the dashboard.
Your numbers
The detail
All reported revenue / all spend
The flattering number on the Google Ads dashboard.
(1 − COGS − shipping − fees) × (1 − returns)
Profit kept per revenue dollar after the full cost stack and returns. What the ad has to clear, not gross margin.
1 / real contribution margin
The minimum true ROAS that keeps you out of a loss. Set tROAS targets above this, not above the dashboard.
Branded incremental profit / branded spend
Looks amazing, but high cannibalisation means much of it is profit you would have kept for free.
Non-branded incremental profit / non-branded spend
The honest scoreboard for whether your acquisition engine is actually profitable.
Incremental revenue / AOV
Roughly how many orders the ads truly drove.
Total spend / incremental orders
What it really costs in ad spend to win one incremental order.
Net profit / incremental orders
The number to tattoo on your wall. Positive means each order you buy makes money.
Why this calculator is verified
Three corrections separate this from a dashboard ROAS, and each is grounded in how Google Ads actually attributes. First, branded search is largely demand you already own: Google's own incrementality studies and years of brand-bidding holdout tests show 30-60% of branded clicks convert anyway without the ad, so the calculator discounts branded revenue by a cannibalisation factor. Second, last-click and view-through inflate non-branded credit; geo-based holdout experiments (Google's recommended causal method) typically show true incrementality of 60-85%, so reported non-branded revenue is discounted to its causal share. Third, gross margin is not contribution margin: COGS, shipping, payment fees, and returns all come out before a single ad dollar is repaid, so the calculator applies the full cost stack and the return haircut. The result is profit-on-ad-spend on the revenue the ads genuinely caused, which is the only number that should drive budget and tROAS decisions.
Worked example
DTC skincare brand, $35K/mo Google Ads, $75 AOV
$5K branded returning $60K, $30K non-branded returning $90K. On the dashboard that is a 4.3x blended ROAS and looks elite. Apply a real 46% contribution margin (35% COGS, 12% shipping, 3% fees, 8% returns), discount branded by 45% cannibalisation and non-branded to 75% incrementality, then subtract $3K of overhead. True ROAS drops to about 2.9x, true POAS to about 1.3x, and real monthly net profit lands near $8K, not the $150K of gross attributed revenue the dashboard implied. That is roughly 1,340 incremental orders at a $26 blended CAC and about $6 net profit per order. Non-branded POAS sits around 1.0x, basically break-even, which is the honest story the blended number hides.
Sources for the formula
- Google Ads, conversion lift and incrementality testing
Google's own method for measuring causal lift rather than attributed conversions.
- Google Ads, geo experiments (GeoX)
Holdout-region testing, the standard way to measure true branded and non-branded incrementality.
- Google Ads, value rules and margin-aware bidding
How to feed real contribution margin to Smart Bidding so it optimises true POAS.
Related on Ad-Lab
Want this run on your real account?
Free 15-minute audit. We screen-share your Google Ads + GA4 + Shopify, run every number above against the real data, and leave you the audit doc whether you become a client or not.
Book the call