CPM is the cost of 1,000 impressions. Cost, impressions and CPM form a triangle — give any two and the third is worked out for you, marked as computed. Below, plan reach from frequency and expected impressions from a budget. Everything runs in your browser.
The maths: CPM = cost ÷ impressions × 1,000. Cost = CPM × impressions ÷ 1,000. Impressions = cost ÷ CPM × 1,000.
Reach assumes the frequency is an even average — real campaigns show ads unevenly, so some people see more and others fewer.
A planning estimate only: the CPM you actually pay is set by the auction, your targeting and your creative, so real impressions can land well above or below this.
Solve the cost, impressions and CPM triangle in any direction, plus reach from frequency and a budget-to-impressions planner.
100% free · No sign-up · No daily limits · No watermarks · Processed in your browser — files never leave your device
Solve the advertising triangle in any direction — CPM from cost and impressions, cost from CPM and impressions, or impressions from cost and CPM — then plan reach from frequency and the impressions a budget buys at a target CPM.
A campaign costs $500 and delivers 250,000 impressions. CPM = $500 ÷ 250,000 × 1,000 = $2.00 exactly. Run it the other way: at a CPM of $4, a $1,000 budget buys $1,000 ÷ $4 × 1,000 = 250,000 impressions. And if those 250,000 impressions come at an average frequency of 2.5 — each person seeing the ad two or three times — reach is 250,000 ÷ 2.5 = 100,000 different people.
CPM means cost per mille — the price of 1,000 impressions. The three forms are one formula rearranged: CPM = cost ÷ impressions × 1,000; cost = CPM × impressions ÷ 1,000; impressions = cost ÷ CPM × 1,000. Reach = impressions ÷ frequency, where frequency is the average number of times one person is shown the ad. The budget planner applies the impressions form directly: budget ÷ target CPM × 1,000.
Cost per mille — mille is Latin for thousand — so CPM is what 1,000 impressions cost. It is the standard way display, social and video ads are priced and compared, even when you ultimately care about clicks or sales.
Divide the campaign cost by the impressions, then multiply by 1,000. A $500 campaign with 250,000 impressions: 500 ÷ 250,000 = 0.002 per impression, × 1,000 = a $2.00 CPM. This calculator does the same maths in all three directions.
It varies too much by platform, audience and country for a single answer: broad social campaigns might clear at a few dollars, while narrow B2B or LinkedIn audiences can cost ten times that. A CPM is only good or bad against what those impressions return — compare it with your click and conversion costs, not with a benchmark table alone.
Impressions count every time the ad is shown, including repeats to the same person. Reach counts different people. 250,000 impressions at a frequency of 2.5 means about 100,000 people saw the ad an average of two and a half times each.
Because the triangle has three sides and the solver always fills the one you picked. Switching the solve-for locks that field and treats the other two as your inputs — the values carry over, so you can flip direction on the same campaign without retyping.
A dash means the maths cannot be done honestly yet: a needed field is empty, or you would be dividing by zero — impressions of 0, or a CPM or frequency of 0. Fill in a real value and the result appears; the calculator never shows NaN or Infinity.
What is missing, broken, or could be better on this tool? Tell us — we read every suggestion.
✅ Thanks — your suggestion has been received. Suggestions like yours shape what we build next.