[{"data":1,"prerenderedAt":144},["ShallowReactive",2],{"$fkmeuaBIl0lOiJjHpkAP1iSkIz7tFASQj_NdanN1ykDQ":3},{"data":4,"meta":139},[5,82],{"Date":6,"id":7,"documentId":8,"Title":9,"Slug":10,"Content":11,"Description":12,"createdAt":13,"updatedAt":14,"publishedAt":15,"locale":16,"Image":17,"categories":66},"2024-01-15",55,"lvkwdaif9didvorueo9v2x4j","How do I transfer UTM tags from a website to a bot?","en_utm_from_site_to_bot","Let's imagine a situation: you have a website, a bot, and an advertising campaign. You have created a beautiful landing page for your bot on the website. Users from various advertising platforms visit this page.\n\nWhen some users leave, you see these bounce rates in Google Analytics and Yandex Metrica. Other users launch your bot, and if the bot's link has a tag, for example, as I described in this [article](https://graspil.com/post/en_utm_for_telegram_bot), then in the best case, you will know that this user came from the website.\n\nBut you won't understand from which advertising platform the user came and ultimately which advertising campaign brought more profit.\n\nThe question arises...\n\n## How to pass UTM tags from the user's address bar to the bot?\nWe have developed a JavaScript script that can be installed on your website in 2 minutes and solves this problem.\n\n### How does it work?\nFor each user, the script creates a unique temporary token. Various user data, current UTM tags, some additional parameters, etc., are tied to this token.\n\nThen the script modifies all bot links on the current page by adding the previously created token to them. When a user clicks on such a link and launches your bot, our platform detects this token and attaches the previously collected data to the user.\n\nFor example, transferred UTM tags from the website will go straight to our UTM report.\n\n### What else can this feature do?\n1. The platform automatically determines the user's location and time zone.\n2. Additional parameters can be used in the bot link besides `start`.\n\nFor example, from the link `https://t.me/Graspil_bot?from=site&page=blog`, additional parameters `from` and `page` will be collected, and they will be included in the UTM report along with links from the address bar.\n\n## It's better to see it once\nThis script is installed on our website, and you can check how it works by launching our bot. We have attached an additional parameter to this [link to our bot](https://t.me/Graspil_bot?demoUtm=on&u_source=graspil_blog&u_content=sendUtmfromSite) and asked our bot to send users with this parameter the information it received from you.\n\nOriginally, the link looks like this:\n```\nhttps://t.me/Graspil_bot?demoUtm=on&u_source=graspil_blog&u_content=sendUtmfromSite\n```\n\nIf you look at the link now, you will only see the `start` parameter with the token. The `demoUtm` parameter has already been sent to our server, and when you launch the bot through this link, it will see that there is a token, check the data associated with this token, and if it finds `demoUtm`, it will send you a message with the information it received.\n\n### Several more features are under development, for example:\n1. The ability to retrieve collected data via an API.\n2. Attach additional parameters to the user, such as your user_id.\n\nIf you are interested in these features, let us know.\n\nYou can get more detailed information and the actual code in your personal account on our platform.\n","How to transfer utm tags and other parameters from the site to the bot, as well as how to get a little more information about your client","2024-12-24T09:27:23.690Z","2025-06-17T08:56:20.468Z","2025-06-17T08:56:20.511Z","en",{"id":18,"documentId":19,"name":20,"alternativeText":21,"caption":22,"width":23,"height":24,"formats":25,"hash":60,"ext":27,"mime":30,"size":61,"url":62,"previewUrl":22,"provider":63,"provider_metadata":22,"createdAt":64,"updatedAt":65,"publishedAt":64},7,"jffp9ar9o8zvyajqf3qqmb23","Graspil__Visual_Workspace_for_Innovation.jpg","Как перенести UTM метки с сайта в телеграм бот?",null,1112,156,{"large":26,"small":36,"medium":44,"thumbnail":52},{"ext":27,"url":28,"hash":29,"mime":30,"name":31,"path":22,"size":32,"width":33,"height":34,"sizeInBytes":35},".jpg","/uploads/large_Graspil_Visual_Workspace_for_Innovation_97a95215b9.jpg","large_Graspil_Visual_Workspace_for_Innovation_97a95215b9","image/jpeg","large_Graspil__Visual_Workspace_for_Innovation.jpg",15.07,1000,140,15068,{"ext":27,"url":37,"hash":38,"mime":30,"name":39,"path":22,"size":40,"width":41,"height":42,"sizeInBytes":43},"/uploads/small_Graspil_Visual_Workspace_for_Innovation_97a95215b9.jpg","small_Graspil_Visual_Workspace_for_Innovation_97a95215b9","small_Graspil__Visual_Workspace_for_Innovation.jpg",6.12,500,70,6118,{"ext":27,"url":45,"hash":46,"mime":30,"name":47,"path":22,"size":48,"width":49,"height":50,"sizeInBytes":51},"/uploads/medium_Graspil_Visual_Workspace_for_Innovation_97a95215b9.jpg","medium_Graspil_Visual_Workspace_for_Innovation_97a95215b9","medium_Graspil__Visual_Workspace_for_Innovation.jpg",9.92,750,105,9920,{"ext":27,"url":53,"hash":54,"mime":30,"name":55,"path":22,"size":56,"width":57,"height":58,"sizeInBytes":59},"/uploads/thumbnail_Graspil_Visual_Workspace_for_Innovation_97a95215b9.jpg","thumbnail_Graspil_Visual_Workspace_for_Innovation_97a95215b9","thumbnail_Graspil__Visual_Workspace_for_Innovation.jpg",2.44,245,34,2442,"Graspil_Visual_Workspace_for_Innovation_97a95215b9",17.78,"/uploads/Graspil_Visual_Workspace_for_Innovation_97a95215b9.jpg","local","2024-12-24T09:17:16.021Z","2024-12-24T09:35:00.735Z",[67,74],{"id":68,"documentId":69,"Name":70,"slug":71,"createdAt":72,"updatedAt":72,"publishedAt":73,"locale":16},4,"jap9zvktyjjbys61ckip27og","Main","main","2024-12-22T16:54:03.355Z","2024-12-22T16:55:19.921Z",{"id":75,"documentId":76,"Name":77,"slug":78,"createdAt":79,"updatedAt":80,"publishedAt":81,"locale":16},12,"dgw0mxql98yqr09bjzoi14qh","На главной","mainpage","2024-12-24T08:10:35.499Z","2024-12-25T06:00:34.098Z","2024-12-25T06:00:34.110Z",{"Date":6,"id":83,"documentId":84,"Title":85,"Slug":86,"Content":87,"Description":88,"createdAt":89,"updatedAt":90,"publishedAt":91,"locale":16,"Image":92,"categories":136},57,"wy8drc1yo7mp3ndr51q4d6n9","How to identify traffic sources when promoting a bot. About UTM tags","en_utm_for_telegram_bot","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.\n\n## What are UTM tags for a Telegram bot?\nUTM 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.\n\n![Graspil__Visual_Workspace_for_Innovation.png](https://cont.graspil.com/uploads/Graspil_Visual_Workspace_for_Innovation_33b5e6bbf8.png)_UTM tags are parameters in the link to your website or bot._\n\nIn 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.**\n\n\n## Why is it important to understand traffic sources?\nIf 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.\n\nThe 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?\n\nUTM tags and proper analytics can help answer all these questions.\n\n\n### Example:\nLet's say we have a Telegram bot that helps analyze other Telegram bots, and we want to attract more paying users.\n\nThe marketer chooses 2 channels for promotion:\n\n1. Telegram channel \"Tips from the Best Entrepreneur in the World\" with an audience of 10k users and a post cost of $10.\n2. Group \"Python for Everyone\" with an audience of 2k people and a post cost of $4.\n\n##### Option 1. The marketer got lazy and didn't add UTM tags\nAfter a week of advertising on these two channels, we have 50 new users and 5 of them purchased a subscription.\n\nIs it a good result? Not bad. Seeing the result, the marketer continues to buy posts every month, spending $14.\n\n##### Option 2. The marketer and UTM tags are doing great\nAfter a week of advertising, the marketer opens the analytics and sees 50 new users and 5 sales.\n\nSince UTM tags were set, we can see where each person came from and who made purchases. We open the report and see:\n\n1. The tips channel brought us 10 users and no purchases (it turned out that they had fake subscribers, and millionaires are not among them).\n2. 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).\n3. Our article on VC, which we almost forgot about, suddenly went viral and brought 20 people and 2 sales...\n\n#### Conclusion from the example:\n1. There is no point in continuing to spend money on the business channel, as it doesn't bring any results.\n2. We can continue working with the Python group since they bring us profit.\n3. With the money saved, we write another article on VC and give a bonus to the marketer.\n\n>If a marketer doesn't analyze the results of their work, they are not a marketer.\n\n\n###  I need tags, how do I use them?\nIf you connect to our system and use UTM tags, you will have access to a summary report like this:\n\n![Graspil_App-2.jpg](https://cont.graspil.com/uploads/Graspil_App_2_233d6124b7.jpg)_In this screenshot, we can see 3 channels: Google, Facebook (FB) and Instagram (Inst)._\n\nWe can see how many users came, how many left, the bounce rate, and other information.\n\n83% 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.\n\n### Technical details\nTo pass a parameter to a bot, you need to create a link like this: `https://t.me/YourBotName?start=blogutm`\n\nTelegram 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.\n\n## Why multiple parameters?\nSometimes 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:\n\n1. **utm_source** - the name of the advertising platform (Google, Telegram, Facebook, ...)\n2. **utm_medium** - the type of advertising (cpc - contextual advertising, email - mailing, ...)\n3. **utm_campaign** - the campaign name (arbitrary: \"blogUtmArticle\", ...)\n4. Your own variations are also allowed.\n\n### How do we pass multiple parameters in a single start?\nWe 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 **\"&\"**.\n\nDoes it sound complicated? Below is a picture with an example.\n![UTM for telegram bot](https://cont.graspil.com/uploads/Graspil_Visual_Workspace_for_Innovation_2_3e1baa3c05.png)\n\n#### Does it look complicated?\nWe 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.\n\n#### Does it look scary?\nYou might say that such links look too cumbersome, and you would be right, but:\n\n1. 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`\n2. We are preparing an interesting feature that will also allow you to shorten such links.\n\n### How to get the value of the start parameter in the bot's code?\nWhen 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`.\n\n\n## How to transfer tags from the address bar to the bot?\nWhy 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](https://graspil.com/post/en_utm_from_site_to_bot).\n\n## In conclusion\nWe 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.\n","I'm talking about UTM tags. What's it? Why is that? Why these tags should be used by all bots and why they are more important for the bot than for the site. About how to work with them and why we made a link builder for the bot.","2024-12-22T16:56:45.033Z","2025-06-17T09:01:21.758Z","2025-06-17T09:01:21.828Z",{"id":93,"documentId":94,"name":95,"alternativeText":96,"caption":22,"width":97,"height":98,"formats":99,"hash":130,"ext":101,"mime":104,"size":131,"url":132,"previewUrl":22,"provider":63,"provider_metadata":22,"createdAt":133,"updatedAt":134,"publishedAt":135},1,"cn3nhv8vtxl7igfj2c7scj1c","Graspil__Visual_Workspace_for_Innovation.png","UTM for telegram bot",1032,298,{"large":100,"small":109,"medium":116,"thumbnail":123},{"ext":101,"url":102,"hash":103,"mime":104,"name":105,"path":22,"size":106,"width":33,"height":107,"sizeInBytes":108},".png","/uploads/large_Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a.png","large_Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a","image/png","large_Graspil__Visual_Workspace_for_Innovation.png",56.34,289,56335,{"ext":101,"url":110,"hash":111,"mime":104,"name":112,"path":22,"size":113,"width":41,"height":114,"sizeInBytes":115},"/uploads/small_Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a.png","small_Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a","small_Graspil__Visual_Workspace_for_Innovation.png",23.59,144,23592,{"ext":101,"url":117,"hash":118,"mime":104,"name":119,"path":22,"size":120,"width":49,"height":121,"sizeInBytes":122},"/uploads/medium_Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a.png","medium_Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a","medium_Graspil__Visual_Workspace_for_Innovation.png",38.88,217,38880,{"ext":101,"url":124,"hash":125,"mime":104,"name":126,"path":22,"size":127,"width":57,"height":128,"sizeInBytes":129},"/uploads/thumbnail_Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a.png","thumbnail_Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a","thumbnail_Graspil__Visual_Workspace_for_Innovation.png",8.88,71,8884,"Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a",8.39,"/uploads/Graspil_Visual_Workspace_for_Innovation_0d9c4ab90a.png","2024-12-22T19:22:25.326Z","2024-12-23T09:51:40.255Z","2024-12-22T19:22:25.328Z",[137,138],{"id":68,"documentId":69,"Name":70,"slug":71,"createdAt":72,"updatedAt":72,"publishedAt":73,"locale":16},{"id":75,"documentId":76,"Name":77,"slug":78,"createdAt":79,"updatedAt":80,"publishedAt":81,"locale":16},{"pagination":140},{"start":141,"limit":142,"total":143},0,3,2,1780154495258]