Terraria remains one of the cheapest games on Steam to host a dedicated server for, and that's not a coincidence — its 2D engine, modest world file sizes, and low per-player resource cost mean even budget hardware handles a full house of players comfortably. The real decisions worth making up front are world size (which affects both save size and generation time far more than most players expect) and whether to run vanilla or TShock, the dominant community server mod that adds permissions, anti-grief tools, and plugin support vanilla simply doesn't have.

This guide covers installing the official TerrariaServer binary, the key serverconfig.txt options, TShock setup for anyone running a public or semi-public server, world-size trade-offs, and the boss-fight-related performance issues that occasionally show up even on modest hardware.

What Is a Dedicated Terraria Server?

It's the official headless server binary Re-Logic ships alongside the game client (via SteamCMD, app ID 105600, or bundled with any Terraria installation) that hosts a persistent world independent of any player's own client. Compared to the in-game "Host & Play" option:

  • Stays online continuously without requiring the hosting player to keep their game running
  • Uses noticeably fewer resources than nearly any other title in the survival/building genre, thanks to Terraria's 2D engine
  • Supports TShock, a widely-used community server mod adding permissions, region protection, and a plugin API vanilla lacks entirely
  • Lets you configure world difficulty, size, and event settings independent of any player's local save

System Requirements and Pricing

Terraria is genuinely one of the lightest titles in this entire hosting category — the numbers below reflect real headroom, not bare survival minimums.

Player CountRAMCPUStorageTypical Monthly Price
1-8 (small world)1-2 GB1-2 vCPU5-10 GB NVMe$5-$10
9-16 (medium/large world, TShock)2-4 GB2 vCPU10-20 GB NVMe$10-$18
16+ (large public server, plugins)4-6 GB2-4 vCPU20-30 GB NVMe$18-$30

Unlike most titles in this guide, world size (small/medium/large, chosen at world creation) affects save file size and generation time far more than it affects ongoing RAM use during play — the ongoing hosting cost difference between a small and large Terraria world is much smaller than the corresponding difference in, say, an ARK map.

Step-by-Step Setup

1. Install via SteamCMD

steamcmd +force_install_dir ./terraria +login anonymous +app_update 105600 validate +quit

2. Generate or Upload a World

Run TerrariaServer.exe (or the Linux equivalent script) interactively once to walk through world creation — choosing size (small/medium/large), difficulty (classic/expert/master/journey), and a seed. Alternatively, copy an existing .wld file from a player's local Terraria save folder if you want to continue a world already in progress.

3. Configure serverconfig.txt

This file lets you skip the interactive prompts and boot non-interactively, which is required for running as a background service:

KeyRecommended ValueNotes
worldpath to your .wld fileMust be an absolute or correctly relative path
port7777Default Terraria port; change if running multiple worlds on one box
maxplayersmatch your planTerraria handles high counts well on modest hardware, but don't exceed what you've tested
passwordset for private serversLeave blank only for fully open servers
motdwelcome messageShown to players on connect
autocreate1-3World size to auto-generate if the world file doesn't exist yet — useful for first-boot automation scripts
secure1Enables basic anti-cheat validation; recommended for public servers

Launch non-interactively with: ./TerrariaServer -config serverconfig.txt

4. Open Firewall Ports

Default port is 7777 (TCP). With UFW: sudo ufw allow 7777/tcp. If running TShock's REST API for external tools, also open its configured port (commonly 7878), restricted to trusted IPs.

5. Install TShock for Admin Tools and Plugins

For anything beyond a small private world, TShock is close to essential — it adds a permissions system, region protection (preventing griefing of builds), a ban/mute system, and a C#-based plugin API that a large ecosystem of community plugins targets. TShock ships its own server binary that wraps the vanilla server, so installation replaces (rather than supplements) the vanilla TerrariaServer launch step. Configure permissions groups (e.g., default, vip, admin) through TShock's config.json and assign players via in-game commands or the REST API.

6. Run as a Persistent Service

Wrap the launch command (vanilla or TShock) in a systemd unit with Restart=on-failure, running under a dedicated non-root user, so the world survives crashes and reboots without manual intervention.

7. Automate World Backups

Terraria auto-saves periodically during play, and the .wld file (plus its .bak backup Terraria itself maintains) is small enough that scheduling frequent external backups is cheap. Copy the world file to off-server storage daily at minimum, and before any server update.

Common Issues and Troubleshooting

World Generation Takes a Long Time

Large worlds can take several minutes to generate on first creation — this is normal and CPU-bound; it's a one-time cost, not an ongoing performance concern once the world exists.

Boss Fight Causes Temporary Lag

Large multiplayer boss fights (especially late-game bosses with many simultaneous projectiles) can cause brief tick delays even on otherwise comfortable hardware — this is expected and rarely worth over-provisioning hardware for, since it's a short-lived spike rather than a sustained load.

TShock Plugin Conflicts

Since TShock has a mature but decentralized plugin ecosystem, occasionally two plugins will both hook the same event in conflicting ways. Install and test one plugin at a time rather than several at once when diagnosing an issue.

Players Can't Connect Despite Correct Port

Double-check that the port is open as TCP (not UDP — Terraria differs from most other titles in this guide by using TCP) on both the OS firewall and any cloud-level network firewall.

World File Appears Corrupted After a Crash

Terraria maintains its own .bak backup automatically alongside the live .wld file — try restoring from the .bak first before resorting to an external backup, since it's often only a few minutes older than the corrupted file.

Buyer's Checklist

  • Terraria needs very little hardware — avoid overpaying for a plan sized for heavier titles in this genre
  • Confirm the host allows running TShock (a modified server binary) rather than only the stock vanilla executable
  • Check that TCP (not UDP) port forwarding/firewall rules are correctly supported
  • Ask whether the host provides automated world backups, or plan your own lightweight cron job given how small Terraria world files are
  • Verify SSH/SFTP access for editing serverconfig.txt and TShock's config.json directly
  • Confirm you can run multiple worlds on one box cheaply if you want separate vanilla and modded/TShock instances

Frequently Asked Questions

Do I need TShock to host a Terraria server?

No — the vanilla TerrariaServer binary works fine for small private groups. TShock becomes valuable once you want permissions, anti-grief protection, or a public server with strangers joining.

How much does world size affect server performance?

Less than you'd expect — world size mostly affects generation time and save file size, not ongoing RAM/CPU use during normal play, unlike voxel-based titles where map size directly scales server load.

What port does Terraria use, and is it TCP or UDP?

Port 7777 by default, using TCP — this is a common point of confusion since most other games in this guide (Palworld, Valheim, ARK) use UDP.

Can I run a Terraria server on the same box as other game servers?

Yes, easily — Terraria's tiny resource footprint makes it one of the most practical titles to co-locate alongside other game servers on a single modest VPS.

How do I update the server without losing my world?

Back up the .wld file first, then update the TerrariaServer binary via SteamCMD — the world file format is generally stable across minor patches, but always check patch notes before a major content update.

Terraria remains the easiest game on this list to host well — a genuinely small VPS handles a full server comfortably, and TShock closes the gap for anyone wanting real admin tools on a public world. WebsNP's VPS hosting plans are an ideal, budget-friendly fit for Terraria specifically, and our Linux dedicated servers are there if you want to co-locate several game servers on one box — contact us for help choosing. If your group also plays other Steam-distributed titles, our SteamCMD guide covers the shared install workflow, and our Project Zomboid dedicated server guide is a good next stop for another lightweight 2D survival title.