Home / Blog / Telegram bot advertising: ads in bots and promoting your bot file

Telegram bot advertising: ads in bots and promoting your bot file

Author: Robert Wan· 11 min read· September 29, 2026
Telegram bot advertising: ads in bots and promoting your bot file

Advertising in bots is not one job but several, and people mean different things by the phrase. Which one is yours decides how you buy and what the report shows. Below: what belongs to Telegram Ads here, how to pick bots for a placement, what the platform counts when you promote your own bot, and how to keep different bots' results apart.

Three uses of the term Telegram bot advertising

The phrase can refer to three different things. Two belong to Telegram Ads. A placement is an ad shown inside someone else's bot to its users, either in bots you list or, since September 2026, through the Banner in Bot format, where Telegram chooses the bots. When your bot is the destination, the ad sends users to it, and the platform counts a start. The third is outside the platform: tools marketed as advertising bots, which send messages on the advertiser's behalf. The guidelines prohibit ads promoting spam software (5.11).

A related product is easy to confuse with the placement: third-party ad networks that run their own formats inside Mini Apps. Our article on Telegram ad networks covers them. This article stays with the official platform: ads shown in bots and ads that lead to a bot.

Ads inside bots: how the placement works

Telegram's developer documentation describes what a user sees. In a bot, the ad, a sponsored message in Telegram's own terms, sits above the chat as a bar: a title prefixed with Ad (or Recommended when the ad is flagged as a recommendation), the ad text, and a thumbnail on the right when one is set. A tap on the bar opens the advertiser's link. Links outside Telegram's own list of trusted domains first show a confirmation prompt. A view is counted once the whole text has been shown on the screen.

Telegram's ad pages publish no audience threshold for bots. According to resellers, bot placements since May 2025 have required more than 1,000 daily active users. For Banner in Bot, it was reported in September 2026 that the format works with bots of up to 1,000 monthly users. Telegram launched ads in bots in October 2024; according to market reports, they came to simplified accounts first and to corporate accounts in May 2025.

A corporate account offers four targeting types: Search, Bots, Users and Channels, and there are two ways to reach bots. With Bots targeting you name the specific bots that will show the ad. Since September 2026 there is a second way: the Banner in Bot format under Users targeting. You define the audience and the platform picks the bots, showing the ad to those people in any bot that carries ads. You cannot choose specific bots here, and the minimum bid is the same as for Users targeting.

QuestionAds in channelsAds in bots
Where the ad appearsAfter all ordinary posts (developer documentation); when the server sets the posts_between field, also between posts, at least that many messages apart (TDLib)Above the chat with the bot, as a bar labelled Ad (developer documentation)
What the user seesTitle, text, a button with the link, optional photo or videoTitle, text and an optional thumbnail; the whole bar opens the link
How placements are chosenUsers targeting by country, language and interests, or Channels targeting by topic, language and specific channelsBots targeting: a list of specific bots. Banner in Bot (Users targeting): an audience, bots chosen by the platform
Who qualifiesPublic channels meeting the official subscriber thresholdBots admitted to carrying ads
Media in the ad formPhoto or video for Users and Channels targetingNot listed in the form for Bots targeting. Banner in Bot: text, a logo and custom emoji, no photo or video

Choosing bots and setting up the placement

Pick bots by the task their users came to perform: that task is the context your ad appears in. Start from bots your customers already use in the same workflow, then expand to adjacent tasks. There is a second layer on top of that: the platform applies its own logic. A user who follows enough large channels in one category may see ads in that category in bots as well. That selection is the platform's; Bots targeting has no interest field of its own, only the list of bots. Only Banner in Bot lets you set interests for ads in bots.

The bar shows a title with the Ad prefix; the offer itself goes into the ad text. Put it in the first words of the text and add one concrete detail. The link goes straight to the destination you promote.

Then keep the placements separate. The report breaks down by campaign, account, promoted object and ad, and not by the bot where the ad ran. Separate ads let you compare individual bots or small pools; results within each pool remain aggregated. The same split applies to channels. Banner in Bot allows no such split: you do not choose the bots, and the report does not show them.

How Adstat runs placements across bots and watches the cost per action

One ad per bot means many similar ads, which is where the account tooling matters. Adstat is a service for day-to-day work with Telegram Ads inside an agency or reseller account. The service's documentation describes copying an ad from its detail page and duplicating it across parameters that depend on the placement type.

For Bots targeting that parameter is the bot audiences, the number of people who use a bot in a month: one ad becomes several, one per bot. The statistics table then shows each ad with spend, impressions, clicks, actions, the conversion rate and the cost per action. The action type appears as a column. Reports drill down to 5-minute intervals for the last few days.

Automated rules are configured in strategies. In the accounts we run, the action behind CPA for a bot destination is the bot start; the official pages publish no list of action types. A rule that stops the ad when the cost per bot start over the last three hours exceeds your limit therefore works without a pixel. Conditions are checked automatically every few minutes, and after a trigger the checks pause for the interval you set.

Promoting your own bot with Telegram Ads

The reverse task starts with the link. The guidelines allow one optional link in the ad text in the form @link, t.me/link or t.me/link/123. It has to lead to the same destination as the main ad URL. Links to a bot may include start parameters: the value after t.me/your_bot?start=, which Telegram passes to the bot with the /start command. It works as a source tag only if the bot reads and stores the value. Our article on Telegram marketing covers that part. Put the bot link in the ad text as well: a highlighted link draws more taps.

The destination itself is reviewed under section 4 of the guidelines, and bots have their own conditions there.

What is checkedRule
ProfileA promoted bot has a profile image and a complete description (4.1)
FunctionalityThe bot responds to commands properly on both mobile and desktop (4.2)
RelevanceMostly noninteractive bots designed to redirect elsewhere are not accepted (4.3)
ActivityEmpty or abandoned bots are not allowed as destinations (4.5)
ConsistencyThe destination matches the ad text (4.3); for a bot, that is what it does after /start

Test the bot on both mobile and desktop before launch, and read its first reply the way a new user sees it: the reply to /start is the landing page of a bot.

An ad's statistics show three numbers: views, channel joins and bot starts. Both joins and starts are counted after the user has viewed the ad. The account counts actions per ad and names the action type, with the conversion rate and the cost per action next to them. Only the bot knows what the user does after the start, so work out what a start is worth from your own data: how many starts reach a payment or another target step. That is the figure to compare with the price of a start.

Questions and answers

Do I need my own bot to advertise inside bots?

No. In the ad form the destination is entered before the targeting type, so the two are separate choices. Which destinations are allowed depends on the placement and the account: according to market reports, external websites were not available for placements inside bots, so check this in your own account. The destination is reviewed under the same section of the guidelines in every case.

Can one ad run in channels and in bots at the same time?

Not with a list of bots: Bots and Channels are separate targeting choices. Choosing specific bots (Bots) and choosing an audience (Users, including Banner in Bot) are also separate settings that cannot be mixed in one ad. If you need both approaches, run two ads that share the creative and compare them over the same window; a combined figure will not separate the results of the two placements.

Why did the ad get clicks but no bot starts?

Check what the link opens. A start is counted when the user launches the bot after viewing the ad. As observed in ad accounts, a tap on a link that opens a Mini App straight away is not counted as an action unless the user has allowed the bot to message them. The technical reason is that such a link does not send the bot a /start command: its startapp parameter goes to the Mini App itself (the start_param field), not to the bot. A bot that jumps into an app can therefore show clicks without a recorded action.

What does the owner of a bot get from the ads shown in it?

In October 2024 Telegram announced that bots and mini apps take part in ad revenue sharing, with 50% of ad revenue going to content creators and bot developers. Telegram's own pages state no audience requirement for bots.

What to do first

  1. Decide which of the two jobs you need: a placement inside bots your customers already use, or paid traffic to your own bot. For placements, list bots by the task their users perform and launch one ad per bot or small pool. If the audience matters more than the specific bots, choose Banner in Bot.
  2. For your own bot, check the profile and the first reply. Then put a start parameter in the link and make sure the bot stores it.
  3. Set a rule on the price of a start or on the conversion rate before scaling. Compare clicks and actions across ads over the same window, and for what happened after the start look at the bot's own data.