Host a discord.py bot
HostDC runs discord.py bots on Python 3.12 and 3.13, online 24/7, with a free plan that gives you a 256 MB RAM pool, 0.5 CPU and 512 MB storage. You upload the project, we install your requirements and keep the process alive.
Three steps
1. Bring your project. Drop a zip, paste a GitHub URL or write it in the browser editor. A minimal discord.py bot is two files:
requirements.txt
main.py
import os
import discord
from discord.ext import commands
bot = commands.Bot(command_prefix="!", intents=discord.Intents.default())
@bot.event
async def on_ready():
print(f"Logged in as {bot.user}")
@bot.command()
async def ping(ctx):
await ctx.send("pong")
bot.run(os.environ["DISCORD_TOKEN"])
2. Add your token. Put it in the Secrets tab, never in the code. We store it AES-256-GCM encrypted and inject it as DISCORD_TOKEN, and we scrub it from the console if it prints.
3. Press Deploy. We install from requirements.txt, start python main.py and stream the console live. The Logged in as line marks the bot as ready.
Limits you should know
The free plan gives a 256 MB RAM pool, 0.5 CPU and 512 MB storage, and needs reactivating weekly from your dashboard. Mini, Lite, Pro and Max are the paid plans: Lite is $1.69 a month with a 1 GB pool. Pro is $2.49 a month with a 2 GB pool. None of them need reactivating. See the pricing page for the whole table.
A bot can't play audio itself (there is no ffmpeg, which builds don't include), so discord.py[voice] will not help you here. Use a Lavalink client such as wavelink with the Lavalink server Pro and Max host for you, one Lite can add, or one you run elsewhere on Free and Mini.
Related
- Host a Python bot, the runtime behind discord.py
- Host a Pycord bot, the fork on the same runtime
- Guide: host a discord.py bot 24/7
Last updated 2026-09-06