In Development·Tumobird is actively shipping — features and pricing are preview-only
Documentation

Deploy your Discord bot in 5 minutes.

The canonical quickstart for Discord bot hosting on Tumobird. From empty repo to live bot in under five minutes, in any supported language.

Before you start

You need three things to deploy a Discord bot to Tumobird: a Discord bot token, a Git repository containing your bot's source code, and a Tumobird account (free 14-day trial). If you don't have a bot token yet, create one at discord.com/developers/applications — make a new application, add a Bot user, and copy the token. Keep that token secret; anyone with it can control your bot.

Step 1 — Create your Tumobird account

Visit tumobird.com and click Deploy Bot. Sign in with GitHub (preferred, enables auto-deploys) or with an email and password. Your 14-day Hobby-tier trial starts immediately — no credit card required.

Step 2 — Connect a Git repository

After sign-in, pick New Deployment and select the Git repository containing your Discord bot. Tumobird requests minimal permissions (read-only access to the selected repo, plus a webhook for auto-deploys). If your bot isn't on GitHub, you can paste a public Git URL — GitLab, Bitbucket, and self-hosted Gitea all work.

Tumobird auto-detects your runtime by scanning for the following files, in order of priority:

  • package.json → Node.js (or Bun if bun.lockb is present)
  • requirements.txt, pyproject.toml, or Pipfile → Python
  • go.mod → Go
  • pom.xml, build.gradle, or build.gradle.kts → JVM
  • Cargo.toml → Rust
  • deno.json → Deno

If your project uses a non-standard layout, drop a tumobird.toml in the repo root to override detection:

runtime = "python-3.11"
start   = "python -m mybot"
build   = "pip install -r requirements.txt"

Step 3 — Add your bot token and environment variables

In the deployment dashboard, click Environment. Add your bot token:

  • DISCORD_TOKEN = your bot token from the Developer Portal

Add any other secrets your bot needs — database URLs, API keys, webhook URLs. Every value is encrypted with AES-256-GCM at rest and only decrypted inside the container at runtime. Secrets are never written to build logs or exposed in the UI after the first save.

Step 4 — Deploy

Click Deploy. Tumobird pulls your code, installs dependencies, builds a container, and starts your Discord bot. The first build takes 15–60 seconds depending on dependency size; subsequent deploys are usually 8–15 seconds thanks to layer caching. You'll see real-time logs stream as the build runs.

Once the container reports healthy (your bot has connected to the Discord gateway and started receiving heartbeats), the deployment status flips to Running. Your bot is now live in whichever Discord servers it was invited to.

Step 5 — Enable auto-deploys (optional)

By default, pushing to the main branch of your linked repo triggers a new deployment. You can change this in Settings → Auto-Deploy:

  • Branch — any branch name
  • Path filter — only redeploy when files matching a glob change
  • Pre-deploy command — run linters, tests, or database migrations
  • Health check — require a custom HTTP endpoint to return 200 before marking deploy green

Viewing logs

Real-time log streams are available in the deployment dashboard under Logs. Stdout and stderr are captured. Logs are searchable for 7 days on Hobby, 30 days on Standard, and 90 days on Dedicated. You can also stream logs to your terminal:

tumobird logs --follow --deployment my-bot

Rolling back

Every deployment is retained as a rollback target. Open Deployments, find the version you want, and click Rollback. Rollback is near-instant (the previous container image is already cached on the host). You can also pin a specific deployment as the active version and disable auto-deploys while you investigate.

Custom domains and webhooks

Discord requires bots with interaction endpoints or OAuth callbacks to serve HTTPS on a known URL. Every Tumobird deployment gets a *.tumobird.app subdomain with automatic TLS via Let's Encrypt. On Standard and Dedicated plans you can add a custom domain: point your DNS at Tumobird's edge, add the domain in Settings → Domains, and we'll provision and auto-renew the certificate.

Troubleshooting a failed Discord bot deployment

Most first-deploy failures fall into four categories:

  • Missing DISCORD_TOKEN — set it in Environment, then redeploy.
  • Wrong start command — check your package.json start script or add a tumobird.toml start entry.
  • Intents mismatch — if your bot uses privileged intents (message content, members), enable them in the Discord Developer Portal before deploying.
  • Dependency build failure — the build log will show the exact pip/npm/cargo error. Most commonly a pinned version that doesn't exist on the runtime's package index.

If none of those match your error, email [email protected] with the deployment ID. Support response times are 24 hours on Hobby, 4 hours on Dedicated.

Ready to deploy?

Your first Discord bot is five minutes away. 14 days free.

Start deploying