Use this guide to host your own Discord bot code, from creating an application to verifying its first response. Free and paid plans use the same deployment workflow after account and plan setup.
If you are installing a creator's managed bot, use marketplace buyer setup. To prepare a bot for other server owners, read creator setup and submission.
1. Create the bot in Discord
- Open the Discord developer portal and create an application.
- On the Bot tab, reset the token and copy it. Discord shows it only once.
- Turn on any privileged intents your code uses: Message Content, Server Members, or Presence.
- Under OAuth2, build an invite link with the
botandapplications.commandsscopes and only the permissions the bot needs, then add the bot to a test server.
Anyone with the token can run your bot. Never paste it into chat, a screenshot, or a file you commit.
2. Log in and claim a free server
Sign in with Discord, Google, GitHub, or email and password. Free hosting works with any sign-in method. For a paid bot, open Billing. To claim, you also need:
- a verified email address
- no other free server on the same account or email
Open the claim page and pick discord.js, discord.py, or JDA.
3. Add the token and start
- Open the new server in your bot dashboard.
- Paste the token into the Bot token variable (
BOT_TOKEN). - Press Start and watch the console.
The server starts with a small test bot for your library. When it prints this line, the token and the runtime both work:
BOT_READYYour own bot should print BOT_READY on its own line once it has connected. The dashboard waits for that line to mark the bot as started.
4. Upload your code
- Upload your files in the file manager or over SFTP. Leave out
node_modulesand virtualenv folders. - Include
package.jsonorrequirements.txtso dependencies install on start. - Make sure the entry file matches the Main file variable:
index.json Node andmain.pyon Python by default. - Restart from your bot dashboard.
You can deploy a public GitHub repository on Free instead of uploading. Private repository tokens require a paid plan.
5. Keep it running
A free server has to be renewed every 7 days, and you get email reminders before it expires. Free tier renewal has the full timeline. If the bot won't start or doesn't answer, go to troubleshooting.
Still stuck? Contact support