When your server says 20 players online but feels like it is dragging through wet sand, you do not have a ping problem. You have a TPS problem. If you are searching for how to improve TPS on a Minecraft server, the fix is rarely one magic setting. It is usually a chain of smaller bottlenecks — bad hardware, too many entities, heavy plugins, aggressive farms, or a world that is constantly generating new chunks.

TPS, or ticks per second, is the pace of the server simulation. Minecraft is built around 20 TPS. When it drops, redstone desyncs, mobs stutter, crop growth slows down, and everything starts feeling delayed even if your internet is fine. That is why good TPS is not just a technical metric. It is the difference between a smooth SMP and a server people quietly stop joining. If you want the fundamentals first, our guide on why a server lags explains TPS and MSPT from the ground up.

How to improve TPS on a Minecraft server

Start by identifying what is actually eating your tick time. A lot of admins throw more RAM at the problem, then wonder why nothing changes. TPS issues are often CPU-bound, especially on modern Minecraft versions where world activity, AI, and plugin logic hit single-core performance hard.

If you are running Paper or Purpur, use their built-in profiling tools first. Timings and similar reports show whether the biggest hit is entities, tile entities, chunk loading, a specific plugin, or world generation. On Forge or Fabric, the exact tools differ, but the principle is the same: measure before changing five things at once. Blind optimization usually creates new problems.

Fix the hardware bottleneck first

For Minecraft, CPU matters more than people expect. Not just any CPU — strong single-core speed. A server with lots of RAM but weak cores can still choke the moment players spread out, start flying with Elytra, or load redstone-heavy bases.

Storage matters too. Fast NVMe helps chunk loading, startup times, backups, and overall responsiveness. It will not replace a good CPU, but slow disk performance can absolutely make a busy server feel worse, especially on larger worlds or modded setups. If your host oversells nodes or puts Minecraft on hardware that is not built for game workloads, no amount of config tuning will fully save it.

This is the part many admins avoid because it feels expensive, but sometimes the cleanest fix is moving to better infrastructure. If your TPS tanks during peak hours for no obvious in-game reason, the problem may be underneath the server software, not inside it.

Stop generating chunks on the fly

Chunk generation is one of the easiest ways to wreck TPS. New terrain is expensive, and players exploring in different directions multiply the cost fast. This gets even heavier on modded servers where worldgen includes extra structures, biomes, or dimensions.

The practical fix is simple: pre-generate your world. If your map is going to be a 10,000 by 10,000 border, generate that area before players go wild. The server does the heavy lifting once instead of in real time while everyone is online. Then set a world border so explorers cannot keep forcing fresh terrain forever.

This one change can make a massive difference on public SMPs and survival servers. It also makes performance more predictable, which is what admins actually want.

Measure, change one thing, measure again

The fastest way to waste an evening is editing ten config values at once. Pull a Paper timings or spark report, find the single biggest slice of tick time, change only that, and re-measure. Consistency beats chasing perfect lab numbers you can never reproduce live.

The biggest TPS killers inside the world

If your hardware is decent and TPS still drops, the world itself is usually the problem. Minecraft loves to punish servers that let entities and machines grow unchecked.

Entities are often the real enemy

Mob farms, villager halls, hopper arrays, item piles, and packed animal pens all add up. One player might build a perfectly legal farm that destroys tick performance for everyone else. The worst cases are not always huge, either. A badly designed hopper wall or an area full of pathfinding mobs can hit harder than people think.

Lowering entity limits is not about ruining gameplay. It is about preventing one chunk from becoming a server-wide tax. Adjust mob caps, item merge radius, hopper behavior, and despawn settings based on your server type. Purpur gives more control here than plain Paper, which is one reason many performance-focused admins prefer it.

Villagers deserve special attention. They are infamous for hurting TPS because of AI, workstations, pathfinding, and breeding setups. If one town with 200 villagers is tanking your server, that is not a hosting mystery. That is just villagers being villagers.

Redstone and hoppers need boundaries

Redstone contraptions are fun until they run 24/7 across multiple bases. Hoppers checking inventories every tick can be brutal at scale, especially in storage systems players never optimize. You do not need to ban automation, but you do need sane limits.

Use server software that lets you tune hopper transfer and check rates. Consider capping certain machine behaviors if your community runs especially technical builds. There is always a trade-off here: more vanilla accuracy usually means more load. If your goal is a stable multiplayer experience, small compromises are often worth it.

Plugins can help or hurt

Admins love installing plugins because each one solves a problem. The catch is that every plugin adds logic, event listeners, database calls, or scheduled tasks. Ten lightweight plugins can be fine. Two badly written ones can destroy performance.

If you want to know how to improve TPS on a Minecraft server without gutting features, audit your plugin stack. Remove duplicates. Replace old plugins that are no longer maintained. Check whether a plugin is doing expensive scans, logging too much, or constantly touching player data. Essentials, permissions, anti-cheat, economy, world tools, and cosmetic plugins are common places where overhead creeps in.

A smart plugin stack is not the biggest stack. It is the one that does exactly what your server needs and nothing extra.

Settings that actually matter

A lot of optimization guides flood you with random config edits. Some help. Some are outdated. Some just make your server feel worse.

Simulation distance and view distance are two of the biggest levers. Lowering them reduces how much world activity the server processes per player. On a private SMP with four friends, you can keep them higher. On a public server with unpredictable movement, dropping them to realistic values often protects TPS immediately. The right number depends on player count, version, and how heavy your world is — our server.properties guide covers both.

Java flags matter, but only if the rest of the setup makes sense. Modern garbage collection tuning can reduce stutters, but bad JVM flags are not usually the main cause of low TPS. The same goes for RAM allocation. Too little memory is a problem, but too much can create garbage collection issues too. More RAM is not always better — our guide to how much RAM a server needs helps you find the balance. It depends on whether you are running Vanilla, Paper, or a modpack that genuinely needs a larger heap.

Server software choice matters a lot. If you are still running plain Vanilla for a multiplayer server where performance matters, you are making life harder than it needs to be. Paper and Purpur exist for a reason. On the modded side, Forge and Fabric each behave differently depending on the pack and mod mix, so testing is part of the job.

Player behavior is part of performance

Sometimes the issue is not your config. It is your community.

If players are allowed to build giant lag machines, leave thousands of items on the ground, or keep massive mob farms loaded around the clock, your TPS will suffer no matter how clean your setup is. Good rules protect the server. Clear limits on alt accounts, AFK farms, chunk loaders, and extreme entity builds are not anti-fun. They are what keep the server playable.

This is especially true if you run a growing public server. Performance management becomes part moderation, part infrastructure, part technical tuning. You need all three.

When it is time to switch hosts

If you have optimized entities, reduced chunk generation, cleaned your plugins, tuned your distances, and TPS still collapses under normal load, your host may be the bottleneck. That is usually obvious when performance gets worse at random times, support cannot explain node contention, or your server struggles despite moderate player counts. Our companion guide on how to reduce server lag covers the world-side cleanup in more depth.

A Minecraft-focused host should make this easier, not harder. You want strong Ryzen or EPYC hardware, fast NVMe storage, backups, DDoS protection, and a control panel that does not turn every change into a chore. You also want support that understands why 19.2 TPS on a modded Forge server means something very different than 19.2 TPS on a small Paper SMP. That difference matters.

At Elysium, this is exactly the pain we built around — stable hardware, simple management, and support that actually speaks Minecraft instead of reading scripts.

The best TPS fix is usually not flashy. It is a tighter world border, fewer runaway entities, smarter plugins, better server software, and hardware that can keep up. Start with the biggest load source, change one thing at a time, and aim for consistency over perfect lab numbers. Players do not care how clever your config looks. They care that the server feels smooth when it matters.

Give your tick loop a faster CPU

TPS is a single-core problem, so it lives and dies on the CPU under your server. Elysium runs Minecraft on Ryzen + NVMe Gen4 with DDoS protection and automatic backups included. Compare plans on the order page, or move an existing world over on the migration page.