CPM is the cost of 1,000 ad impressions: Cost ÷ Impressions × 1,000.
$500 spent on 80,000 impressions is a $6.25 CPM.
A low CPM is only good if those impressions turn into clicks and sales, so read it next to CTR, CPC and CPA.
To calculate CPM, divide the total cost of your ads by the number of impressions, then multiply by 1,000. CPM stands for cost per mille, which is Latin for thousand, so it is the price you pay for 1,000 ad views. Google Ads, for example, defines CPM bidding as paying per one thousand views on its Display Network (Google Ads Help).
CPM = Cost ÷ Impressions × 1,000
Example: you spend $500 and your ads get 80,000 impressions. $500 ÷ 80,000 × 1,000 = $6.25 CPM. Every 1,000 views cost you $6.25.
If you know any two of cost, impressions and CPM, you can work out the third. That makes CPM useful for planning a campaign, not just reporting on one.
You know
You want
Formula
Example
Cost and impressions
CPM
Cost ÷ Impressions × 1,000
$500 ÷ 80,000 × 1,000 = $6.25
CPM and impressions
Cost (budget)
CPM × Impressions ÷ 1,000
$6.25 × 200,000 ÷ 1,000 = $1,250
Budget and CPM
Impressions
Budget ÷ CPM × 1,000
$1,000 ÷ $6.25 × 1,000 = 160,000
How to calculate CPM in Excel or Google Sheets
Put the cost in column A and impressions in column B. The CPM formula is **=A2/B2*1000**. To find the budget you need for a target number of impressions, use =CPM*impressions/1000.
CPM vs CPC vs CPA
CPM tells you what attention costs. It doesn't tell you whether that attention did anything. That's why CPM always needs to be read next to the metrics further down the funnel.
Metric
Formula
What you pay for
CPM
Cost ÷ Impressions × 1,000
1,000 views
CPC
Cost ÷ Clicks
One click
CPA
Cost ÷ Conversions
One sale, lead or sign-up
You can convert between them with click-through rate (CTR). CPC = CPM ÷ (CTR × 1,000). In the example above, 1,200 clicks from 80,000 impressions is a 1.5% CTR, so CPC = $6.25 ÷ (0.015 × 1,000) = $0.42. A campaign with a higher CPM but a better CTR can end up with cheaper clicks.
What is eCPM?
eCPM means effective CPM. Advertisers use it to compare campaigns that were not bought on a CPM basis, such as cost-per-click campaigns, by converting their total cost into a cost per 1,000 impressions. Publishers use the same formula on their earnings: eCPM = Earnings ÷ Impressions × 1,000. On YouTube, the creator-side version is RPM; see YouTube RPM explained.
What is a good CPM?
There is no single good CPM. It changes with the platform, country, audience, ad format and time of year. Competitive seasons such as the run-up to the holidays usually push it up. A better question is whether the CPM is good for your results: compare campaigns on CPA or ROAS, and use CPM to explain why one is cheaper than another.
How to lower your CPM
Widen your audience. Very narrow targeting means more advertisers bidding for the same few people.
Improve creative relevance. Ads that people engage with tend to be delivered more cheaply by auction-based platforms.
Test placements and formats. The same audience can cost very different amounts across feeds, stories, video and display.
Control frequency. Showing the same ad to the same people over and over wastes impressions and hurts engagement.
Plan around peak seasons. Build audiences and test creative before costs rise, then spend more where the returns are proven.
Whatever happens to CPM, judge the campaign on profit. Check that your results clear your break-even ROAS.
FAQ
What does CPM stand for?
Cost per mille, meaning cost per thousand. It is the price of 1,000 ad impressions.
How do you calculate CPM from impressions and cost?
Divide the cost by the impressions and multiply by 1,000. $300 for 50,000 impressions is $300 ÷ 50,000 × 1,000 = a $6.00 CPM.
Is a higher CPM bad?
Not on its own. A higher CPM that reaches people who are more likely to buy can produce a lower cost per sale than a cheap CPM that reaches the wrong people.
What is the difference between CPM and RPM?
CPM is what an advertiser pays per 1,000 impressions. RPM is what a publisher or creator earns per 1,000 views, after the platform takes its share.