Hosting at home is free in the sense that a car is free once you own it. For four friends playing Terraria on a weekend, a spare machine on your desk is completely adequate and renting anything would be silly. For a public server with strangers on it, running from your own line means your home address handles the traffic, your household shares the outage when something goes wrong, and one annoyed player with a booter takes your whole connection down for an afternoon.
The honest answer is that the decision comes down to four questions, and three of them you can check in ten minutes: are you behind CGNAT, how much upload do you have, is the machine allowed to be on all the time, and are you putting your home IP address in front of people you do not know. If the answers are no, plenty, yes and no, host at home and stop reading. This post is about how to check, what it costs either way, and what the middle options are.
When hosting at home is genuinely the right answer#
Ignore anybody who tells you never to do this. Home hosting is the correct choice more often than the hosting industry likes to admit, and the cases are specific:
- A small private group who plan sessions. Four to six people who agree to play on Tuesday do not need a machine that is up on Wednesday. If you are always one of the players, the server only needs to exist when you are at the keyboard.
- A game with modest bandwidth and a low player cap. Terraria, Factorio, Valheim with a handful of people, Project Zomboid with four, a vanilla Minecraft world with five. These are small loads and a home line carries them comfortably.
- You already own the hardware and the electricity is cheap. A mini PC you bought for something else, or an old desktop that was going to be recycled.
- You want to learn. Running the thing yourself teaches you more about networking in a weekend than a year of using a panel. That is a real reason and it is worth something.
- You are on a private network anyway. If everyone joins over Tailscale, ZeroTier or a WireGuard mesh, there is no port forwarding, no public exposure and no CGNAT problem, and the case for renting mostly evaporates. More on this below.
The cases against are equally specific: a public server anybody can find, a group spread across time zones who play when you are asleep, more than about eight or ten concurrent players, anything you would be upset to lose, and anything where the people joining are not people you know.
The three things that stop it working#
Are you behind CGNAT?
Carrier-grade NAT means your ISP has put you behind a shared public address. Thousands of customers leave through the same IPv4 address and there is no way to forward a port to you, because the address is not yours. It is extremely common on mobile broadband, on newer fibre providers, and on any ISP that ran out of IPv4 space, which is all of them.
The check takes thirty seconds. Log into your router and find the WAN or Internet IP. Then look up your public address from a browser on the same connection. If the two match, you have a real public address and port forwarding will work. If the router's WAN address is different, and especially if it falls in one of these ranges, you are behind CGNAT:
| Range | What it is |
|---|---|
100.64.0.0 to 100.127.255.255 | Carrier-grade NAT, the definitive sign |
10.0.0.0 to 10.255.255.255 | Private, so the router is behind something |
172.16.0.0 to 172.31.255.255 | Private |
192.168.0.0 to 192.168.255.255 | Private |
If you are behind CGNAT your options are: ask the ISP for a public IPv4 address, which some provide free and some charge for; use IPv6 if both ends have it, which is fine for a private group and useless for the general public; tunnel out through a cheap server elsewhere; or use an overlay network so nobody needs a public address at all. Static IPs and why you might need one and IPv6 and game servers go through the trade-offs of the first two.
How much upload do you have?
Download speed is irrelevant here. A server sends the world to every player, so its upload is the constraint, and residential connections are built the other way round. A 500/50 line has 50 Mbit up, which is 6.25 MB/s. A 100/10 line has 1.25 MB/s. Old VDSL with 1 Mbit up has 128 KB/s and is genuinely too small for most games.
Per-player upstream, roughly, and measure your own rather than trusting a table:
| Game | Upstream per player | Notes |
|---|---|---|
| Minecraft Java | 5-25 KB/s steady | Large bursts while chunks stream to a moving player |
| Valheim | 50-150 KB/s | High for the player count; the cap is 10 |
| Source engine at 64 tick | 30-60 KB/s | Scales with tick rate, so 128 tick roughly doubles it |
| Terraria | 5-15 KB/s | Small |
| Project Zomboid | 20-60 KB/s | Rises sharply with zombie population |
| Factorio | 10-30 KB/s | Bandwidth is rarely the limit; UPS is |
Multiply by your realistic peak player count and add half again. Ten Valheim players at 100 KB/s is 1 MB/s, or 8 Mbit/s of sustained upload, which a 10 Mbit line cannot do while anybody else in the house is using the internet.
The subtler problem is bufferbloat. When your upload saturates, packets queue in your router and every connection in the house gains hundreds of milliseconds of latency - including the game. It shows up as everybody lagging the moment one person uploads a video or a backup runs. Smart queue management (fq_codel or cake, called SQM on OpenWrt and some consumer routers) fixes it and costs nothing. Run a bufferbloat test before and after. Latency, jitter and packet loss explains how to tell the three apart when players complain.
Can the machine be on all the time?
Not "will you leave it on" but "is it allowed to be". The realistic failures are dull and frequent: Windows Update restarts at 3am and the server does not come back; somebody needs the PC for something else; the power goes off for two minutes; your ISP does maintenance; a housemate unplugs it. None of these is dramatic and all of them mean the server is down and nobody can start it, because there is no remote power button.
If the server is on the machine you also play on, you have a second problem. The game server competes with your game for CPU, and the players' experience now depends on what you are doing. That is exactly the thing a dedicated server was supposed to fix - see what a dedicated game server is for why the separation matters.
Port forwarding, properly#
Assuming a real public address, the sequence is always the same and people skip step one.
- Give the server a fixed address on your LAN. Not by typing a static IP into the machine and hoping - use a DHCP reservation in the router, keyed to the machine's MAC address. A forward pointing at
192.168.1.42breaks the day the router hands that address to a phone. - Open the port on the machine's own firewall. Windows Defender Firewall blocks inbound by default; on Linux use
ufw allow 25565/tcpor the equivalent. This is the step that makes it work on the LAN but not from outside. - Add the forward in the router. External port, internal port, internal IP, and the right protocol. Getting UDP versus TCP wrong is the single most common failure: Minecraft Java is TCP, Valheim is UDP, Source games are UDP, and a few need both.
- Forward the query port too. Many games use a second port so the server browser can see them. A server that friends can join by IP but that never appears in any list is nearly always a missing query port - game server ports explained covers the pattern.
- Test from outside. Not from your own network. Many routers do not support hairpin NAT, so connecting to your own public address from inside the house fails even when everything is correct. Use mobile data with wifi off, or ask a friend.
Avoid two shortcuts. UPnP lets any program on your LAN open a port without asking you, which is convenient until something you did not install uses it. And "DMZ host" forwards every port to one machine, which turns a single exposed game port into a fully exposed computer. Forward the two ports you need and nothing else - firewall rules that matter is the short version of why.
Finally, residential IP addresses change. If yours does, everyone's saved server entry breaks. Dynamic DNS fixes it: a small client on the machine updates an A record whenever the address changes, and players use a name instead. Connecting a domain to a game server covers the record itself.
What it actually costs to run a box at home#
Electricity is the cost people forget, and it is easy to work out. Multiply the machine's average draw at the wall in watts by 0.72 to get kilowatt-hours per month, then multiply by your tariff.
| Machine | Typical draw | kWh/month | At 0.30 per kWh |
|---|---|---|---|
| Small ARM board | 5-8 W | 4-6 | 1.20-1.80 |
| Mini PC, low-power CPU | 8-15 W | 6-11 | 1.80-3.30 |
| Laptop left plugged in | 15-30 W | 11-22 | 3.30-6.60 |
| Old desktop, idle | 50-90 W | 36-65 | 10.80-19.50 |
| Gaming desktop under load | 150-300 W | 108-216 | 32-65 |
That table settles most arguments on its own. A low-power mini PC costs a couple of units of currency a month to run and beats a rented plan on pure cash, once you have bought it. An old tower running 24/7 costs more in electricity than a game server plan, and that is before the noise, the heat and the fan.
Add the rest of the ledger honestly: the hardware itself amortised over two or three years, a UPS if you care about power cuts, a second disk if you care about the world surviving a disk failure, and your own time. Then compare with the actual number - most game plans start between $3 and $9 a month, and how much a game server costs breaks down what drives that figure. Over two years, a 15 W mini PC you already own wins on money. A desktop you leave running does not.
The security problem you cannot configure away#
Everything above can be solved with effort. This one cannot, and it is the real reason public servers do not run from bedrooms.
Your home IP address becomes public. Every player who joins by IP knows where you live, in the sense that matters. On any game with a server browser it is published. A player you banned can point a booter at it for five euros, and your entire household - work calls, school, everyone's phone - goes offline until it stops. Your ISP cannot filter it for you and will not. A hosting provider sits behind upstream filtering that drops obvious volumetric floods; a residential line sits behind nothing. DDoS attacks on game servers explained is clear about what filtering can and cannot do, and the answer for a home line is "nothing".
A compromised game server is inside your network. Game servers run mods written by strangers, and a mod is code with full access to the machine. From there, everything else on your LAN - the NAS, the printer, the work laptop, the router's admin page - is reachable without crossing a firewall. On a rented server, a compromise costs you a server. At home it costs you the network.
If you host at home anyway, reduce the blast radius:
- Put the server on its own VLAN, or on the router's guest network if it isolates clients properly.
- Run it as an unprivileged user, in a container if you can be bothered, never as Administrator or root.
- Keep the machine patched, and keep the game and its mods patched too.
- Do not reuse a password from anything else in the server's RCON or admin config.
- Assume the machine is disposable and keep the world backed up somewhere else.
None of that fixes the IP address problem. Nothing does, short of not publishing it.
The middle ground: private networks and a small VDS#
There are two options between "expose my house" and "pay someone else", and both are underused.
An overlay network. Tailscale, ZeroTier or plain WireGuard put every player and the server on one private network. There is no port forwarding, no CGNAT problem, no public IP and nothing exposed to the internet at all. Players connect to a private address that only members of your network can reach. The cost is that everyone must install a client and join, which rules it out for a public server and is completely fine for a group of friends. For a small private world this is the best answer on the page and it is free.
A tunnel through a cheap server. If you are behind CGNAT but want a public address, a small machine elsewhere with a public IP can terminate a WireGuard tunnel from your home box and forward the game ports down it. It works, it is a good weekend project, and it moves the DDoS exposure to the rented machine instead of your house. The cost is latency: every packet now takes a detour, so choose an endpoint close to you or close to your players.
A VDS you administer yourself is the third door. You get root, a public address, filtering upstream of you, and no electricity bill - and you also get the whole job: updates, firewall, backups, process supervision. First hour on a new VDS is the minimum, UFW and running several game servers on one VDS are the rest. It is cheaper per server if you run several and more work than a panel if you run one. Choosing between a VDS and a game panel is the honest comparison.
What renting buys, and what it does not#
Be clear about both directions.
It buys a public address that is not yours, upstream filtering in front of it, a machine in a building with redundant power and a network engineer, hardware you do not have to replace, and a server that is up when you are asleep. On a panel it also buys the boring parts being done: the game installed at the right version, ports allocated, admin and RCON passwords generated, backups and scheduled restarts available without writing any cron, and a console you can reach from a phone.
It does not buy lower latency for you specifically. A server in a data centre is further from your house than your own desk. If everyone playing lives in your city and the host does not, home hosting can genuinely be faster for all of you - choosing where your server lives is about picking for the group rather than for yourself. It also does not buy immunity from attacks: filtering drops obvious volumetric floods, and attacks that look like real players are not filtered anywhere.
And renting does not remove the work that was always yours. Mods still break on update. Backups still need testing. A host that restores a backup for you is still restoring the backup you configured.
A decision you can make in five minutes#
- Check for CGNAT. If you have it and do not want a tunnel, rent or use an overlay network. Done.
- Work out your peak upload requirement. If it is more than about a third of your line's upload speed, rent.
- Decide whether strangers will join. If yes, do not put your home IP in front of them.
- Multiply the machine's watts by
0.72and by your tariff. Compare with the plan price for the game you want. - Ask whether anyone needs the server when you are not at home. If yes, it needs to live somewhere that is always on.
If you land on home hosting, do it properly: DHCP reservation, two forwarded ports, firewall on the machine, dynamic DNS, backups off the box, and a test from outside your network. If you land on renting, start on the smallest plan that fits the game - moving up later does not rebuild the server, so there is nothing to lose by starting small, and how to choose game server hosting is the checklist for picking who.
FAQ#
Can I run a game server on the PC I play on?
You can, and for a private group it usually works. The trade is that the server competes with your game for CPU, everyone else's experience depends on what you are doing, and the world is only available when your PC is on. Two separate machines, even a cheap one, removes all three problems.
How do I know if my ISP has put me behind CGNAT?
Compare the WAN address shown in your router with the public address a website reports. If they differ - especially if the router shows something starting 100.64 through 100.127 - you are behind CGNAT and no port forward will work.
Is a Raspberry Pi or mini PC enough for a game server?
For low-player-count, lightweight games, yes. A modern low-power mini PC runs a small Minecraft, Terraria or Factorio server comfortably and draws under 15 W. The limits are single-thread speed and RAM, both of which matter more than core count for most games.
My friends can join but the server does not appear in the browser.
Almost always the query port. Many games use a second port, often the game port plus one, purely so the server list can see them. Forward it with the right protocol and wait a few minutes for the list to refresh.
Will hosting at home get me in trouble with my ISP?
Many residential contracts prohibit running servers, and enforcement is rare until you generate real traffic or attract an attack. Read your contract. The practical risk is not a letter; it is that when an attack arrives, your ISP's only tool is to take you offline.
Is home hosting cheaper than renting?
For low-power hardware you already own, yes - a few units of currency a month in electricity against $3 to $9 for a plan. For an old desktop running 24/7, no: the electricity alone usually exceeds the plan price, before you count your time.




Комментарии
Полностью анонимно: без аккаунта, без почты, без cookie. Мы храним имя, которое вы ввели, текст и время - больше ничего. Количество ссылок ограничено, разметка не отображается.