When your Discord bot won’t start

Guide · September 2026

Most “offline bot” reports on shared hosting are configuration issues, not mysterious Discord outages. Work through the console output in order.

1. Read the console, not only the status light

The panel may show “running” while your process exited immediately after install. Open the live console and look for the first stack trace or Error: line after startup.

2. Confirm the entry file

Startup must point at the file that actually creates the client and calls login. A backup such as index_backup.js is irrelevant if MAIN_FILE is index.js. Nested git clone folders leave code under project/project/ while the process looks in the root—move files up or fix the path.

3. Token and intents

  • Missing or invalid token → login fails every time.
  • Privileged intents enabled in code but not in the Developer Portal → ready never fires or members never arrive.

4. Dependencies

Ensure package.json / requirements.txt lists what you import. A missing module on a clean install is a packaging problem, not a host outage. Pin major versions if a new release broke you overnight.

5. Crash loops

If the process starts, logs in, then dies on the first message, fix the exception. Restarting without reading the log only hides the bug. Common causes: undefined config keys, filesystem paths that exist on Windows but not in Linux containers, and unhandled promise rejections.

6. Resource limits

On free tiers, memory and disk are small. Large dependency trees, embedding models, or unbounded caches can OOM-kill the process. Simplify the bot or upgrade if you truly need more headroom.

Related