Blog

Telegram CPM explained: what it is, how to calculate it, and how it differs from CPC

Telegram CPM is the price of 1,000 ad impressions: what you pay for your ad being shown a thousand times. The math is simple: spend ÷ impressions × 1,000. On HiViews the CPM is fixed — $6 per 1,000 welcome impressions and $3 per 1,000 regular ones. To compare it with paying per click you need one more number, CTR. Below are the formulas, worked examples and a budget table.

Updated:

What is CPM in Telegram ads

CPM (cost per mille, “cost per thousand”) is the price of 1,000 impressions of an ad. People use it to plan budgets and compare placements. It tells you what a thousand showings cost and nothing about how many people will tap.

CPM shows up almost everywhere on Telegram. The official Telegram Ads platform shows short sponsored messages in public channel feeds. Channel admins sell a post for a flat fee, and the buyer works out the cost per thousand views. Ad networks inside bots sell impressions in private chats, priced per thousand from the start.

On HiViews the cost per 1,000 impressions is fixed and the same for all 16 bot topics. There’s no auction, so you know the price before you launch:

FormatWhen the ad arrivesCPM
Welcome impressionRight after /start, before the bot’s own greeting$6
Regular impressionAfter the bot has delivered its result to the user; the ad stays the last message in the chat$3

Prices in USD. Both placements can also be paid per click: $0.05 per click, impressions free.

How to calculate CPM: four formulas

Four formulas cover all CPM math. The examples use HiViews prices and round hypothetical numbers.

1. What a campaign costs

Cost = impressions ÷ 1,000 × CPM. You need 20,000 welcome impressions: 20,000 ÷ 1,000 × $6 = $120. The same number of regular impressions: 20,000 ÷ 1,000 × $3 = $60.

2. How many impressions a budget buys

Impressions = budget ÷ CPM × 1,000. $100 buys $100 ÷ $6 × 1,000 ≈ 16,666 welcome impressions, or $100 ÷ $3 × 1,000 ≈ 33,333 regular ones.

3. Effective CPM (eCPM)

eCPM = spend ÷ impressions × 1,000. Use it when you didn’t pay per impression — for a whole post, say, or per click. A hypothetical example: a pay-per-click campaign got 5,000 impressions and 150 paid clicks. Spend is 150 × $0.05 = $7.50, so eCPM = 7.50 ÷ 5,000 × 1,000 = $1.50.

4. Cost per click from CPM

CPC = CPM ÷ (1,000 × CTR). At a $6 CPM and a 2% CTR a click costs 6 ÷ (1,000 × 0.02) = 6 ÷ 20 = $0.30. At a $3 CPM and the same CTR it’s $0.15.

About CTR in the examples. CTR values here and below are for the arithmetic, not a forecast. Your own CTR appears in campaign statistics after the first impressions.

What counts as an impression: channel vs bot

“Impression” means a different event in different parts of Telegram — the main thing to remember when comparing prices.

  • A channel post. What’s counted is a post view: it registers when the post appears on screen as someone scrolls the feed, even if they don’t stop on it. Views keep accumulating for several days.
  • A Telegram Ads sponsored message. A short ad in the feed of a public channel: a person reads posts and sees the ad next to them.
  • A bot impression. A separate message delivered to a person’s private chat with a bot in response to something they did — starting the bot or getting a result.

So CPMs from different placements aren’t directly comparable: the same price buys a different kind of attention. It’s fairer to compare cost per click or per conversion — a subscriber, a sign-up, an order. More in Bot ads vs Telegram Ads.

What changes the price on HiViews

The base price depends only on the format. Options then multiply it, and the frequency setting changes what your reach really costs.

OptionWelcomeRegular
No options$6$3
Boost ×1.25–×2 (the ad is shown more often)$7.50–$12$3.75–$6
Premium-only audience (×2)$12$6
Betting and gambling ads (×2)$12$6
HiViews Verified (only real-looking profiles)No extra chargeNo extra charge
Topics, languages, schedule, choice of botsNo extra chargeNo extra charge

Price per 1,000 impressions.

Frequency and unique impressions

The advertiser decides how often one person may see the ad: once for the whole campaign (unique, the default), once a week or once a day. Unique always means distinct people, not distinct messages.

Frequency doesn’t change the CPM; it changes the price of reach. A hypothetical example: 10,000 regular impressions cost $30. With unique delivery that’s 10,000 people, or $3 per thousand people. Choose “once a day”, let each person see the ad twice on average, and the same $30 reaches 5,000 people — $6 per thousand.

Impressions without people aren’t billed. Viewer profiles are checked, suspicious bots are frozen, and their impressions are reversed with a refund to the advertiser. More in the article on fake traffic in Telegram bots.

How many impressions a budget buys

Base prices, no multipliers. The last column shows how many clicks the same amount buys on pay-per-click.

BudgetWelcome impressions ($6)Regular impressions ($3)Clicks at $0.05
$5≈ 833≈ 1,666100
$20≈ 3,333≈ 6,666400
$50≈ 8,333≈ 16,6661,000
$100≈ 16,666≈ 33,3332,000
$500≈ 83,333≈ 166,66610,000
$1,000≈ 166,666≈ 333,33320,000

The minimum top-up is $5. With a ×2 multiplier you get half as many impressions or clicks.

With unique delivery, impressions equal people: $100 on regular impressions is roughly 33,333 distinct people. The budget isn’t spent instantly: the network shows one person at most one ad per hour and six per day, and a welcome ad in a given bot at most once a day.

CPM vs CPC on Telegram and the break-even

Paying per impression (CPM), you pay for every delivered message no matter how many people tap. Paying per click (CPC), impressions are free and you’re charged only for a click-through. On HiViews pay-per-click is available in both the welcome and the regular placement at $0.05 per click. Only the first click of an impression is charged, a click within 0.5 seconds of delivery isn’t charged, and there’s at most one paid click per person per hour.

Which is cheaper comes down to CTR. The break-even: CTR = CPM ÷ (1,000 × click price) = 6 ÷ (1,000 × 0.05) = 0.12, or 12%.

CTRClicks per 1,000 impressionsClick cost on pay-per-impression1,000 impressions on pay-per-click
1%10$0.60$0.50
3%30$0.20$1.50
6%60$0.10$3
12%120$0.05$6
20%200$0.03$10

Welcome placement, $6 CPM, $0.05 per click. CTR values are hypothetical.

When to pay per impression

  • The goal is reach and awareness rather than an immediate click.
  • You already know your CTR and it’s above 12%.
  • You buy regular impressions at $3 and your CTR is above 6%: the break-even there is half as high.
  • The post is informational, with no clear call to tap: such ads are accepted for pay-per-impression only.

When to pay per click

  • The goal is a click-through: to a channel, a bot or a website.
  • You don’t know your CTR and don’t want to pay for people who didn’t tap.
  • You need a predictable budget: $50 is 1,000 clicks.
  • The post is strong: a catchy first line, a clear benefit, a visible button. Every link in it is a button or a hyperlinked word.

Requirements and examples for such posts are in Pay-per-click ads in Telegram bots.

How to tell whether your CPM is good

There’s no universal “good CPM”. A low price per thousand is worthless if nobody taps, and a high one pays off when the ad reaches the right audience. Judge by cost per result, from your own data.

A hypothetical example. Campaign A: 10,000 regular impressions for $30, CTR 1% — 100 clicks at $0.30 each. Campaign B: 10,000 welcome impressions for $60, CTR 3% — 300 clicks at $0.20 each. The second has twice the CPM and a click that’s a third cheaper.

  • Turn on click tracking: statistics will show CTR for each bot.
  • Calculate cost per click: spend ÷ clicks.
  • Calculate cost per conversion: spend ÷ subscribers, sign-ups or orders.
  • Compare formats and platforms on those two numbers, not on CPM.
  • Exclude bots with a low CTR and keep the post that delivers the cheaper result.

Campaign setup, targeting and statistics are described step by step in the advertiser guide.

Short glossary

TermMeaning
CPMPrice per 1,000 impressions
eCPMEffective CPM: spend ÷ impressions × 1,000, whatever the payment model
CPCPrice of one click
CTRShare of impressions that were tapped: clicks ÷ impressions × 100%
ReachNumber of distinct people who saw the ad
FrequencyHow many times one person sees the ad in a period
Unique impressionAn impression to a person who hasn’t seen this ad yet; unique always means distinct people

FAQ

What is CPM in Telegram ads, in plain words?

CPM is the price of 1,000 ad impressions. At a $6 CPM, 1,000 impressions cost $6 and 10,000 impressions cost $60. CPM does not tell you how many people will tap the ad — for that you need CTR and cost per click.

How much do Telegram ads cost per 1,000 impressions in bots?

On HiViews it is $6 per 1,000 welcome impressions and $3 per 1,000 regular impressions, the same for every topic. Boost, Premium-only audience and betting or gambling categories multiply the price.

How do I calculate CPM if I did not pay per impression?

Divide your spend by the number of impressions and multiply by 1,000 — that is your effective CPM (eCPM). Example: you paid $7.50 for 150 clicks at $0.05 and got 5,000 impressions. eCPM = 7.50 ÷ 5,000 × 1,000 = $1.50.

CPM vs CPC on Telegram: which is cheaper?

It depends on CTR. In the HiViews welcome placement 1,000 impressions cost $6 and a click costs $0.05, so the break-even is a 12% CTR. If your post is tapped less often, paying per click is cheaper; if more often, paying per impression is.

What is a good CPM on Telegram?

CPM alone says nothing about results. Work out cost per click and cost per conversion from your own statistics: a campaign with a higher CPM can turn out cheaper if people tap the ad more often.

or in the Telegram bot @HiViewsBot