Every ad platform and every sponsorship deal reduces performance to a handful of numbers, but rarely all three at once. This calculator takes the three inputs you almost always have — impressions, clicks, and total spend — and converts them into CPM, CPC, and CTR in a single pass, so you can compare two campaigns, two sponsored posts, or two quarters on the same terms without reaching for a spreadsheet.
How it works
The engine treats impressions, clicks, and spend as the three raw counts you already have, and derives every ratio directly from them — nothing here is estimated or benchmarked against industry averages. CPM (cost per mille, Latin for "thousand") is your total spend divided by impressions, then scaled up by 1,000, since ad platforms almost universally price and report in thousand-impression units. CPC (cost per click) is simply total spend divided by clicks — the average price you paid each time someone clicked. CTR (click-through rate) is clicks divided by impressions, expressed as a percentage, and it's the only one of the three that measures engagement rather than cost.
The three numbers aren't independent — CTR is effectively the exchange rate between CPM and CPC. A higher CTR means the same CPM converts into a lower CPC, because more of those thousand impressions turned into a click. If a campaign has zero clicks, CPC has no defined value, since dividing by zero clicks is meaningless, so the calculator reports it as $0 rather than throwing an error or showing infinity.
Worked example
Take a campaign that served 100,000 impressions, got 2,000 clicks, and cost $500 in total.
- CPM: ($500 ÷ 100,000) × 1,000 = $5.00
- CPC: $500 ÷ 2,000 = $0.25
- CTR: (2,000 ÷ 100,000) × 100 = 2%
You can check the three against each other with one identity: CPM ÷ (10 × CTR%) = $5 ÷ (10 × 2) = $5 ÷ 20 = $0.25, which lands exactly on the CPC above. That identity is a handy sanity check whenever you're auditing a platform's or sponsor's reported numbers, since a CPC that doesn't match what CPM and CTR imply usually means one of the three figures is measuring a different date range or placement than the other two.
How to interpret your result
These three numbers are exact arithmetic on whatever you typed in, not a prediction — so their accuracy is only as good as the impressions, clicks, and spend figures you pull from your ad platform's or sponsor's reporting dashboard. Double-check that all three cover the same date range and the same placement; mixing a week of impressions with a month of spend produces a CPM that means nothing.
No single one of the three metrics tells the whole story on its own. A low CPM can hide a weak CTR that still leaves you with an expensive CPC. A high CTR driven by a clickbait headline or thumbnail can pull in clicks that never convert into anything valuable downstream. And none of these numbers account for ad viewability, bot or fraudulent traffic, or what happened after the click — a sale, a sign-up, or nothing at all. Use CPM, CPC, and CTR to compare like-for-like campaigns or placements against each other, not as a verdict on whether the spend was actually worth it.
Methodology & sources
The formulas are CPM = (spend / impressions) × 1,000, CPC = spend / clicks (reported as $0 when clicks is 0, to avoid dividing by zero), and CTR = (clicks / impressions) × 100. All three are standard, platform-agnostic ad metrics rather than anything specific to one network — the same math applies whether the impressions came from Google Ads, Instagram, or a direct sponsorship placement negotiated by email.
These definitions match Google Ads' own documentation on CPM bidding, clickthrough rate (CTR), and average cost-per-click (CPC), which defines average CPC as the total cost of your clicks divided by the total number of clicks — exactly the formula used here. Every ad platform surfaces these three metrics slightly differently in its own dashboard, so treat this calculator as the common, comparable baseline rather than a replacement for platform-specific nuances like viewable impressions or attribution windows.