Back to Blog

The CPM Went Up and Nobody Changed the Ad

Nothing in the account changed and the cost per acquisition did. One of the four inputs is set by an auction you do not sit in, and its price is published every quarter.

7 min read

Monday morning you pull the last thirty days against the thirty before it, and the cost per acquisition is up. Not catastrophically. Nine percent, maybe twelve. So you go looking for what broke.

Nothing broke. Same three creatives, same audience, same bid strategy, same landing page, same offer. Nobody touched the account. The number moved anyway, and by Wednesday somebody has asked whether the creative is fatigued.

It might be. But before anyone spends a week on that, it is worth checking whether you were simply charged more for identical performance, because that happens on a schedule and the schedule is published.

You never set the price

Here is Meta's own description of how an auction resolves. The winner is the ad with “the highest total value, subject to a price floor (minimum price) that may affect whether an ad is shown and the price paid.” Who gets to compete is answered a few lines earlier: “the ads with a target audience that the person belongs to are eligible to compete in the auction.”

Read that as a pricing statement rather than a mechanics lesson. What you pay to reach a person is set by how many other advertisers wanted that same person at that moment and how much they were willing to pay for them. You get no vote. Google says it more plainly on the search side: Ad Rank values are “calculated based on several factors, including your competition, the context of the person's search, and your ad quality at that moment.”

Your competition is a line item in your cost. It sits in the same formula as your own ad quality, and only one of those two belongs to you.

The price has been rising, and the number is public

None of this has to be estimated. Meta reports the figure every quarter, because it is one of the two things that explain their advertising revenue.

  • Average price per ad rose 10% year over year in 2024
  • It rose 9% year over year in 2025
  • In the second quarter of 2026 it rose 12% year over year

Two consecutive full years at ten and nine percent compound to about twenty percent. Then the most recent quarter came in faster than either of them.

The stated reason is not subtle and it has nothing to do with your account. The filing attributes the increase to “an increase in advertising demand.” More advertisers wanting the same people. That is the entire explanation.

And there is a clause in the same paragraph that makes it worse rather than better, easy to skim past. Those increases were “partially offset by a higher number of ad impressions delivered, especially in geographies and in products, such as Reels, that monetize at lower rates.” The published number is a worldwide blend across every product and every country, and cheap inventory is dragging it down. If you buy feed placements in the United States in a category with real competition, twelve percent is the floor of what you lived through, not the estimate of it.

What that does to your cost per acquisition

CPA is a small equation and it helps to write it out, because once it is written the answer stops being a matter of opinion. Your cost per acquisition is your CPM, divided by a thousand, divided by your click through rate, divided by your conversion rate.

Everything in there except the CPM is something you build. The CPM is something you receive.

Put numbers on it. A twenty dollar CPM, a click through rate of one and two tenths percent, and a landing page converting at two and a half percent. A thousand impressions buys twelve clicks and three tenths of a conversion, which is sixty six dollars and sixty seven cents to get one. Now move only the price:

  • $20.00 CPM gives a CPA of $66.67
  • $21.80 CPM, the 2025 increase, gives $72.67
  • $22.40 CPM, last quarter's increase, gives $74.67
  • $24.00 CPM, two years compounded, gives $80.00

Nothing else moved down that list. Same creative, same page, same rates, same everything. Twenty percent of your cost per acquisition arrived from outside the building.

A flat CPA target is a request for a better funnel

Now run it backwards, which is the direction that is actually useful.

If the CPM rises by some percentage and you have been told to hold the old CPA, the improvement you need in click through rate times conversion rate is exactly that same percentage. Not a fraction of it. All of it. The two sit on opposite sides of a division, so a twelve percent price increase demands a twelve percent better funnel to finish where you started.

At the numbers above, holding sixty six dollars sixty seven through a twelve percent CPM increase means one of these:

  • Conversion rate from 2.50% to 2.80%, click through unchanged
  • Or click through from 1.20% to 1.34%, conversion rate unchanged
  • Or any pair that multiplies out to twelve percent more, which in practice means finding about six percent on each

So “hold CPA flat this quarter” is not a performance target. It is a request for a measurably better landing page, in an account where nobody budgeted for one, made of the same team that is being told its numbers slipped.

If you plan in budget rather than ratios, the same fact lands harder. Thirty thousand dollars a month at a twenty dollar CPM buys one and a half million impressions and four hundred and fifty conversions. At twenty two dollars forty it buys four hundred and two. Same spend, forty eight fewer conversions, just under eleven percent of your volume gone, and no line in any report that explains where it went. Holding the volume instead of holding the CPA costs three thousand six hundred dollars a month more.

Three levers, and the one nobody funds

Pay less per impression. Barely a lever. You can change which impressions you buy, and cheaper inventory certainly exists, but the reason it is cheaper is that it converts worse. Meta's own filing names Reels as inventory that monetizes at lower rates. A CPM that fell next to a conversion rate that fell is not a saving, it is a different and worse purchase, and it will look like a win on whichever chart you happen to be showing.

Get more clicks per impression. Real, and you are already trying. It is also the noisiest number in the account and the easiest one to fool yourself about, which we went through separately in the post on creative testing.

Get more conversions per click. The landing page, the form, the follow up. This is the only one of the three that improves every campaign at once, and it is reliably the one with no budget line.

Then there is a fourth thing that is not in the equation at all, and its absence is what makes the equation feel like a trap. Cost per acquisition treats a conversion as the end of the transaction and prices nothing else. Most of the traffic you paid for never becomes one, and that share of your spend is accounted for nowhere. When the auction takes another twelve percent, the cheapest available response is not a better ad. It is getting more than one outcome out of a visit you have already bought.

What to do this week

Chart CPM on its own. Monthly, going back twenty four months, before you chart anything else. Not CPA, not ROAS, just the price. If CPM is up while your click through and conversion rates are flat, your team did not get worse, and somebody should say that out loud before the company reorganises around a price increase.

Decompose the move instead of debating it. Split the CPA change three ways: the part explained by CPM, the part explained by click through, the part explained by conversion rate. Three divisions in a spreadsheet, and it turns a two week argument into an afternoon.

Restate the target in this year's prices. A CPA number set last January and defended in September is a claim about last January's auction. Either reset it against current CPM or track the ratio you do control, which is CPA divided by CPM.

Compare to last year, not to last month. Month over month in the fourth quarter is a seasonality report in the costume of a performance report. December against December tells you something. December against November tells you that it is December.

Check the placement mix before you celebrate a cheaper CPM. Put the conversion rate in the same view. If both fell, you did not negotiate anything, you bought worse inventory.

Where we land on this

Every number here is arithmetic on figures Meta publishes, so put your own in. There is really only one thing to compute: your current CPM divided by your CPM a year ago. Whatever that comes to is the improvement your funnel had to produce just to report the same result, and if nobody has looked it up, it has quietly been reclassified as a performance problem.

None of which is an argument against paid social. Prices rise because the channel works, and the same filing that shows the price climbing shows demand climbing with it. It is an argument against reading cost per acquisition as a scorecard on your team when one of its four inputs is set in an auction you do not sit in.

The piece we care about is the fourth thing above. When the price of reaching a person keeps going up, the arithmetic pushes you toward getting more out of each visit instead of buying more visits, and the biggest untouched part of that is the traffic that arrives, looks around and leaves without ever telling you who it was. A second chance at some of those people costs nothing in the auction, because you already bought them at last month's price. Whether it clears at your numbers depends on your traffic and your cost per order, and we are glad to run that arithmetic with you and tell you plainly if it does not.

Book a free strategy call