CPM is climbing in your monthly report while the number of qualified inquiries stays flat? That usually does not mean the market has broken. It means something in the campaign changed: the audience, the creative, or the placement. CPM is the metric that surfaces this fastest, provided you understand exactly what it measures.
What CPM is and how it is calculated
CPM stands for cost per mille, meaning the cost per thousand impressions. In digital advertising it is the basic billing unit for display and video campaigns, as well as many social formats. What CPM is in practice: it is the amount you pay the platform for every thousand views of your ad creative, regardless of whether anyone clicked or not.
The formula is simple:
CPM = (campaign cost / number of impressions) × 1000
Mark from the demand gen team opens the report on Monday morning and sees that CPM in the LinkedIn campaign rose from 65 to 92, while leads on Friday were down by half. Instead of panicking, he checks whether someone changed the targeting last week and whether a new competitor entered the auction. You spend 4,200 on a campaign that generated 350,000 impressions? Divide 4,200 by 350,000, which gives 0.012 per impression. Multiply by 1000 and your CPM is 12.
It is worth distinguishing two things that often get mixed up in reports. CPM is the cost of an impression. CPC is the cost of a click. CPT is the cost of a transaction or conversion. If in a campaign Google Ads you look only at CPC, you miss the moment when the platform starts showing the ad to a more expensive, less relevant group. CPM rises first, before you even see it in your cost per lead.
A separate issue is CPM in the auction model. On Google, LinkedIn, or Meta you do not pay a fixed rate per thousand impressions. You pay whatever the auction dictates at that moment. That is why the same format, the same creative, and the same target can have completely different CPM on Monday morning and Friday afternoon.
What drives CPM
Several factors shape CPM: some you can set directly in the platform, and some you have no direct control over. It helps to separate them, because mixing them up leads to poor decisions.
Factors you control
- Targeting. The narrower the audience, the higher the CPM. Restricting to director-level roles at manufacturing companies in a single region will push up the cost per impression, simply because there are so few of those people.
- Format and placement. In-stream video, LinkedIn feed ads, and banners on premium sites cost more than standard display across an ad network.
- Creative quality. Platforms measure engagement. A creative that earns clicks and longer view times gets cheaper impressions in subsequent auctions.
- Account structure. Too many narrow audience groups in one campaign splits the budget into small pools and raises CPM, because each group competes separately for the same people.
- Time and day of delivery. Scheduling affects auction competition. In B2B, running during working hours is usually more expensive than in the evening, but it also reaches the people who actually make purchasing decisions.
Factors outside your control
- Seasonality. The fourth quarter and the start of the year are peak advertising budget periods in many industries. CPM rises for everyone then.
- Auction competition. If three new players enter the same market with a similar target, the cost per impression goes up regardless of the quality of your materials.
- Changes in platform policies. Targeting restrictions, changes to attribution models, and cookie limitations affect the supply of available ad placements.
- Market size. In niche B2B segments, the number of available recipients is simply small. This is the most common cause of high CPM in campaigns aimed at a narrow group of specialists.
One thing is worth remembering: a high CPM is not a problem in itself. The problem is a high CPM combined with low conversion. If you pay a premium per thousand impressions, but that group generates inquiries from decision-makers, the math can still work out.
| Factor | |
|---|---|
| Narrow targeting | raises |
| Broad targeting with exclusions | lowers |
| High-engagement creative | lowers |
| Creative that gets no clicks | raises |
| Fragmented campaign structure | raises |
| Consolidated campaign structure | lowers |
| Peak season (Q4, start of the year) | raises |
| Running outside competitors' peak periods | lowers |
What CPM is normal in B2B
There is no single number that can be treated as a universal benchmark. Ranges vary widely across industries, formats, and platforms. The ranges below are rough estimates based on market experience, not data from a single source. Treat them as a point of reference, not a target to hit.
| Channel / format | Typical CPM (B2B market) | Notes |
|---|---|---|
| Display in an ad network | Low single-digit to low double-digit per thousand impressions | The cheapest format, the lowest targeting precision |
| LinkedIn sponsored content | A low cost per thousand impressions | A high cost, but precise targeting by job title |
| Meta (Facebook, Instagram) in B2B campaigns | A moderate cost per thousand impressions | Strongly dependent on the audience group and the creative |
| In-stream video (YouTube) | A moderate cost per thousand impressions | The cost rises when targeting narrow groups |
| Programmatic on industry sites | A moderate to high cost per thousand impressions | Dependent on inventory quality and exclusions |
These ranges are indicative estimates based on market experience, not data from a single company. In practice, CPM in a campaign aimed at small manufacturing business owners in a region will be closer to the lower bound, while a campaign aimed at IT directors at corporations will push well past the upper bound. If you run a campaign in a niche where there are 2,000 people in the entire country, a CPM of 150 is not an anomaly, it is a consequence of market size.
For this reason, comparing your own CPM with another company's CPM from a different industry has limited value. Comparing your own campaigns with each other over time and across channels gives far more insight.
How to lower CPM
The question how to lower CPM usually comes up when the budget is running out and there are no results. The answer does not come down to a single lever. Below is a set of actions that in practice make the biggest difference, ordered from those with the lowest implementation cost.
1. Improve the creative before you touch targeting
Ad platforms measure engagement and reward it with cheaper impressions. A creative that holds the eye for more than two seconds lowers CPM in subsequent auctions. Before you start cutting audience groups, test three versions of the headline and two versions of the graphic. In B2B, specifics in the headline work especially well: a number, the name of a problem, the name of a job title.
2. Tidy up the campaign structure
Too many groups in one campaign splits the budget into small pools. Each group competes separately for the same people, which raises the cost. Consolidating groups with a similar profile and moving different messages into separate campaigns usually lowers CPM by a dozen or so percent without changing targeting.
3. Broaden targeting where it does no harm
Narrow groups are expensive. If a campaign performs well on director-level job titles, it is worth checking whether extending it to managers at the same companies gives a similar result. Sometimes it turns out that this broader group generates a similar number of inquiries at half the CPM.
4. Exclude, don't narrow
Instead of building a narrow audience from scratch, start broad and exclude what doesn't work. Exclusions are cheaper to maintain and push CPM up less than precise narrowing. This applies to both keywords and audience groups.
5. Test placements
In ad networks and programmatic, a large share of the budget can flow through low-quality placements. Regularly reviewing the placement report and excluding those that generate impressions without conversions is one of the simplest ways to lower CPM. This requires data from the client, not just from the ad platform.
6. Match the schedule to real audience behavior
In B2B, purchasing decisions are made during working hours, but research often happens in the evening. Running ads at times when competition is lower can reduce CPM without losing contact quality. It's worth testing two schedules and comparing not just CPM, but also cost per lead.
-
1
Improve the creative
Test headlines and visuals before you touch targeting. Engagement brings CPM down in subsequent auctions.
-
2
Tidy up the campaign structure
Consolidate groups with a similar profile, move different messages into separate campaigns.
-
3
Expand targeting
Check whether a broader audience delivers a similar result at a lower CPM.
-
4
Exclude instead of narrowing
Start with a broader audience and exclude what doesn't work.
-
5
Review placements
Exclude placements that generate impressions without conversions.
-
6
Match the schedule
Test running ads during hours with less competition and compare cost per lead.
If after these actions CPM is still rising and cost per lead isn't falling, the problem probably lies in the B2B marketing strategy itself, not in the campaign settings. In that case it's worth stepping back and checking whether the campaign is speaking to the right person in the right language.
Takeaways for the marketing team
CPM is for diagnosis, not for judging campaign results. On its own it doesn't say whether a campaign is working. It says whether something has changed in the way the platform prices your impressions. Treated as an early warning signal, it lets you react faster than analyzing cost per lead, which reveals the problem with a delay.
It is worth establishing a simple rule in the team: if CPM in a campaign rises by more than 20 percent month over month without changes to targeting and budget, we trigger a review. Most often it turns out that the cause is seasonality, a new competitor in the auction, or audience exhaustion. Each of these causes requires a different response, and without looking at CPM they all look the same: like a drop in the number of leads.