Blog

Pay-per-click ads in Telegram bots: how to write a post that passes moderation

On HiViews, welcome and regular ads in Telegram bots can be bought per click instead of per impression: $0.05 per click, with the impressions themselves free. Moderation accepts only strong posts for this format — the kind people actually want to tap. Below: which clicks are charged, when paying per click beats paying per impression, and how to build a post that gets approved.

Updated:

How pay-per-click works

Ads in bots are normally bought per impression: $6 per 1,000 welcome impressions and $3 per 1,000 regular ones. Both placements have a second model, pay-per-click. Impressions are free, and $0.05 is charged at the moment a person taps a button or a link in the post text.

A welcome impression is the message that arrives right after /start, before the bot’s own greeting. The format is covered in detail in Welcome ads in Telegram bots. A regular impression is requested by the bot after it has delivered its result, and it can be paid per click too.

Not every tap is billed:

SituationCharge
First click on a button or link in an impression$0.05
Repeat taps on the same impressionFree
A click within 0.5 seconds of deliveryFree
A second click by the same person within an hourFree
An impression nobody clickedFree

Prices are in US dollars. Options multiply the click price too: with Premium-only targeting a click costs $0.10.

A human cannot tap half a second after a message is delivered — scripts do that, so those clicks are free. For how the network filters out fake viewers, see the article on fake traffic in Telegram bots.

Budgeting takes one step: amount ÷ $0.05 = clicks. Example: $5, the minimum top-up, buys 100 clicks, and $50 buys 1,000.

Per impression or per click: the break-even point

Both models buy the same spot. Take the welcome message: per impression, 1,000 impressions cost $6 no matter how many people tap. Per click, the same 1,000 cost whatever their clicks add up to.

Here is the click rate at which the two cost the same. Paying per impression, one impression costs $6 ÷ 1,000 = $0.006; paying per click, it costs CTR × $0.05 on average. Set them equal: CTR = 0.006 ÷ 0.05 = 0.12, or 12%. Check: 1,000 impressions at a 12% CTR give 120 clicks, and 120 × $0.05 = $6.

CTRClicks per 1,000 impressionsCost per click, paying per impressionCost per click, paying per click
2%20$6 ÷ 20 = $0.30$0.05
5%50$6 ÷ 50 = $0.12$0.05
12%120$6 ÷ 120 = $0.05$0.05
20%200$6 ÷ 200 = $0.03$0.05

CTR values are for the arithmetic, not a forecast.

While your CTR is below 12%, a click is cheaper on pay-per-click. Above 12%, paying per impression wins. If you don’t know your CTR yet, pay-per-click removes the risk: people who don’t tap cost nothing.

The quality rule follows from the same arithmetic. Below a 12% CTR the advertiser gets welcome impressions for less than $6 per 1,000, and a weak post would get them almost for nothing. So the format takes only posts people really tap.

When to choose impressions: when the goal is simply to be seen, or when your CTR is steadily above 12%. The full price list is in How much do Telegram bot ads cost?

The quality rule: why not every post is accepted

Every HiViews campaign is reviewed by hand, usually within a day. For pay-per-click, the check against the network rules comes with one more question: will people want to tap this post?

The moderator looks for a catchy first line, a clear benefit and a visible button. If something is missing, the post is not turned away for good: it can run on pay-per-impression, or be reworked and resubmitted.

A click can also only be billed if it can be counted, so every link must be a button or a hyperlinked word. A bare URL, an @mention or a line like “search for us” sends people around the counter.

Checklist for a strong post

The person opened the bot to do something of their own, so the post has to make sense at a glance.

  • Open with the benefit, not an introduction. Not “we are company so-and-so”, but what the person gets.
  • Address the person by name. The $name placeholder is replaced with the viewer’s first name, and $username with their @username. Once, at the start, is enough.
  • One clear benefit. One product, one promise, one action.
  • One bright button with a short label. A welcome post can carry up to two coloured buttons, but one works best: a verb and a result in two or three words, such as “Start a lesson” or “Get the discount”.
  • Media only if it shows the product. A photo, video or GIF is optional. A gameplay frame or a product screenshot helps; an abstract picture just pushes the text down.
  • No more than 6 lines. That is the limit on visible text. Two to four are usually enough: benefit, detail, call to action.
  • Every link is a button or a word. No bare URLs and no @mentions: the address goes into a button or a hyperlinked word.

Three before-and-after examples

The products below are made up; the structure is what matters.

A bot with English lessons

Before: “We are an online language school. We offer many courses for different levels. Details on our site: school.example”.

After: “$name, English in 10 minutes a day. Short lessons right in Telegram, and the first one is free.” Button: “Start a lesson”.

The first line is now about the benefit rather than the company, and the bare address became a button.

A mobile game

Before: “New game!!! Download right now!!! Find us in search by name or message @farmgame_example”.

After: “Build a farm in one evening. A level takes 5 minutes and you can play offline. New players get a starter pack.” Button: “Play”. A short gameplay clip is attached.

Specifics instead of exclamation marks, a button instead of an @mention, and media that shows the product itself.

Grocery delivery

Before: eight lines listing range, prices, an app, bonuses, cashback and promotions, plus three different links in the text.

After: “$name, groceries for dinner delivered in 30 minutes. 20% off your first order.” Button: “Order with discount”.

The text fits the limit, six advantages became one, and three links turned into one button.

Common reasons for rejection

The reason is almost always on this list:

  • Bare links and @mentions in the text. The same goes for addresses on an image and “find us in search”.
  • No button, or one that is easy to miss. A label like “More” or “Link” does not say what happens after the tap.
  • A first line that says nothing, or several products and promises in one post.
  • More than 6 visible lines of text or more than two buttons.

How to read the results

With pay-per-click, click tracking is always on: statistics show impressions, clicks, CTR and spend by day and by bot.

  • Clicks are both the result and the spend: paid clicks × $0.05. Compare the number with the goal actions on your side.
  • CTR per bot shows where the post fits the audience. Where it holds above 12%, a click would be cheaper on pay-per-impression.
  • Weak bots can be excluded. If clicks from a particular bot never turn into the actions you want, remove it: campaigns have “only chosen bots” and “all except chosen” modes.
  • Delivery speed. These ads go to bots whose users are quick to tap, so reach may build more slowly than on pay-per-impression.

If clicks are scarce, change the post rather than the settings: the first line and the button label. Run two versions as separate campaigns and keep the better one.

How to launch a campaign

The advertiser guide walks through every step. In short:

  • Top up your balance. The minimum is $5, in US dollars. Payment methods are in the finance guide.
  • Build the post in the campaign wizard: up to 6 lines of text, media if needed, a button.
  • Choose the welcome or regular placement and “Per click” billing. Then set topics, languages and a schedule.
  • Pick the frequency. The default is unique: once per person for the whole campaign. Once a week and once a day are also available.
  • Send it to moderation. Review usually takes up to a day.

FAQ

How much does a click cost in Telegram bot ads?

On HiViews a click costs $0.05, and the impressions are free. Pay-per-click is available for both the welcome placement, right after /start, and the regular one, after the bot’s result.

Which clicks are not charged?

Repeat taps on the same impression, clicks made within 0.5 seconds of delivery, and repeat clicks by the same person within an hour. Only the first click on an impression is charged, and at most one click per person per hour.

When is pay-per-click cheaper than pay-per-impression?

For the welcome placement, when your post’s click rate is below 12%. At $6 per 1,000 welcome impressions and $0.05 per click, both models cost the same at a 12% CTR: 120 clicks × $0.05 = $6. Below that, a click is cheaper on pay-per-click; above it, on pay-per-impression.

Why was my post not accepted for pay-per-click?

Usually for one of three reasons: a weak first line with no clear benefit, no visible button, or bare links and @mentions in the text. Rework the post and resubmit it, or run it on pay-per-impression.

or in the Telegram bot @HiViewsBot