Disclosure: I'm Antonin Courtadon, founder of ACLClouds.
If you have a Discord bot that works on your laptop, you have probably asked the same question everyone asks: where do I run it so it stays online when my computer is off? "Free hosting" is the obvious answer, and it is a good one, but only if you understand what the word covers. Most free offers trade money for limits. Some limits are harmless for a small community bot. Others break a bot the first time it does something useful.
This article explains what to check before you choose a free host, how to keep a bot running 24/7 without pretending it runs forever for nothing, and how to recognise the moment a free plan stops being enough.
What "24/7" actually requires
A bot is a long-running program. It opens a connection to Discord's gateway and waits for events: a message, a member joining, a slash command. It stays online only as long as its process runs. On your own computer, that means keeping the machine on and the terminal open. On a hosted service, it means the provider starts the process, restarts it if it crashes, and gives it enough memory and CPU to do its job.
So 24/7 has three parts:
- The process runs. Someone or something starts it.
- The process survives. A crash, a full disk or a memory spike does not leave the bot offline until you notice.
- The hosting slot stays valid. Free plans often have an expiry date. If the slot ends, the bot stops, whatever its code looks like.
The third point is the one people forget. A bot that runs perfectly for a week can go silent on a Sunday because a free period ended and nobody renewed it.
What ACLClouds' free bot hosting gives you
Here are the figures for the free Discord bot plan on ACLClouds, as they stand at the time of writing. Check the bot page for the current values before you rely on them.
- 1 bot
- 315 MB RAM
- 0.25 vCPU
- 715 MB storage
- Uploads up to 100 MB
- 4 days free, renewable for free from the bot page. You can renew within 2 days before expiry, or once the bot has been suspended.
Each bot also gets its own SFTP access (port 2222, username bot- followed by 8 characters), a Discord token card, a logs and console view, and start-file auto-detection. The Node.js and Python images include ffmpeg, yt-dlp and deno, which matters if your bot plays audio or downloads media.
These numbers are small. 315 MB of RAM is enough for a moderation bot, a welcome bot, a ticket bot or a utility with a few commands. It is not enough for a bot that caches thousands of members, loads large machine-learning models, or transcodes video in a loop. If your bot grows, you will feel it in memory first.
What to check before choosing any free host
Use this list whatever provider you pick, including ours.
| What to check | Why it matters | ACLClouds free bot plan |
|---|---|---|
| Free period and renewal | A free slot that expires silently stops your bot | 4 days, renewable from the bot page (2 days before expiry or once suspended) |
| RAM | Node.js and Python bots grow in memory as caches fill | 315 MB |
| CPU | Long loops, image work and audio processing need CPU | 0.25 vCPU |
| Storage | Logs, downloads and cached files fill a small disk | 715 MB |
| Upload size | Your code, assets and dependencies are uploaded through the panel | Up to 100 MB |
| File access | You need to change files without redeploying everything | SFTP on port 2222, one account per bot |
| Logs | When the bot crashes at 3 a.m., logs are how you find out why | Logs and console per bot |
| Start file | A host that cannot find your entry point wastes an hour | Start-file auto-detection |
| Paid upgrade path | You should not have to migrate when the bot succeeds | Paid plans with 1 to 4 vCPU per bot |
If a provider does not tell you the figures in this table, ask before you deploy. An honest host states them on its pricing or plan page.
Keeping a free bot online without surprises
Free hosting works well when you treat renewal as a routine, not an emergency. Three habits help:
1. Put the expiry date in your calendar. When the bot starts, note the date it expires. Renew within the window the bot page allows. Renewing too early is not possible, so do not wait for the last hour.
2. Keep the bot lean. Stop caching whole member lists. Set limits on message history fetches. Do not store downloaded media on disk after it is sent. Small bots survive small plans.
3. Read the logs once a day for the first week. Most crashes repeat. A missing environment variable, a deprecated library call or a rate-limit loop shows up in the logs long before the bot goes silent.
When free is no longer enough
You should move to a paid plan, or to a VPS, when one of these happens:
- the bot is in more than a handful of servers and responds to commands all day;
- you need more RAM than 315 MB for stable operation;
- you run background jobs (queues, schedulers, a web dashboard) next to the bot;
- you cannot accept the renewal rhythm for a service that others depend on.
On ACLClouds, paid bot plans set the number of vCPU per bot: Starter 1, Pro 2, Advanced 3, Business 4. Check the current plan page for prices and what is included, because those change more often than the vCPU counts.
If you need a full server rather than a bot slot, our Linux VPS plans start at 8 GB of RAM and 2 vCPU. We cover them in the next articles of this series.
Limits of free hosting, stated plainly
- A free bot is not a service you can rely on without maintenance. It depends on renewal, and on staying within the plan limits.
- 315 MB of RAM and 0.25 vCPU are small. Plan your code for that, or pay for more.
- Storage is 715 MB. A bot that writes logs without rotation will fill it.
- Renewal is your responsibility. Nobody renews it for you.
For a hobby bot, a test bot or a bot for a small community, these limits are fine. For a bot that a business depends on, pick a plan with headroom, and keep a copy of your code outside the host so you can move it.
Frequently asked questions
Is free Discord bot hosting really free?
It can be, within its limits. ACLClouds' free bot plan gives you one bot with 315 MB of RAM and 0.25 vCPU for 4 days, and you can renew it for free from the bot page. Renewal is the step that keeps the bot running, so the plan is free but not unattended.
Can my bot run 24/7 on a free plan?
It runs as long as the free slot is valid and you renew it when the window opens. Continuous uptime without renewal requires a paid plan, so check the plan terms before you build something people depend on.
Why does my bot go offline after a few days?
The most common reason on a free plan is an expired slot that was not renewed. The second most common is a memory limit: a bot that grows past its RAM allowance is stopped. The logs tell you which one happened.
Do I need to enable the message content intent?
If your bot reads message text (prefix commands, for example), yes. You enable it in the Discord Developer Portal. Without it, message.content arrives empty. This is a Discord rule, not a hosting rule.
Can I move my bot to a paid plan later?
Yes. The free bot and the paid plans are on the same platform, so you can upgrade the bot rather than rebuild it. Keep your code in version control so the move is a configuration change, not a rewrite.
Next steps
Read the step-by-step guide to deploying a discord.py or discord.js bot on a free host, which follows this article. The free bot hosting page on ACLClouds is at https://aclclouds.com/en/ (English) and https://aclclouds.com/fr/ (French), and the plan details are shown when you open the bot section of the dashboard.
Antonin Courtadon, founder of ACLClouds · https://aclclouds.com
Top comments (0)