Best way to deploy python telegram bot to Heroku! (Save money 💸 using webhooks)

Subscribe to my newsletter and never miss my upcoming articles


A simple telegram echo bot is first made with aiogram, that fetches updates using web-hook connection.


This bot can be easily deployed to Heroku cloud platform.

The following steps assume that you have Heroku CLI installed in your system.

  1. Clone the repo and move into the project directory.
git clone
cd webhook-aiogram-heroku
  1. Create a new Heroku app.
heroku create
  1. Set the Config Vars.
| Config Var | Description | | -- | -- | |HEROKU_APP_NAME | name of your Heroku app. You may set it manually or turn on Dyno Metadata feature which is currently in Heroku Labs.| | BOT_TOKEN | the token for your bot given by @BotFather after bot creation.|
heroku labs:enable runtime-dyno-metadata
heroku config:set BOT_TOKEN=<your token>
  1. Push the code to Heroku.
git push heroku main


To confirm your bot is working:

  • Run heroku ps which will show you details of your dyno.
=== web (Free): python (1)
web.1: up
  • Send a message to your bot, and your bot will echo it back to you.

The bot will go to sleep after 30 minutes of inactivity. So you save dyno hours in Heroku.

Generic badge  MIT license telegram-chat

No Comments Yet