Discord bot hosting

Host your Discord bot, deployed straight from GitHub

discord.js, discord.py or whatever you wrote it in. Point us at the repository, put the token in the environment, and the bot logs in and stays logged in. Every push redeploys it, the console shows what it printed, and your first bot is free.

  • First bot free, no card
  • Always on, no sleep timer
  • Nine ready-made bots, no code
  • Europe and North America
helper-botStarterOnline
Status
Online
Tier
Starter · 1 GB · 1 vCPU
Region
Europe West
Auto-deploy
main · 4f2a9c1
09:12:03Cloning github.com/you/helper-bot (main)
09:12:05Runtime: Node.js (package-lock.json found)
09:12:06npm ci: added 92 packages in 18 s
09:12:24> node index.js
09:12:26discord.js: logging in with DISCORD_TOKEN
09:12:27Ready. Logged in as HelperBot#4417
09:12:27Registered 12 slash commands
09:19:41/ticket open (nia) handled in 84 ms
 

No code needed

Eight bots that take a Discord bot token and at most one more field, plus a ninth whose settings live on a web page. Pick one in the panel and it runs. We build and maintain all nine in the open, so each card is a public repository you can read and fork when you want it to do something else.

There is no music template. Music bots run here on the Pro tier, with FFmpeg and Opus already in the runtime: what a music bot needs.

From repository to online

  1. 1

    Point us at the repository

    Public or private. The FadeHost GitHub App connects it in one click, or paste the URL and a read-only token. No repository yet? Pick a ready-made bot and fill in one field.

  2. 2

    Put the token in the environment

    The bot token and any other secrets go in the environment table, never in the code. We read the repository, install the dependencies, run your build if there is one and start the bot.

  3. 3

    Push to ship

    Every push to the branch redeploys the bot. Watch it log in on the live console, see which commit is running, and roll back to an earlier one when a push goes wrong.

The token never goes in the code

Paste it into the environment table on the bot's page, one KEY=value per line, values masked once they are saved.

DISCORD_TOKEN=the token from discord.com/developers
CLIENT_ID=your application id
GUILD_ID=the server you test in

Your code reads them the usual way: process.env.DISCORD_TOKEN in Node.js, os.environ["DISCORD_TOKEN"] in Python. Change a value and save, and the bot restarts with it.

What every bot gets

The panel around the bot, not a bare container. All of it is on the bot's own page.

Push to deploy

Connect the GitHub App once and every push to the branch reinstalls and restarts the bot. Private repositories work through the App or a read-only token.

Live console

Everything the bot prints lands on its page as it happens, from the install output to the line your command handler logged a second ago.

Crash doctor

When a bot dies in a loop we read the logs and name the cause in plain words, usually within a minute: an invalid token, a privileged intent you never turned on, a package that is not installed.

Environment variables

DISCORD_TOKEN and the rest live in a table in the panel with their values masked. Edit, save once, and the bot restarts with the new values.

Deploy history and rollback

Every deploy is listed with its commit. Roll back pins the bot to an older one and redeploys it; unpin when the fix is pushed.

Eight runtimes

Node.js, Python, Bun, Deno, Go, Java, PHP and Ruby. discord.js and discord.py are the common two; we pick the runtime from what is in the repository.

Voice built in

FFmpeg, libopus and libsodium are in the runtime, so a voice or music bot needs nothing installed by hand. Give it the Pro tier for the headroom transcoding wants.

Scheduled commands

Run a command inside the bot's container on a cron schedule: a nightly cleanup, a stats dump, a reminder job. Ten per bot, with the output kept.

Usage chart

CPU and memory over the last 24 hours on the bot's page, so a bot sitting at its memory limit is obvious before it starts restarting.

MySQL database

Paid bots get a MySQL database at no extra cost. One click creates it and the connection details land in the bot's environment.

Four regions, one private network

Europe West (France), Canada East (Montreal), USA West (Oregon) or Asia Pacific (Singapore). From there the bot reaches your databases and your game servers by name on your own private network.

A web address

Give the bot a name and it answers at https://name.fadehost.app over HTTPS: a dashboard, an OAuth2 redirect URL, a webhook receiver. Free addresses sleep when idle, paid ones stay on for $2 a month.

Dockerfile and Railpack builds

Paid bots can build into an image instead of running from source: your Dockerfile, or Railpack when there is none.

Backups

A daily backup for $1 a month per bot, kept seven days, restored in one click.

Always on, locked down

Non-root, hard memory and CPU limits, and an automatic restart if the bot falls over. No sleep timer, no coins, nothing to renew.

Pricing

Per bot, per month, on the same bill as your game servers and apps. Yearly is ten months for twelve.

Free
$0/mo
Starter
$2/mo
or $20/yr
Standard
$3/mo
or $30/yr
Pro
$6/mo
or $60/yr
RAM256 MB1 GB2 GB4 GB
CPU0.25 vCPU1 vCPU1 vCPU3 vCPU
Disk3 GB5 GB10 GB20 GB
Databasenot on this tierMySQL includedMySQL includedMySQL included
Web addressSleeps when idle+$2/mo always on+$2/mo always on+$2/mo always on
Daily backups, 7 days+$1/mo+$1/mo+$1/mo+$1/mo
Image buildsnot on this tierDockerfile, RailpackDockerfile, RailpackDockerfile, Railpack
Bots1 per verified accountAs many as you pay forAs many as you pay forAs many as you pay for
Start freeAdd StarterAdd StandardAdd Pro
  • Always on, no sleep timer, no coins, no daily renewals
  • GitHub auto-deploy, live console, crash doctor
  • Deploy history and rollback, scheduled commands, usage chart
  • Environment variables, private network, four regions

What a typical setup costs

Your first bot

Free tier

$0

256 MB and a quarter of a CPU, always on, no card. One free bot per verified account.

A ticket bot with a database

Starter

$2/mo

1 GB, 5 GB of disk and a MySQL database at no extra cost. $20 a year if you pay yearly.

A music bot

Pro

$6/mo

4 GB and 3 vCPU, with FFmpeg, libopus and libsodium already in the runtime.

Next to the usual suspects

What the smallest bot that never sleeps costs at the hosts people move from, from their pricing pages in September 2026.

HostSmallest always-on botPriceNote
FadeHost1 GB, always on$2/moFirst bot free; a bot needs no web address
Render0.5 GB, always on$7/moThe free tier sleeps after 15 minutes
Heroku0.5 GB, always on (Basic)$7/moEco is $5 and sleeps after 30 minutes; no free tier since 2022
RailwayUsage billed$5/mo + usageAbout $10 per GB-month and $20 per vCPU-month; the free plan is a $1 credit

Moving from one of them? Railway, Heroku and Glitch each have a page on what changes.

Already hosting a game server? Add bots to the same subscription in the plan builder. One account, one bill.

Frequently asked questions

Is the free Discord bot hosting actually free?
Yes. Every verified account gets one bot free, forever: 256 MB of RAM, a quarter of a CPU and 3 GB of disk, always on. No credit card, no coins to grind, no daily renewal clicks and no sleep timer. Paid tiers are $2, $3 and $6 a month, or $20, $30 and $60 a year.
Which languages and libraries can I use?
Node.js, Python, Bun, Deno, Go, Java, PHP and Ruby. Most bots here are discord.js or discord.py, and anything on those runtimes works the same way. We read the repository to pick the runtime and install with the package manager your lockfile names.
Does it work with pnpm or yarn projects?
Yes. A pnpm-lock.yaml, a yarn.lock, a bun lockfile or a packageManager pin all install with that exact package manager, so a preinstall hook such as only-allow pnpm is respected rather than fought. If package.json has no start script we find the entry file and run that instead of failing.
How does deploying from GitHub work?
Connect the FadeHost GitHub App in one click, pick the repository, and put DISCORD_TOKEN in the environment variables. We clone, install and start the bot, and every push to its branch redeploys it. The bot's page shows which commit is running.
Can I deploy from a private repository?
Yes. Install the GitHub App and pick the repository, or add a read-only access token when you create the bot. We fetch the code on every deploy and never store your credentials.
Can I host a bot without writing any code?
Yes. Eight ready-made bots deploy from the panel with a bot token and at most one more field: role, server status, ticket, welcome, moderation, giveaway, level and logging. A ninth, the bot with a dashboard, also wants the OAuth2 client id and secret of the same Discord application so people can sign in to its settings page. Each one is a public FadeHost repository you can read and fork.
Can I run a music bot?
Yes, on the Pro tier: $6 a month or $60 a year for 4 GB and 3 vCPU, which is the headroom audio transcoding needs. FFmpeg, libopus and libsodium are already in the runtime, so voice works without installing anything. The 256 MB free tier is sized for utility bots.
Can my bot have a website or dashboard?
Yes. Give the bot a name and it answers at https://name.fadehost.app over HTTPS: a dashboard, OAuth2 redirect URLs, a webhook receiver or a status page. The bot listens on the PORT variable and we route the name to it. On the free tier that address sleeps when nobody is using it and wakes on the next request; on a paid tier it stays on for $2 a month or $20 a year.
Can my bot use a database?
Yes. Paid bots include a MySQL database at no extra cost: one click creates it and the connection details are injected into the environment. It sits on your private network, where your other apps and your game servers can reach it too.
What happens when my bot crashes?
It restarts on its own, and the crash doctor reads the logs and explains the cause, most often an invalid token or a privileged intent that was never turned on. The live console keeps the output, so you can see what the bot said last.
What happens when a push breaks the bot?
Open the bot's deploy history, find the last commit that worked and roll back to it. The bot redeploys pinned to that commit while you fix the code; unpin when the fix is pushed.
What are the limits on each tier?
Free: 256 MB, 0.25 vCPU, 3 GB of disk, one bot. Starter, Standard and Pro: 1, 2 and 4 GB of RAM, 1, 1 and 3 vCPU, and 5, 10 and 20 GB of disk. Every bot has a hard memory and CPU limit, and the 24 hour usage chart on its page shows how close it is running.
Where does my bot run?
Europe West (France), Canada East (Montreal), USA West (Oregon) or Asia Pacific (Singapore). Pick the region closest to you and to the game servers or databases the bot talks to.
Can I run more than one bot?
One bot is free per verified account. Beyond that, add a bot tier for each one in the plan builder: $2, $3 or $6 a month depending on how much memory it needs, on the same subscription as your game servers.