
Telegram Ads CPM vs Paid Member Delivery: Which Costs Less Per Join
Turn a Telegram Ads CPM into a real cost per join using honest click and join rates, then compare it against flat per-1,000 member pricing. Full math inside.
You have a thousand dollars and two ways to spend it: bid it into Telegram's ad auction, or hand it to a supplier who quotes a flat rate per thousand members. The ad platform reports CPM. The supplier reports cost per member. Those are not the same unit, and until you convert one into the other you are choosing on vibes.
The conversion is not hard. It is just that the numbers you need - click rate on a sponsored message, join rate from a channel preview - are the two nobody publishes.
The formula, and where each term comes from
Telegram Ads bills on views. You bid a CPM: a price per 1,000 displays of your sponsored message. Getting from there to a member costs you two multiplications:
cost per join = CPM ÷ (1,000 × CTR × join rate)
CPM. Telegram's auction has a floor bid - historically in the €1-2 range, depending on your region and whether you buy direct or through a reseller - but the floor is not what you pay. You pay the clearing price for the inventory your targeting selects. English-language, US-country, finance-or-shopping topic inventory clears well above the floor because that is what everyone else is bidding on too. Cheap-geo, single-language, niche-topic inventory can genuinely clear near the floor. Before running any of this math, run a small campaign and read your actual delivered CPM - the platform reports it, and it is the only number here you should not estimate.
CTR. The proportion of people who see the sponsored message and tap it. Sponsored messages are short text - around 160 characters - appended to the feed in public channels. There is no image on most placements, no headline hierarchy, nothing to work with except the words. Ranges we have seen and had reported to us sit between 0.3% and 2%, and the top of that band takes a creative that reads like a message rather than an ad.
Join rate. They tapped, they landed on a channel preview, they saw your description and last few posts. The share who then press Join. This is the term you control most directly and the one people neglect entirely. A preview with a clear promise and three recent posts converts far better than a preview with a wall of pinned rules.
Where sponsored messages can and cannot appear
Four constraints that change the answer, and none of them are optional:
Sponsored messages run in public channels, and only channels past a subscriber threshold - Telegram has described the floor as 1,000 subscribers. They do not appear in groups. They do not appear in private chats. That means your entire addressable inventory is people reading channels, not people participating in communities.
Telegram Premium subscribers do not see sponsored messages at all. Read that twice if you sell anything with a high average order value. The users who have demonstrated willingness to pay Telegram directly are systematically removed from your reach. No bid solves this.
Targeting is coarse by design. Country, language, topic category, and specific channel inclusion or exclusion. There is no age, no gender, no behavioural interest graph built from personal data - which is a privacy position Telegram takes deliberately and a real limitation on your side.
The link target matters for your funnel. Sponsored messages point at channels, bots, and specific posts, with external destinations available in some regions. If the asset you are actually building is a group, you are adding a hop: ad → channel or bot → group. Every hop costs you 30-60% of the remainder. Price the two-step funnel, not the one-step one, or your model will be wrong by half.
Three scenarios, run all the way through
Same €1,000 budget in each row. Cost figures in euros where the ad platform bills in euros; the comparison line converts at roughly parity for readability.
| Cheap geo, strong creative | Mid-market | US / English, average creative | |
|---|---|---|---|
| Delivered CPM | €1.00 | €2.00 | €4.00 |
| CTR | 2.0% | 1.0% | 0.4% |
| Clicks per 1,000 views | 20 | 10 | 4 |
| Cost per click | €0.05 | €0.20 | €1.00 |
| Preview → join | 50% | 35% | 25% |
| Joins per 1,000 views | 10 | 3.5 | 1 |
| Cost per join | €0.10 | €0.57 | €4.00 |
| Per 1,000 joins | €100 | €571 | €4,000 |
| Joins from €1,000 | 10,000 | 1,751 | 250 |
That is a 40x spread, and CTR does most of the work. Halving your CPM helps once; doubling your CTR helps twice, because it also doubles the denominator on cost per click. Spend your optimisation effort on the 160 characters, not on the bid.
Now the other side. Flat per-1,000 delivery - our own pricing, so weigh it accordingly - runs $60 per 1,000 members with volume rates stepping down toward $52 at 50,000. Against the table above: the cheap-geo scenario beats it comfortably, the mid-market scenario loses by roughly 9x, and the US scenario is not in the same postcode.
The part that makes ads look better than that table
An ad-sourced join is self-selected. They read a message, decided it was for them, opened a preview, and chose to join. A sourced member did not choose anything. That difference shows up downstream, and ignoring it makes the comparison dishonest.
So normalise by expected view rate - the share of members who actually open a given post - and compare cost per active viewer rather than cost per join.
| Cost per 1,000 joins | Expected view rate | Cost per 1,000 active viewers | |
|---|---|---|---|
| Ads, cheap geo | €100 | 45% | €222 |
| Ads, mid-market | €571 | 45% | €1,269 |
| Ads, US/English | €4,000 | 45% | €8,889 |
| Sourced delivery, well-briefed | $60 | 25% | $240 |
| Sourced delivery, badly briefed | $60 | 8% | $750 |
Two things fall out of this that are worth more than the headline numbers.
First, a well-run Telegram Ads campaign in cheap inventory is roughly at parity with well-briefed paid delivery on quality-adjusted cost. Not obviously better. Roughly level. If someone tells you ads are strictly superior, they have not divided by view rate.
Second, the quality gap between a good and a bad member purchase - 25% view rate versus 8% - is a 3x cost difference that exists entirely inside the sourcing brief. It is larger than the gap between many of the ad scenarios. Which is where our own product sits: TeleReach fills a Telegram group from source groups you name, or from our US online-shopper pool, at $60 per 1,000 with volume rates above that, and the whole argument for it is that the sourcing is what moves the third column of that table. Ads and sourced delivery are not really competitors; ads reach channel readers you cannot otherwise touch, sourcing reaches community participants ads cannot target at all.
A worked example with a real budget
A US kitchen-gear deals operation. Group, not channel. €1,000 to spend.
Ads path. US targeting, delivered CPM €3.60 after a week of learning. CTR climbs from 0.35% to 0.6% once the creative stops sounding like an ad. Sponsored message points at a channel, because that is the reliable target - 32% of previews convert to a channel join. Then a pinned message moves people from channel to group at 40%.
€1,000 ÷ €3.60 = 278,000 views → 1,667 clicks → 533 channel joins → 213 group members.
€4.69 per group member. For a business earning roughly $1.26 per converted order at a 3% commission rate, that member has to buy repeatedly before the acquisition pays back.
Delivery path. €1,000 buys about 17,800 members at the 10,000+ tier rate of $56. If a quarter of them view posts, that is 4,450 active viewers, against 96 for the ads path - 213 members at a 45% view rate.
The ads path produced better individuals. It produced 46x fewer active viewers. For an affiliate model, where revenue is a volume game against a small per-order commission, that trade is not close. For a $2,000 B2B service where one buyer pays for the year, it flips entirely, and you should run ads.
What usually goes wrong
Bidding before the creative works. People spend three weeks optimising CPM and never rewrite the 160 characters. CTR is worth twice what the bid is, structurally. Write eight variants before you touch the bid.
Forgetting Premium users are invisible to you. If your offer skews toward people who spend money on software, a meaningful slice of your best prospects will never see the ad. Budget accordingly and do not blame the creative.
Assuming inventory is infinite. Narrow targeting plus a high bid does not guarantee spend. There are only so many views in "US + English + a specific topic + these twelve channels" per day. Campaigns routinely underdeliver against budget, and the fix is broadening targeting, which raises your cost per join.
Comparing cost per join against cost per member without normalising quality. The mistake in both directions. Ads buyers overstate their advantage by ignoring price; delivery buyers overstate theirs by ignoring view rate.
Sending ad traffic straight at a bare group. The preview is your landing page. A group with no recent posts and a rules-wall pinned message converts a fraction of what a live one does, and you paid full price for every one of those clicks.
Next step
Run €150 through Telegram Ads with three creative variants and no bid optimisation at all. You are not buying members with that money - you are buying two numbers: your real delivered CPM and your real CTR. Put them into CPM ÷ (1,000 × CTR × join rate) and you will know within a week which side of the comparison your specific market sits on.
If the answer is that your inventory is expensive - and for US and English-language targeting it usually is - price a sourced group build instead and put the ad budget behind retargeting the members you already have.
Need the members to go with the plan
Everything above works better with an audience already in the room. TeleReach adds members to your group from the groups your buyers already sit in, priced at $60.00 per 1,000 members, delivered gradually and tracked live while it runs. No subscription, and whatever is not delivered comes back to your wallet.


