Why is your CAC rising (and how do you find the real cause)?
The short answer
Rising CAC usually gets blamed on the auction, the algorithm, or creative fatigue, but those are guesses. The fastest way to find the real cause is checking whether the number cutting your spend can be trusted: on one account, landing page views per click held at 80-85% for two years, then dropped to 31% overnight, a tracking break that a ROAS-bidding algorithm quietly punished by cutting spend on. Diagnosing the break before touching bids matters, because optimizing on a broken number just manufactures evidence for the wrong story.
Rising CAC gets blamed on the auction getting more competitive, iOS privacy changes, or creative fatigue, and all three are real phenomena. They’re also the default explanation reached for before checking whether the number driving the bid algorithm is even measuring the right thing. The useful first move is ruling measurement in or out before diagnosing demand.
Why the obvious explanations are usually wrong first
Auction pressure, privacy changes, and fatigue share a property: they’re slow and abstract, hard to disprove, and comfortable to blame because nobody has to check anything. Two other explanations get reached for just as fast and are just as often wrong: a promotion ending, or ordinary seasonality. Both are real, sometimes, and both are also the easiest story to tell when nobody has looked at whether the tracking underneath the number changed. The discipline is to rule out a broken number before accepting any of these as the cause.
The diagnostic move: find the number spend can’t move
Every account has some ratio upstream of the conversion that a bidding algorithm doesn’t directly control, and that ratio should hold steady regardless of how much or how little you spend. When CAC rises, check that ratio before anything else. If it moved sharply and spend didn’t cause the move, you’re looking at a measurement break, not a change in the market.
How this actually played out
On one account, landing page views per click sat at 80-85% for two years… a stable, boring ratio nobody had reason to watch closely. It fell to 31% overnight. The ROAS-bidding algorithm running that account had no way to know the drop was a tracking break rather than a real drop in conversion quality, so it did what it’s built to do: it read the collapse as bad performance and cut spend to match. CAC rose because spend fell against demand that hadn’t actually changed, and the campaign that looked broken was reacting correctly to a broken number.
The account’s team had two plausible explanations ready before anyone checked the ratio: a promotion had just ended, and it was a seasonally slow week. Both were true, and neither was the cause. The number that actually moved was one nobody was watching, because it isn’t a metric most weekly reports include.
An ordered diagnostic ladder
| Step | Check | Rules in or out |
|---|---|---|
| 1 | Did a stability ratio (landing page views per click, or similar) move sharply and suddenly | A measurement or tracking break, versus a real shift |
| 2 | Did the move line up with a tagging, pixel, page, or platform change | Confirms the break has a known technical cause |
| 3 | Did spend or bid strategy change right before the CAC move | Rules in or out the algorithm reacting to its own prior decision |
| 4 | Is the CAC move isolated to one campaign, ad group, or landing page | Localized points to a technical break; account-wide points to a market shift |
| 5 | Only after steps 1 through 4 are clear, check auction competitiveness, seasonality, and creative fatigue | The abstract explanations, now tested instead of assumed |
Optimizing before this ladder runs is what turns a broken number into confirmed evidence. Cut a bid strategy’s spend on a broken signal long enough, and the account’s own history will agree with the wrong story.
What to do once you’ve found the break
Fixing the tracking issue only solves half the problem. The bidding algorithm spent days or weeks learning from the broken signal, and it doesn’t automatically know the signal is fixed. Give it a clean re-learning period after the fix ships, and expect performance to look unstable for a stretch before it settles… that instability is the algorithm correcting itself, not a new problem.
Rise
Across the accounts we manage, 90% of clients are sitting at their all-time-best CAC, and the discipline above is a real reason why: measurement gets checked before bids get touched, every time CAC moves. If your CAC is rising and nobody’s checked the ratio underneath it yet, that’s the first thing a teardown looks at.