Jump to section
CPM Formula — Worked Examples for Paid Media Reporting
Key takeaways
- CPM = (spend ÷ impressions) × 1,000 — always use the same impression definition the platform exports.
- High CPM is not automatically bad; compare to CTR, view rate, and downstream ROAS before cutting budget.
- Segment prospecting vs retargeting and by placement before benchmarking across channels.
- Finance slides and platform UI often disagree when served vs viewable impressions are mixed.
- Pair CPM reporting with specs validation and policy monitoring so delivery limits are not mistaken for auction inflation.
CPM (cost per mille) is spend per one thousand impressions. Finance and brand teams quote it; performance teams live in CPC and CPA. You still need the CPM formula clean for awareness buys, video delivery, and cross-channel reporting decks.
The CPM formula
CPM = (spend ÷ impressions) × 1,000
Rearrange for planning:
- Spend = (CPM × impressions) ÷ 1,000
- Impressions needed = (spend × 1,000) ÷ CPM
Example: $3,600 spend, 450,000 impressions → CPM = ($3,600 ÷ 450,000) × 1,000 = $8.00.
Always match the platform's impression definition (served vs viewable vs viewed). If finance uses viewable impressions and your export uses served, CPM will drift with no real performance change.
Worked examples
| Channel | Spend | Impressions | CPM |
|---|---|---|---|
| Meta prospecting (Feed + Reels) | $12,000 | 980,000 | $12.24 |
| TikTok in-feed video | $4,500 | 620,000 | $7.26 |
| YouTube in-stream awareness | $2,800 | 110,000 | $25.45 |
| Google Display (managed placements) | $1,100 | 220,000 | $5.00 |
A high CPM is not automatically bad if click-through and conversion rates justify it. Compare to CTR and downstream ROAS before you label a line item "expensive."
CPM vs CPC vs CPA (when to use which)
| Metric | Formula | Best for |
|---|---|---|
| CPM | (spend ÷ impressions) × 1,000 | Reach, video views, brand |
| CPC | spend ÷ clicks | Traffic, lead gen (click-priced) |
| CPA | spend ÷ conversions | Outcome reporting |
Platforms may optimize toward CPC or CPA while displaying CPM in breakdowns. Read the campaign objective, not only the column header.
Platform reporting gotchas
- Meta — "Impressions" include repeated views; CPM drops when frequency climbs but creative fatigues.
- Google Display — Active view viewable CPM can differ from served CPM; align with finance on which to use.
- TikTok — Video views vs impressions — do not mix columns in one CPM calculation.
- LinkedIn — B2B CPMs run hot; segment by placement before benchmarking against Meta.
Pull placement breakdowns from Placements maps before blaming "auction inflation." If CPM spikes on one surface only, the fix is usually creative or placement mix, not a global bid cut.
Tie CPM to specs and policy
Heavy creative (4K video, wrong aspect ratio) limits delivery or triggers disapprovals — validate in Ad Specs before you restructure bids. Policy shifts on restricted categories change eligible inventory and CPM — Policy Watch is the early warning layer when CPM moves without a clear creative or targeting change.
Operator checklist
- Export 30 days: impressions, spend, placement — compute CPM in a spreadsheet to cross-check the UI.
- Segment prospecting vs retargeting before setting CPM ceilings.
- Confirm served vs viewable impression columns match what finance expects.
- Read the CPM glossary entry for definitions your finance team will accept.
- For a longer walkthrough with more channel context, see How to Calculate CPM.
CPM is a delivery cost lens, not a success metric by itself — pair it with outcomes every time.