What Is CPM (Cost Per Thousand Impressions)? Formula & Examples
- CPM (cost per thousand impressions) is the price paid for a thousand ad displays; an impression is one on-screen display, whether or not it is clicked.
- The formula is CPM = (Total Cost / Total Impressions) x 1000; a $500 campaign with 50,000 impressions has a CPM of $10.
- Reverse the formula to plan budgets: Total Cost = (CPM x Impressions) / 1000, so a $12 CPM for 100,000 impressions costs $1,200.
- CPM is moved by audience targeting, seasonality, placement, format, geography, campaign objective, privacy rules, and auction supply and demand; there is no universal good CPM.
- CPM prices reach, CPC prices clicks, CPA prices conversions; impressions only pay off if the clicks they buy convert, which Omniconvert Explore lifts (23.2% avg uplift across 70,000+ experiments).
When you buy advertising to be seen, CPM is the price tag. It tells you what a thousand views of your ad cost, and for awareness campaigns it is the currency the whole market runs on. But CPM carries a quiet trap: it measures how cheaply you can be seen, not whether being seen does anything. A rock-bottom CPM shown to the wrong audience can burn budget faster than a premium one that reaches exactly the right people. This guide explains what CPM is, how to calculate it with a worked example, the reverse formulas for planning, what moves CPM, how it differs from CPC and CPA, and why impressions only matter once they convert. Turning traffic into results is what Omniconvert has done for 13 years: Omniconvert Explore has averaged a 23.2% conversion uplift across more than 70,000 experiments, drawing on the CROBenchmark dataset of 7,000+ websites in 15+ industries [CROBenchmark Report 2026, Omniconvert].
The useful way to hold CPM in mind is as a starting cost, not a finishing one. It prices the first step, getting the ad in front of people, but the value of that spend is decided much later, when the reach it bought becomes clicks and the clicks become conversions.
What is CPM?
CPM means cost per thousand impressions; the M is the Roman numeral for a thousand, from the Latin mille. An impression is simply one display of your ad on a screen, and it counts whether or not the viewer clicks, hovers, or does anything at all. So CPM is the cost of a thousand of those displays.
That makes it the natural pricing model for awareness and reach campaigns, where the point is to be seen widely by the right kind of people rather than to win an immediate click. CPM plays two roles at once: publishers use it to price the ad space they sell, and advertisers use it as a metric to compare how efficiently different placements deliver reach for the money.
The CPM formula
The core formula divides cost by impressions and scales it to a thousand:
CPM = (Total Cost / Total Impressions) × 1000
Worked through, a campaign that costs $500 and delivers 50,000 impressions gives $500 / 50,000 = 0.01, and 0.01 × 1000 = a $10 CPM. You are paying ten dollars for every thousand times the ad appears.
The same relationship rearranges into two planning tools. To find the budget a target CPM implies, use Total Cost = (CPM × Impressions) / 1000; a $12 CPM for 100,000 impressions works out to a $1,200 budget. To find how many impressions a budget buys, use Total Impressions = (Total Cost / CPM) × 1000. These let you plan reach and spend against each other before a campaign ever runs.
Calculating CPM accurately
The formula is only as honest as the numbers you feed it. A reliable CPM comes from four disciplined steps:
-
Verify the spendUse actual ad spend from financial records, not a rounded estimate, so the numerator is real.
-
Pull the true impression countTake impressions from the ad server report rather than a dashboard summary that may double-count or approximate.
-
Apply the formulaDivide cost by impressions and multiply by 1,000 to get the cost per thousand.
-
Adjust for viewability and fraudAccount for viewability standards and strip out fraudulent or non-human traffic, so you are not paying for impressions no real person saw.
The last step is the one most often skipped and the one that matters most. Impressions that were served but never actually in view, or generated by bots, still sit in the denominator and flatter the CPM. Removing them gives you a number that reflects the reach you truly bought, not the reach the platform claims.
What moves CPM
CPM is not a fixed rate; it is the output of an auction shaped by many forces. The main ones:
- Audience targeting. Narrow, high-value, or hotly contested audiences cost far more per thousand than broad ones.
- Seasonality and demand. Rates climb when advertisers compete for attention, as they do around major shopping periods.
- Placement and platform. Premium positions and platforms charge premium CPMs.
- Format and creative quality. Richer formats like video usually cost more, while higher-quality, more relevant ads can earn lower CPMs through better quality scores.
- Geography and objective. Local market conditions shift rates, and an awareness objective bids differently from a conversion one.
- Privacy, device, and supply. Rules that limit targeting, the device mix, and plain supply and demand in the auction all push the number up or down.
Because so many levers are in play, a bare CPM tells you little without context. The same $10 CPM can be a bargain for a tightly targeted premium audience and a rip-off for a broad, low-quality one. That is why chasing the lowest CPM in isolation is a mistake; what matters is the CPM relative to the value of who it reaches.
CPM vs CPC and CPA
CPM is one of three cost models, and the difference between them is simply what you are paying for:
| Metric | You pay for | Best suited to |
|---|---|---|
| CPM | A thousand impressions (reach) | Awareness campaigns where visibility is the goal |
| CPC | Each click (engagement) | Traffic campaigns where clicks matter |
| CPA | Each conversion (outcome) | Performance campaigns tied to revenue |
The three form a ladder toward value. CPM pays for reach, CPC for the clicks reach produces, and CPA for the conversions clicks produce. Which one to optimize depends on the campaign's job, but the ladder is a reminder that reach is only the bottom rung. A campaign that wins cheap impressions but loses them at the click and conversion stages has bought visibility, not results.
Turning paid reach into value with Omniconvert Explore
You can negotiate a lower CPM all day, but the spend only pays off at a step CPM never measures: whether the visitors your impressions send actually convert. That is the step Omniconvert Explore is built to improve. A brilliant media buy is wasted if the landing page those hard-won clicks arrive on fails to turn them into customers.
Explore pairs research tools, heatmaps, session recordings, and on-site surveys, that reveal where and why paid visitors drop off, with A/B testing that proves which fixes actually raise the conversion rate. You research the drop-offs, form a hypothesis, build the variation in a visual editor without code, and test it on live traffic, keeping only what measurably lifts conversions. Across more than 70,000 experiments, that loop has averaged a 23.2% conversion uplift, which means the exact same impressions you paid for at whatever CPM end up producing meaningfully more revenue.
Ready to make your paid reach actually convert?
See how Omniconvert Explore turns impressions into revenue →Frequently Asked Questions
CPM stands for cost per thousand impressions, where the M is the Roman numeral for a thousand (from the Latin mille). It is the price an advertiser pays for a thousand impressions of an ad, one impression being a single display of the ad on a screen, whether or not anyone clicks or interacts with it. CPM is the standard pricing model for awareness and reach campaigns, where the goal is to be seen by as many relevant people as possible rather than to drive an immediate click. It works both as a way publishers price ad space and as a metric advertisers use to compare how cost-efficiently different placements deliver reach.
The formula is total cost divided by total impressions, multiplied by 1,000: CPM = (Total Cost / Total Impressions) x 1000. For example, a campaign that costs $500 and delivers 50,000 impressions has a CPM of $500 / 50,000 = 0.01, times 1,000 = $10. In other words, you are paying $10 for every thousand times the ad is shown. You can also rearrange the formula to plan a budget: Total Cost = (CPM x Impressions) / 1000, and Total Impressions = (Total Cost / CPM) x 1000. So a $12 target CPM for 100,000 impressions implies a budget of $1,200. Keeping the cost and impression figures accurate is what makes the number reliable.
There is no universal good CPM, because rates swing widely with platform, audience, format, season, and geography. A broad awareness campaign on a cheap placement might run at a low CPM, while a narrowly targeted, premium, or high-competition audience can cost many times more per thousand. A low CPM is not automatically better either: cheap impressions shown to the wrong people, or never actually viewed, waste money more quietly than expensive ones that reach the right audience. The right way to judge CPM is in context, alongside who saw the ad, whether the impressions were viewable, and what those impressions ultimately did further down the funnel, rather than chasing the lowest number in isolation.
Many things move CPM. Audience targeting is a big one: narrow, high-value, or competitive audiences cost more per thousand than broad ones. Seasonality raises rates when demand spikes, such as around major shopping periods. Ad placement and platform matter, premium positions and platforms command higher CPMs. Format and creative quality play a role, with richer formats like video often costing more, and higher-quality, more relevant ads sometimes earning lower CPMs through better quality scores. Geography and the local economy affect rates, as does the campaign objective, since awareness bids differently from conversion. Data-privacy rules that limit targeting, device choice, and simple supply and demand in the ad auction round out the main drivers.
They price three different things along the funnel. CPM (cost per thousand impressions) charges for reach, you pay to be seen, regardless of any action. CPC (cost per click) charges for engagement, you pay only when someone clicks. CPA (cost per acquisition) charges for the outcome, you pay for a conversion such as a sale or lead. CPM suits awareness campaigns where visibility is the goal; CPC suits traffic campaigns where clicks matter; CPA aligns most closely with revenue because it is tied to a real result. None is better in the abstract; the right model depends on the campaign's objective, and the deeper into the funnel the metric sits, the closer it is to actual business value.
An impression only means an ad was displayed; it says nothing about whether it was noticed, remembered, or acted on. You can buy millions of cheap impressions and still generate no sales if the audience is wrong, the creative is weak, or the landing page fails to convert. CPM measures the cost of reach, but reach is only the first step: the impressions have to become clicks, and the clicks have to become conversions, for the spend to create value. That is why smart advertisers do not stop at a low CPM. They watch what happens after the impression, how many people click, and how many of those go on to convert on the destination page, because that is where paid reach either turns into revenue or quietly disappears.
Omniconvert Explore works on the step where paid reach becomes revenue: the conversion of the visitors your impressions send to your site. A great CPM is wasted if the landing page those clicks arrive on does not convert. Explore combines research tools, heatmaps, session recordings, and on-site surveys, that show where and why paid visitors drop off, with A/B testing that proves which fixes actually raise the conversion rate. You research the drop-offs, form a hypothesis, build a variation without code, and test it on live traffic, keeping only changes that measurably lift conversions. Across more than 70,000 experiments, Explore has averaged a 23.2% conversion uplift, which means more value from the very same impressions you already paid for.
CPM is the price of being seen: total cost divided by impressions, times a thousand, or $10 for every thousand views in the classic example. It is the natural currency of awareness campaigns, and knowing the formula, and its reverse, lets you plan reach against a budget with confidence. But CPM has a built-in blind spot. An impression is only a display, not a result, so a low CPM shown to the wrong people or never actually viewed can waste money more quietly than a high one that reaches the right audience. The metric that pays the bills is not reach but what reach becomes: clicks that turn into conversions on the page they land on. Judge CPM in that fuller context, and treat the conversion of the traffic it buys as the place where paid reach finally earns its keep.
Turn paid impressions into conversions with Omniconvert Explore
A low CPM is wasted if the page your clicks land on does not convert. Omniconvert Explore pairs research, heatmaps, recordings, and surveys, with A/B testing, so you lift the conversion rate that decides whether your paid reach becomes revenue.