Why ads in bots work for channels and bots
Ads on websites and social networks first have to move a person into Telegram, and part of the audience drops off on the way. Ads in bots skip that step.
- A message in a private chat. The ad arrives as its own message in the chat with the bot, not as one more post in a feed.
- The person is already in Telegram. A t.me link opens the channel or bot in the same app: no browser, no login, no install.
- One tap to subscribe. The button opens the channel, where “Join” is all that is left, or the bot, where “Start” is.
- Good timing. A welcome impression arrives right after /start; a regular one after the bot has delivered its result, so the ad is the last message in the chat.
How the format itself works is covered in Telegram bot advertising; this article is the practical part.
Step 1. Choose the format
HiViews offers three ways to buy attention. The price is the same for every bot topic, so choose by the job to be done.
| Format | Price | Best for |
|---|---|---|
| Regular impression | $3 per 1,000 impressions | Testing several posts, wide reach on a small budget |
| Welcome impression | $6 per 1,000 impressions | The main run with a post that has already shown a good CTR |
| Pay-per-click | $0.05 per click, impressions free | When your CTR is unknown and you want a predictable click price |
Pay-per-click is available for both the welcome and the regular placement.
A regular impression costs half as much, so it is the place to compare versions of your text. A welcome impression arrives when the person has just opened the bot; see Welcome ads in Telegram bots.
Pay-per-click removes the risk of a weak CTR: only the first click of an impression is charged, a click within 0.5 seconds of delivery is free, and one person means at most one paid click per hour. Moderation accepts only strong posts for it, though: a catchy first line, a clear benefit, a visible button. The arithmetic: 1,000 welcome impressions cost $6, the price of 120 clicks. Below a 12% CTR paying per click is cheaper; above it, paying per impression is.
Step 2. Set targeting and frequency
Topics and languages
Bots in the network are grouped into 16 topics, and every campaign can be filtered by user language. Set the language from the start, but don’t narrow topics in advance.
You don’t know which bots your audience uses until you see the stats. Start with several suitable topics or the whole network, keep click tracking on, and after a few days look at CTR per bot. Exclude the weak ones (“all except chosen”); once you have a list of strong bots, you can switch to “only chosen bots”.
Frequency
One person can see your post once for the whole campaign (“unique”, the default), once a week or once a day.
- Start with unique. Every impression goes to a new person, so you never pay twice for the same one.
- Then move to once a week. Once your chosen bots are covered, weekly frequency reminds people who saw the post but didn’t subscribe.
- Network caps always apply. A person gets at most one ad per hour and six per day across the network.
Step 3. Write the post
The impression price is fixed, so cost per subscriber depends almost entirely on the post. You get up to 6 visible lines of text plus an optional photo, video or GIF. That is room for three things.
- Address the person by name. Put $name at the start and the network fills in the person’s name, which suits a message in a private chat.
- One benefit. Not “a channel about everything” but what exactly the person gets: “three design jobs every morning”, “one deal broken down each day”.
- One button with a t.me link. The button text is an action: “Open the channel”, “Start the bot”. A welcome post can carry two buttons, but one goal needs one.
For example: “$name, every morning we post three fresh jobs for designers” plus an “Open the channel” button.
About links. With click tracking on, t.me links open through a quick hiviews.net redirect: that is how clicks and CTR per bot are counted. You can switch tracking off in the editor; the link then opens directly, but you get no click stats. Pay-per-click requires tracking.
In a pay-per-click post every link must be a button or a hyperlinked word: bare URLs and @mentions are not accepted. Content requirements are in the rules.
Step 4. Plan the budget: a $30 example
What follows is an example calculation, not a forecast. What $30 buys at base prices:
| Format | Math | What you get |
|---|---|---|
| Regular impressions | $30 ÷ $3 × 1,000 | 10,000 impressions |
| Welcome impressions | $30 ÷ $6 × 1,000 | 5,000 impressions |
| Pay-per-click | $30 ÷ $0.05 | 600 clicks |
With unique frequency every impression goes to a new person.
Split the amount into a test and a main run:
-
Test: $10 on regular impressions
Two versions of the post at $5 each, roughly 1,666 impressions per version, with click tracking on.
-
Main run: $20 on the better version
Roughly 3,333 welcome impressions, or 400 clicks on pay-per-click, with the weak bots already excluded.
How to estimate cost per subscriber
We don’t quote typical conversion rates: they depend on the channel and the post. Use two numbers of your own: CTR from the cabinet and the share of clickers who subscribed.
Formulas. Subscribers = impressions × CTR × subscribe rate. Cost per subscriber = spend ÷ subscribers. With pay-per-click: cost per subscriber = $0.05 ÷ subscribe rate.
A worked substitution with made-up numbers: if your own stats show a 2% CTR and one in four clickers subscribes, then 10,000 regular impressions give 10,000 × 0.02 = 200 clicks and 200 × 0.25 = 50 subscribers, so $30 ÷ 50 = $0.60 per subscriber. Plug in your own values after the test. More on prices in How much do Telegram bot ads cost.
Step 5. Measure and cut what is weak
The cabinet shows impressions, clicks and CTR by day and by bot. Telegram counts the subscriptions: create a separate channel invite link for the campaign and it will show how many people joined. For a bot, add a start parameter with a campaign tag to the link.
- Watch CTR per bot. Exclude bots with many impressions and almost no clicks.
- Compare posts under equal conditions. Same format, targeting and dates; otherwise you can’t tell what made the difference.
- Compare formats by cost per subscriber, not by impression price. A welcome impression costs more, but the formula from step 4 decides.
The network checks viewer profiles, and impressions in bots caught inflating traffic are reversed and refunded; see Fake traffic in Telegram bots.
Mistakes that waste the budget
- Text that is too long. There are six visible lines. Keep the channel’s backstory for the pinned post.
- Several competing buttons. “Channel”, “Chat” and “Website” in one post split attention three ways. One goal, one button.
- Bare links. A raw address in the text looks like spam, and a pay-per-click post with one will not pass moderation.
- Judging after 200 impressions. At that volume a single accidental click moves CTR by half a percentage point. Wait for a thousand or two per version before switching off a post or a bot.
Step 6. Launch in order
-
Prepare the channel or bot
Fresh posts, a clear description and a separate invite link for the campaign.
-
Top up your balance
The minimum is $5; everything is billed in USD.
-
Create the campaign in the cabinet
Format, topics, language, “unique” frequency, a post with $name and one button.
-
Wait for moderation
It usually takes up to a day; impressions then start on their own.
-
Review the stats after a few days
Exclude weak bots, keep the better post and move the main budget to it.
Every screen of the campaign wizard is covered in the advertiser guide.
FAQ
How much does a subscriber from bot ads cost?
There is no fixed price: it depends on your post and channel. Divide campaign spend by new subscribers. To forecast: cost per subscriber = price per 1,000 impressions ÷ (1,000 × CTR × share of clickers who subscribe). With pay-per-click: $0.05 ÷ share of clickers who subscribe.
What budget can I start with?
The minimum top-up is $5. At base prices that buys roughly 1,666 regular impressions, 833 welcome impressions or 100 clicks. For comparing two posts and excluding weak bots, $20–30 is more practical.
Can I promote a bot this way instead of a channel?
Yes. The plan is the same; only the button link changes to a t.me link to your bot. To count starts that came from the ad, add a start parameter with its own tag to the link.
How do I tell ad subscribers apart from the rest?
Create a separate channel invite link for the campaign: Telegram shows how many people joined through each link. The HiViews cabinet shows impressions, clicks and CTR by day and by bot.