How to identify traffic sources when promoting a bot. About UTM tags

We notice that owners of Telegram bots rarely use UTM tags. In this article, we'll explore why they are important and how to use them.

What are UTM tags for a Telegram bot?

UTM tags are widely used for regular websites, and they serve to determine the source of user traffic. With their help, for example, you can identify users from specific advertising campaigns and subsequently draw conclusions about the effectiveness of the expenses.

Graspil__Visual_Workspace_for_Innovation.pngUTM tags are parameters in the link to your website or bot.

In the case of websites, often Google Analytics (GA) can show the traffic source (website) even without UTM tags. However, with Telegram bots, this doesn't work, and in fact, UTM tags are the only way to know where the user came from.

Why is it important to understand traffic sources?

If we want to increase the audience of the bot, we need to promote it: purchase contextual advertising, write articles, manage social networks, buy links and posts in other Telegram bots and channels, etc.

The list of sources can be impressive, but how do we know which one is effective? Which source brings more users? And which source brings users who make purchases? On which source should we focus our efforts and money?

UTM tags and proper analytics can help answer all these questions.

Example:

Let's say we have a Telegram bot that helps analyze other Telegram bots, and we want to attract more paying users.

The marketer chooses 2 channels for promotion:

  1. Telegram channel "Tips from the Best Entrepreneur in the World" with an audience of 10k users and a post cost of $10.
  2. Group "Python for Everyone" with an audience of 2k people and a post cost of $4.
Option 1. The marketer got lazy and didn't add UTM tags

After a week of advertising on these two channels, we have 50 new users and 5 of them purchased a subscription.

Is it a good result? Not bad. Seeing the result, the marketer continues to buy posts every month, spending $14.

Option 2. The marketer and UTM tags are doing great

After a week of advertising, the marketer opens the analytics and sees 50 new users and 5 sales.

Since UTM tags were set, we can see where each person came from and who made purchases. We open the report and see:

  1. The tips channel brought us 10 users and no purchases (it turned out that they had fake subscribers, and millionaires are not among them).
  2. The Python group brought us 20 people and 3 sales (the group recently wrote an article on Reddit about how cool it is to create bots using Python).
  3. Our article on VC, which we almost forgot about, suddenly went viral and brought 20 people and 2 sales...

Conclusion from the example:

  1. There is no point in continuing to spend money on the business channel, as it doesn't bring any results.
  2. We can continue working with the Python group since they bring us profit.
  3. With the money saved, we write another article on VC and give a bonus to the marketer.

If a marketer doesn't analyze the results of their work, they are not a marketer.

I need tags, how do I use them?

If you connect to our system and use UTM tags, you will have access to a summary report like this:

Graspil_App-2.jpgIn this screenshot, we can see 3 channels: Google, Facebook (FB) and Instagram (Inst).

We can see how many users came, how many left, the bounce rate, and other information.

83% bounce rate for the Google channel indicates that there are some issues with this channel, as almost all users left. The other two channels are performing quite well.

Technical details

To pass a parameter to a bot, you need to create a link like this: https://t.me/YourBotName?start=blogutm

Telegram is designed in such a way that we can only pass one parameter, which is "start". This is different from classic UTM tags. But if you really want to, you can.

Why multiple parameters?

Sometimes this parameter is used to set some initial bot settings, with UTM being the second/third/... parameter. Multiple UTM tags are also possible, for example:

  1. utm_source - the name of the advertising platform (Google, Telegram, Facebook, ...)
  2. utm_medium - the type of advertising (cpc - contextual advertising, email - mailing, ...)
  3. utm_campaign - the campaign name (arbitrary: "blogUtmArticle", ...)
  4. Your own variations are also allowed.

How do we pass multiple parameters in a single start?

We suggest using the following scheme: since we cannot use the equal sign "=" and ampersand "&" that are used in URLs, we replaced them with a dash "-" instead of "=", and an underscore ** "_"** instead of "&".

Does it sound complicated? Below is a picture with an example. UTM for telegram bot

Does it look complicated?

We have created a constructor for generating such links, so there is no need to figure out where to place each dash. If you use your own parameters, you will need to modify the bot's code slightly to handle such links.

Does it look scary?

You might say that such links look too cumbersome, and you would be right, but:

  1. If you don't need multiple parameters, you can use simpler options, which will also work in our analytics: https://t.me/Graspil_bot?start=blogutm
  2. We are preparing an interesting feature that will also allow you to shorten such links.

How to get the value of the start parameter in the bot's code?

When a user starts the bot, the message /start is sent. If the start parameter has a value, for example, https://t.me/Graspil_bot?start=blogutm, then when the bot is launched, the message will look like /start blogutm.

How to transfer tags from the address bar to the bot?

Why might you need to transfer tags? For example, if you purchase advertising and the link leads to your website, where there is a link to the bot, we wrote an article on how to track the entire customer journey to a bot.

In conclusion

We believe that if you leave links somewhere on the Internet, they should have UTM tags. It is very important to objectively understand the reality in order to make informed decisions.