Sign in

Metric note

CPM meaning: cost per thousand impressions, formula and calculator

CPM means cost per mille (mille is Latin for thousand): the amount you pay for every 1,000 ad impressions. Calculate it as ad spend divided by impressions, multiplied by 1,000. If a campaign spends 150 and records 30,000 impressions, its CPM is 5.00 in the account currency. CPM is the price of exposure, not the price of reaching 1,000 different people, because one person can see an ad many times.

By Adlane · Updated

CPM formula with a worked example

Take spend and impressions from the same report, at the same level (account, campaign, ad set or ad), over the same complete dates and in one currency. Divide spend by impressions, then multiply by 1,000. Rearranging the same formula gives the spend needed for a target number of impressions, or the impressions a budget should buy at a given CPM.

Worked example (illustrative numbers): a campaign spends 150 and records 30,000 impressions. 150 ÷ 30,000 = 0.005 per impression; × 1,000 = a CPM of 5.00. At the same CPM, a 500 budget would buy about 100,000 impressions. The calculator below runs the same arithmetic in your browser.

CPM = spend ÷ impressions × 1,000Spend = CPM × impressions ÷ 1,000Impressions = spend ÷ CPM × 1,000

Free tool · runs in your browser

Calculate CPM, cost or impressions.

Choose what to solve for, then enter the other numbers. The starting values are illustrative. Nothing you enter is sent to Adlane.

Solve for

Cost per thousand impressions

—

Enter your values, then calculate.

CPM = spend ÷ impressions × 1,000

CPM is the cost of 1,000 recorded impressions, not 1,000 different people. Estimates of impressions from a budget depend on the auction, targeting and placements.

CPM vs CPC vs CPA vs eCPM

CPM is one of several cost ratios built from the same spend figure. Each divides by a different event, so each answers a different question. Read them together: a low CPM with a high cost per click usually means cheap exposure that few people respond to.

MetricFormulaQuestion it answers
CPM (cost per mille)Spend ÷ impressions × 1,000What did 1,000 exposures cost?
CPC (cost per click)Spend ÷ clicksWhat did one recorded click cost?
CPA (cost per acquisition)Spend ÷ defined actionsWhat did one counted outcome cost?
eCPM (effective CPM)Earnings or cost ÷ impressions × 1,000What did 1,000 impressions earn or cost, whatever the buying model?
vCPM (viewable CPM)Spend ÷ viewable impressions × 1,000What did 1,000 measured-viewable exposures cost?

How to read CPM in Google Ads and Meta Ads Manager

Google Ads: in the campaigns table, open Columns and add Impressions (Impr.), Cost and Avg. CPM. Avg. CPM is the average you paid per 1,000 impressions, whatever bid strategy you use; Display campaigns can also bid on viewable CPM. In the Google Ads API the field is metrics.average_cpm, returned in micros, so divide by 1,000,000 before display.

Meta Ads Manager: open Columns, choose Customise columns and add Amount spent, Impressions, Reach, Frequency and CPM (cost per 1,000 impressions). Meta also shows cost per 1,000 Accounts Center accounts reached, which divides by reach instead of impressions. In the Marketing API Insights endpoint the fields are spend, impressions and cpm.

The two platforms count impressions under different rules and price them in different auctions, so a Google CPM and a Meta CPM are not directly comparable. Compare CPM within one platform, placement and format over time.

Why CPM is not the cost of reaching a thousand people

Impressions count exposures; reach counts people. With 30,000 impressions and a reach of 12,000, average frequency is 2.5 and the cost per 1,000 people reached is 12.50, not 5.00. Only the provider’s whole-scope reach figure can give the second number, because reach from separate rows overlaps and cannot be added.

MeasureCountsFormulaIllustrative value
ImpressionsEvery time the ad was shownCount from the platform30,000
ReachDistinct people or accountsDeduplicated count from the platform12,000
FrequencyAverage exposures per personImpressions ÷ reach2.5
CPMCost per 1,000 impressionsSpend ÷ impressions × 1,0005.00
Cost per 1,000 reachedCost per 1,000 peopleSpend ÷ reach × 1,00012.50

What makes CPM rise or fall

CPM moves with competition for the same audience and placement, the size of the audience, the placement and format mix, seasonality (it typically rises in busy retail periods as more advertisers bid) and the ad’s relevance in the platform’s auction. A falling CPM can mean delivery shifted to cheaper inventory rather than that the ad improved, so check the placement mix before celebrating.

There is no universal good CPM. It varies by country, audience, platform, format and month. Compare a campaign with its own history and with campaigns that buy the same placements, not with an industry average quoted without its source.

Placement (illustrative)SpendImpressionsCPM
Feed9015,0006.00
Stories4010,0004.00
Audience network205,0004.00
New placement00Unavailable

When CPM is undefined or misleading

When impressions are zero, CPM is undefined. That is normal for a new ad, an ad disapproved before serving or a filtered segment with no delivery. Show the cell as unavailable; a zero would suggest free delivery and sort to the top of any “cheapest” list. A CPM computed from a few dozen impressions swings wildly and should not be compared with one built from millions.

Check units before dividing. Google Ads API cost fields are in micros (150,000,000 is 150.00); Meta reports spend as a decimal string in the ad account currency. Never mix currencies in one CPM.

Investigate CPM with Adlane

Connect the Meta or Google Ads account and ask a bounded question: “For September, show spend, impressions, reach, CPM and cost per click by placement for this campaign in the account currency, and mark rows with no impressions as unavailable.” Review the returned rows and the provider fields behind them before drawing a conclusion. Any suggested change, such as pausing a placement, becomes a proposal that waits for your approval.

Questions, answered

What does CPM mean in advertising?

CPM stands for cost per mille, the cost of 1,000 ad impressions. “Mille” is Latin for thousand. It is also called cost per thousand.

How do you calculate CPM?

Divide ad spend by impressions and multiply by 1,000. For example, 150 spend ÷ 30,000 impressions × 1,000 = a CPM of 5.00 in the account currency.

How many impressions will my budget buy?

Divide the budget by the CPM and multiply by 1,000. A 500 budget at a CPM of 8 buys about 62,500 impressions. Treat it as an estimate: actual CPM depends on the auction.

Is a lower CPM always better?

No. A lower CPM buys more exposure for the money, but the exposure may reach a less relevant audience or cheaper placements. Judge it beside clicks, conversions and cost per result.

What is the difference between CPM and CPC?

CPM is the cost of 1,000 impressions; CPC is the cost of one click. CPC = CPM ÷ (CTR × 1,000) when CTR is expressed as a fraction, so a higher click-through rate lowers CPC at the same CPM.

What is a good CPM?

There is no universal benchmark. CPM varies by platform, country, audience, format and season. Compare a campaign with its own history and with campaigns buying the same placements.

Free CPM calculator

Need the arithmetic only? The CPM calculator runs in your browser with the formula shown: CPM = spend ÷ impressions × 1,000.

Sources

Continue your review