Best Practices

    What Is CPM? (And What It Actually Tells You About Your Recruitment Ads)

    Our team
    July 18, 2026
    6 min read

    A campaign report lands on your desk showing a CPM of €7.40. No context, no comparison, just a number next to a euro sign. For most HR and recruitment managers, CPM is the least intuitive metric on the dashboard: it doesn't measure clicks, applications, or hires, it measures something that happens before any of that.

    CPM, or cost per mille (cost per 1,000 impressions), is the price you pay simply to be seen. That makes it useful in a specific way, and easy to misjudge in almost every other way.

    This article explains what CPM actually measures, what realistically drives it on Meta and TikTok for a Dutch audience, and when it deserves your attention at all.

    Why CPM gets misread so often

    CPM gets misread because it sounds like a cost problem when it is usually an inventory price. Meta and TikTok set CPM based on how much competition exists for a given audience's attention at that moment: more advertisers chasing the same people means a higher price per 1,000 impressions, regardless of how good or bad your recruitment campaign is.

    The other common mistake is treating CPM as something to minimize on its own. A low CPM reaching the wrong audience is not a win. A higher CPM reaching exactly the technical profiles you need to hire can be money well spent.

    What CPM actually measures (and what it doesn't)

    CPM is calculated as follows: (total ad spend ÷ impressions) × 1,000 = CPM. Example: a campaign spends €300 and generates 50,000 impressions. (€300 ÷ 50,000) × 1,000 = €6.00 CPM.

    That is the entire calculation. CPM tells you what it costs to put your vacancy in front of 1,000 people. It does not tell you:

    • Whether those 1,000 people are remotely qualified for the role
    • Whether anyone actually noticed the ad, let alone clicked it
    • Whether the audience size behind that CPM is realistic for your job's actual reach
    • Whether the impressions translated into applications further down the funnel

    CPM measures the price of visibility, not the value of it. A cheap CPM in front of the wrong audience wastes budget just as easily as an expensive one, it simply does it more quietly.

    What actually drives CPM on Meta and TikTok for Dutch campaigns

    A handful of factors consistently move CPM up or down:

    • Audience size and specificity: narrow, in-demand audiences (technical profiles, scarce skill sets) push CPM up because fewer available impressions are being bid on by more advertisers
    • Seasonality: Q4 is the single biggest driver. Holiday-season competition for ad inventory reliably pushes CPM well above baseline across Meta's auction
    • Campaign objective: a campaign optimized for conversions typically shows a higher CPM than one optimized purely for reach or traffic, because Meta prioritizes different inventory for each
    • Ad quality and relevance: low-engagement creative gets shown less efficiently, which pushes CPM up over the course of a campaign
    • Platform and format: video placements and Reels-style formats are priced differently from static image ads, and Meta and TikTok run separate auctions with their own dynamics

    On Dutch benchmarks specifically: Meta CPMs in the Netherlands typically range from roughly €4 to €9 for broad audiences, and €8 to €18 for narrow interest-based or retargeting audiences, based on 2025 to 2026 market data. The Netherlands sits in the mid-tier of European CPM pricing, more expensive than Southern Europe, cheaper than markets like Denmark or Switzerland.

    Seasonality is not a minor factor here. The same Dutch market data shows Q4 holiday-season CPMs spiking 40 to 70 percent above baseline, which means a €6 broad-audience CPM in September can realistically become €9 to €10 in late November without anything about the campaign itself changing. Treat any CPM number as tied to a specific month, not a fixed year-round figure.

    How CPM relates to CTR, CPC, and cost-per-applicant

    CPM sits at the very start of the funnel, before anyone has clicked anything: CPM (cost per 1,000 impressions) → CTR (% of impressions that get clicked) → CPC (cost per click) → cost-per-applicant (cost per completed application).

    A rising CPM does not automatically mean a worse-performing campaign. If CTR holds steady while CPM climbs during Q4, CPC will rise too, but that can still be worth paying if the audience quality and application rate stay intact. The number to actually watch is what happens at the far end of that chain, not CPM in isolation.

    Related reading: What Is CPC? covers the next link in this chain, and What Is CTR? covers the metric that connects CPM to CPC.

    Three questions that tell you whether your CPM is actually a problem

    • How narrow is this audience? A CPM of €14 for a scarce technical profile is not automatically worse than a CPM of €5 for a broad, general audience. The two are not competing for the same inventory.
    • What time of year is this? A CPM comparison between a September campaign and a November campaign is not a fair comparison, given the Q4 premium most Dutch advertisers face.
    • Is CPM moving on its own, or are CTR and cost-per-applicant moving with it? If CPM rises but the rest of the funnel holds steady, the campaign may still be healthy. If CPM rises while application volume drops, that is the actual signal worth acting on.

    Where this leaves recruitment teams

    Manually adjusting budgets around seasonal CPM swings, for every vacancy, across both Meta and TikTok, is exactly the kind of repetitive tracking that eats a recruitment team's time without adding insight. SOAP automates that budget allocation based on what happens further down the funnel, so a seasonal CPM spike does not have to mean manually rebalancing every campaign by hand.

    If you want the full cost picture, not just CPM but cost-per-click and cost-per-applicant, we've laid it out in a free guide, including current cost benchmarks by sector and an honest comparison between in-house management and automation.

    Cover of the e-book Stuck in your job marketing?

    Download: Stuck in your job marketing?

    A practical guide for recruiting organizations

    Paying an agency but missing results, control and insight? This free e-book shows you how to reach qualitative applicants for your volume vacancies — without a slow intermediate layer.

    Frequently Asked Questions

    There isn't a single good number, it depends heavily on audience size and season. Dutch Meta CPMs typically range from roughly €4 to €9 for broad audiences and €8 to €18 for narrow, in-demand audiences, based on 2025-2026 market data. Q4 pushes those figures 40 to 70 percent above baseline, so a September benchmark and a November benchmark are not directly comparable.

    CPM equals total ad spend divided by impressions, multiplied by 1,000. A campaign that spends €300 and gets 50,000 impressions has a CPM of €6.00. It reflects the price of visibility, not what that visibility was worth.

    Yes, if the low CPM comes from an overly broad or poorly matched audience. Cheap impressions in front of the wrong people still cost money and produce little in return. A CTR and cost-per-applicant that stay healthy alongside a higher CPM are usually a better sign than a low CPM with a weak application rate.

    Yes, consistently. Dutch and broader European market data shows CPM spiking 40 to 70 percent above baseline during Q4, driven by holiday-season competition for ad inventory across all advertisers, not just recruitment. Planning campaigns and budgets around that seasonal premium avoids reading a Q4 CPM as a sign that a campaign is suddenly underperforming.

    No. CPM measures the cost of impressions, before anyone has clicked anything. CPC measures the cost per click, and cost-per-applicant measures the cost per completed application, both further down the funnel. A campaign's CPM can rise while its cost-per-applicant stays flat or even improves, which is why none of these numbers should be read in isolation.