CPM Calculator
This CPM calculator turns a campaign cost and an impression count into advertising cost per 1,000 displays. Impressions count every display, including repeat displays to the same person; they are not clicks and they are not unique viewers.
Calculate CPM
The top bar scales your CPM rate against a rounded-up scale, and the columns show cumulative spend at 25%, 50%, 75% and 100% of the impressions.
CPM formula and worked examples
CPM = cost / impressions × 1,000. The form does the same thing in one step: it multiplies the cost by 1,000, divides by the impressions, and rounds once at the end. A cost of 250 for 50,000 impressions gives 5.00. A cost of 37.50 for 12,500 impressions gives 3.00. A cost of 12.50 for 2,500 impressions gives 5.00. A cost of 100 for 1,000 impressions gives 100.00, because 1,000 displays is exactly one CPM unit. Take both figures from the same campaign and the same reporting period, otherwise the ratio describes a mix of records rather than one purchase.
What the two fields accept
Campaign cost accepts a non-negative decimal using a dot, including grouped values such as 1,000.50. Impressions accepts positive whole numbers such as 1,000,000. Commas must separate groups of exactly three digits: 50,00 and 1,2,3 are rejected. Currency symbols, exponents and spaces inside a number are refused; impressions also refuses signs and decimal points. After valid grouping commas are removed, cost keeps its existing 100-character limit and impressions its 100-digit limit. Zero impressions cannot be a denominator. A successful result echoes the original entries so you can identify the campaign figures used.
How the result is rounded
The division is carried out as an exact ratio of whole numbers rather than floating-point arithmetic, so a very large cost or a very long run of digits does not lose precision part-way through. The final ratio is rounded to two decimal places, and an exact half rounds up: a cost of 1 for 8,000 impressions is 0.125 and shows as 0.13, while a cost of 100 for 30,000 impressions is 3.333 and shows as 3.33. Nothing is rounded before the division, which is why the output matches the arithmetic you can repeat by hand.
When the answer is 0.00
Two different situations produce 0.00. A cost of zero with positive impressions is an exact 0.00, and the result line simply reports it. A positive cost that is small next to the impressions can round down to 0.00 as well; a cost of 1 for 400,000 impressions is 0.0025. In that second case the page adds a separate note saying the positive CPM is below the displayed precision, so 0.00 does not mean the placement was free. Read the note under the number before you record the result.
Working backwards from a target CPM
This form runs in one direction only: cost and impressions in, CPM out. It has no mode that solves for impressions or for spend, so rearrange the formula yourself. Impressions = budget / CPM × 1,000, so a budget of 150 against a target CPM of 3.00 covers 50,000 impressions. Cost = CPM × impressions / 1,000, so a CPM of 4.50 across 20,000 impressions costs 90. To check the hand arithmetic, feed the derived cost and impressions back into the form and confirm that the target CPM comes out again.
Currency and what is left out
There is no currency field and no exchange rate. The cost number carries whatever unit you entered, and the result stays in that unit with no symbol attached, so a cost recorded in euros produces a CPM in euros. Convert spend before you enter it if you are comparing campaigns priced in different currencies. Nothing else is added either: no bid floor, no platform fee, no tax, and no volume discount. Whatever your report gives you as spend is the only amount the calculation sees.
What CPM does not measure
CPM is a price, not a performance grade. Impressions count displays, so one person served an ad five times contributes five impressions, and the number says nothing about reach or unique viewers. It says nothing about clicks, signups, or revenue either, so a cheap CPM on placements nobody acts on can be a worse buy than an expensive one that does. Use it to compare cost per thousand displays between campaigns that report impressions the same way, and judge the outcome on the conversion metrics for the same period.
Where this CPM calculator sits
It is the advertising-price page in a small set of number tools. Use the percentage calculator next to it when you need share of total spend or the change between two monthly CPM figures. The financial calculators and the IRR calculator are the next step when the question is return on money invested rather than the price of media, because CPM on its own says nothing about profit. Each page keeps its own fields and its own rules, so carry a figure across by hand.
Frequently asked questions
How do I calculate CPM from ad spend and impressions?
Divide the spend by the impressions and multiply the result by 1,000. Spend of 37.50 across 12,500 impressions is 3.00 per 1,000 displays, and 250 across 50,000 impressions is 5.00. Enter those same two numbers in the two fields on this page and submit; the answer is rounded to two decimals and the values you submitted are echoed back underneath it.
What is the difference between CPM and CPC?
CPM is the price of one thousand impressions. CPC is the price of one click. The denominators are different, so a low CPM tells you nothing about whether anybody clicked, and a high CPM tells you nothing about whether they bought. This page divides cost by impressions only; read clicks from your own report and work out cost per click separately if you need it.
Can I paste campaign figures with thousands commas?
Yes. Cost accepts 1,000.50 and impressions accepts 1,000 or 1,000,000. Each comma must introduce a three-digit group, so 50,00, 1,2,3 and abc are rejected. Currency symbols and exponent notation remain unsupported. Impressions must remain a positive integer; 50000.0, a leading plus sign and internal spaces are refused.
Can it solve for impressions when I only know the budget?
No. The form has a single mode: cost and impressions go in, CPM comes out. Rearrange the formula yourself instead. Impressions equal budget divided by CPM multiplied by 1,000, so a budget of 150 at a target CPM of 3.00 covers 50,000 impressions. Put 150 and 50,000 back into the fields to confirm the arithmetic.
Does it convert the campaign cost into another currency?
No. There is no currency selector and no rate applied, so the result keeps the unit of the cost you entered. A cost in yen gives a CPM in yen, and a cost in dollars gives a CPM in dollars, with no symbol printed. If you are comparing campaigns priced in different currencies, convert the spend before entering it so both sides of the division share one unit.
Is a result of 0.00 a real number?
It can be. A cost of zero with positive impressions is exactly 0.00, and that is a legitimate answer. A small positive cost can also round down to 0.00, because the display stops at two decimals; in that case the page adds a note saying the positive CPM is below the displayed precision. If the note appears, the spend was not zero.