Target ROAS vs Target CPA Bidding
Two Optimization Targets, Two Different Questions
Target CPA (tCPA) answers 'how much can I spend to acquire one conversion?' — it optimizes for volume at a fixed cost ceiling, treating every conversion as equally valuable. Target ROAS (tROAS) answers 'how much revenue do I get back per dollar spent?' — it optimizes against conversion *value*, which means it will happily spend more to acquire a $500 order than a $50 order if that's what maximizes the ratio.
The practical consequence: tCPA pushes volume, tROAS pushes revenue efficiency. Choosing wrong for your business model is one of the most common and costly Google Ads mistakes.
| Factor | Target CPA | Target ROAS |
|---|---|---|
| Optimizes for | Conversion count at a cost ceiling | Revenue per dollar of spend |
| Needs conversion value data? | No | Yes — every conversion must carry accurate value |
| Best fit | Lead gen, fixed-value conversions, SaaS trials | Ecommerce, variable-ticket-size businesses |
| Risk if misconfigured | Overpays for low-value leads | Chases a few high-ticket outliers, starves volume |
| Minimum data needed | ~15 conversions/30 days (campaign) | ~15 conversions/30 days with value variance |
| Volatility | Lower — single cost target | Higher — sensitive to value data noise |
Why tROAS Requires More Mature Measurement
Target ROAS is only as good as the conversion value feeding it. If your ecommerce tracking sends inconsistent values — missing items, double-counted refunds, currency conversion errors — the algorithm learns from noisy signal and makes worse bidding decisions than a simple tCPA strategy would. This is why many accounts should NOT jump straight to tROAS even if they sell products with variable prices; fix value accuracy first, run tCPA to establish a baseline, then graduate to tROAS once value data is trustworthy.
-- Sanity check before trusting Target ROAS: compare GA4 purchase value
-- against actual order totals from your warehouse/order system
SELECT
DATE(event_timestamp) AS event_date,
SUM((SELECT value.double_value FROM UNNEST(event_params) WHERE key = 'value')) AS ga4_reported_value,
COUNT(*) AS purchase_events
FROM `project.analytics_123456789.events_*`
WHERE event_name = 'purchase'
AND _TABLE_SUFFIX BETWEEN '20260101' AND '20260131'
GROUP BY event_date
ORDER BY event_date
-- Join this against your order system's daily revenue to spot
-- systematic discrepancies before trusting tROAS on this dataThe Volume-vs-Efficiency Tradeoff Is a Dial, Not a Switch
Portfolio Bidding Strategies
Both tCPA and tROAS can be applied at the campaign level or pooled into a portfolio bid strategy spanning multiple campaigns. Portfolio strategies share conversion data across campaigns, which accelerates the algorithm's learning phase for lower-volume campaigns — useful if you have several small campaigns that individually wouldn't hit the conversion threshold needed for stable automated bidding.
Learning Phase Resets Are Expensive
What's Next?
Choosing the right bidding strategy only works if the underlying conversion actions and values are configured correctly. From here, the natural next area is auditing how conversion actions are structured and whether value rules should layer on top of whichever strategy you pick.
I build these systems professionally.
Whether it's a RAG pipeline, analytics migration, or AI workflow — let's talk.