Configuring and managing your server
Minecraft Server Lag: Fix Players & Mobs Teleporting

Your players have fiber internet, full connection bars and 60 ms ping, yet mobs jump from block to block and other players seem to teleport every second. If that sounds familiar, the problem almost certainly isn't their connection. It's your server.
This is one of the most misdiagnosed issues in modded Minecraft. On Forge, Fabric and NeoForge modpacks, "teleporting" movement is usually a server-side performance problem: memory pressure, Java garbage-collection pauses, a memory leak in the modpack, or simply too many entities and chunks being ticked at once.
This guide explains exactly why it happens, how to tell network lag apart from server lag, and how to fix it, step by step, using tools like ModernFix, FerriteCore, Lithium/Canary and Spark.
Quick answer
Why do players and mobs teleport on a Minecraft server? They teleport when the server can't finish each game "tick" on time, so it sends movement updates in bursts instead of continuously. Good ping doesn't help, because the delay is happening inside the server, not on the network. The fix is to reduce the server's workload: install memory and tick optimization mods (FerriteCore, ModernFix, Lithium or Canary), lower your simulation distance, control entities and chunk loaders, give the server the right amount of RAM with tuned Java flags, and confirm the cause with the Spark profiler.
What "teleporting" lag actually looks like
This issue is easy to recognise once you know the pattern. Players typically report:
- Mobs that teleport instead of walking smoothly
- Other players "rubber-banding" or jumping forward in small steps
- Animals, villagers and monsters updating position in jolts
- Blocks taking a moment to break, chests opening late, commands reacting slowly
- Ping that looks fine (50 to 80 ms) with the occasional spike (e.g. 60 ms up to 160 ms)
- Average TPS that looks normal in monitoring graphs
- Lag that appears with no new mods installed, and gets worse the longer the server runs
That last point is the biggest clue. Lag that builds up over time is the signature of memory pressure, not a network fault.
Why good ping does not mean smooth gameplay
A Minecraft server processes the world in ticks. A healthy server runs at 20 ticks per second (TPS), one tick every 50 ms. In each tick it updates player movement, mob AI, redstone, block changes, entities, chunk loading and every modded system on top.
Ping only measures the network round-trip between a player and the datacentre. It says nothing about whether the server is finishing its ticks on time. When a tick takes too long, the server falls behind, batches up position updates, and then "flushes" them all at once. The client receives a burst of movement, and renders it as teleporting.
So a player can sit at a clean 60 ms ping and still watch mobs stutter, because the bottleneck is the server's tick loop, not the wire.
Network lag vs server lag: how to tell them apart
Before you change a single setting, work out which kind of lag you actually have. They have very different fingerprints.
| Signal | Network lag | Server-side lag |
|---|---|---|
| Who's affected | Only some players, often one region/ISP | Everyone, at the same time |
| Ping | High or spiky | Normal |
| Connection bars | Unstable, drops | Full |
| Symptom | Disconnects, packet loss | Mobs/players jump, slow blocks, late commands |
| TPS / MSPT | Stable | Drops or unstable |
| RAM over time | Normal | Climbs and never fully releases |
| Spark report | Shows nothing | Shows tick or memory pressure |
| Trend | Random | Worsens the longer the server is up |
Rule of thumb: if everyone lags simultaneously and RAM keeps climbing, it's the server. If only players from one country struggle while TPS stays perfect, run an MTR/traceroute, that points to a routing or packet-loss problem.
Why modded servers suffer more
A modded server is far heavier than vanilla. A single modpack can add hundreds of blocks, entities, dimensions, machines, structures and background processes. Even with 3 players online, it can lag if:
- The modpack is genuinely memory-hungry
- A mod has a memory leak
- Too many chunks are kept loaded (chunk loaders, quarries, item networks)
- Automation systems and farms run non-stop
- World generation is heavy (custom biomes, ores, structures)
- View distance or simulation distance is set too high
- One or more mods simply aren't optimised for server performance
A modded server with 3 players can easily be heavier than a vanilla server with 30. Player count matters, but it's rarely the whole story.
The real culprits behind teleporting
Memory leaks
A memory leak is when something keeps allocating RAM without ever releasing it: a buggy mod, a bad interaction between two mods, cached world data that never clears. The server starts fine, then after 30 minutes, two hours, or a full day, RAM creeps up and never comes back down. Eventually Java has to fight to reclaim memory, and those struggles surface as freezes and teleporting.
Garbage-collection (GC) pauses
Minecraft runs on Java, and Java reclaims unused memory through garbage collection. GC is completely normal, every server does it. The trouble starts under heavy memory pressure: when the heap fills up, Java pauses parts of the server to clean it. Those pauses are short, but they're long enough to stall movement processing. When the pause ends, the server catches up in a rush, and everything teleports. This is why a server can show a "fine" average TPS and still feel awful.
Entity and tick overload
Too many mobs, dropped items, villagers, or a sprawling automated base will blow out your MSPT (milliseconds per tick). Once MSPT climbs above 50 ms, the server physically cannot hold 20 TPS, and movement degrades for everyone.
Why your profiler might not show it
Plenty of owners run a profiler, see no single mod eating a full tick, and conclude "nothing's wrong." But movement lag isn't always one slow task. Memory pressure and GC pauses don't show up as a fat block in a tick chart, they show up as a pattern of small stalls. That's why you have to check both tick performance and memory behaviour. Spark (below) covers both.
How to fix it, step by step
1. Run the first checks before touching anything
Don't install mods blind. Confirm the basics first.
- Minecraft version. Note your exact version. Mojang dropped the old
1.x.xscheme in December 2025 and moved to ayear.drop.hotfixformat, so modern servers run versions like 1.21.x or the new game drops 26.1 (Tiny Takeover) and 26.2 (Chaos Cubed). Your optimization mods must match this exactly. - Mod loader. Forge, Fabric, NeoForge or Quilt. Every optimization mod is loader-specific.
- Java version. Current Minecraft (1.20.5+, 1.21.x and the 26.x drops) needs Java 21. The wrong Java version causes crashes and instability.
- RAM usage over time. Note it right after startup, at 15 minutes, at 1 hour, and again once lag starts. If it only climbs and never drops, you're looking at a leak or an oversized pack.
- Your
latest.log. Scan for the tell-tale lines:Can't keep up! Is the server overloaded?OutOfMemoryErrorGC overhead limit exceededTick took/Timed out
Just updated to Chaos Cubed (26.2)? Optimization mods often lag a few days behind a brand-new game drop. Always confirm a mod publishes a build for your exact version before adding it, because running a mismatched jar will crash the server on boot.
2. Install the core optimization mods
You don't need everything at once. Add one, restart, test for a day, then add the next. Start with the two memory mods, then add a tick mod.
FerriteCore (memory), by malte0811. It restructures how Minecraft stores blockstates and models, cutting RAM usage by roughly 40 to 50% on heavy packs. It's about the highest-impact, lowest-risk mod you can install, needs no configuration, and works on Fabric, Forge, NeoForge and Quilt. If you install nothing else, install this.
ModernFix (memory + load time + bug fixes), by embeddedt. An all-in-one mod that reduces memory use, speeds up startup, and patches a long list of common modded bugs. With some non-default options enabled it can let huge packs run in noticeably less RAM. Works across Forge, Fabric and NeoForge.
Lithium (Fabric) / Canary (Forge) (tick logic). These optimise mob AI, block ticking, world-gen and physics without changing gameplay, often delivering large MSPT improvements. This is the mod that directly attacks the "low TPS" side of teleporting.
ServerCore (optional, high player counts). Adds server-specific tuning like mob-breeding caps and async chunk handling for busy SMPs.
Installing any of them: stop the server, download the build for your exact version and loader, drop the .jar into /mods, restart, check the console for errors, then let it run and compare RAM and MSPT before vs after.
Tip: these mods are usually safe on the client too. For a private modded server, having players run the same compatible optimization mods improves their FPS and load times. Always check your pack doesn't already bundle them, though, because duplicates cause conflicts.
3. Tune view distance and simulation distance
These two settings, in server.properties, are the single biggest lever most owners never touch.
view-distance=6
simulation-distance=4- View distance controls how many chunks are sent to players (how far they can see).
- Simulation distance controls how far entities, mobs, farms and machines keep ticking around players.
On modded servers, simulation distance usually matters more, because the heavy work is automation and mob AI, not rendering. Dropping it from the default to 4 often clears teleporting on its own.
4. Audit entities, farms and machines
Entities are one of the most common lag sources. Hunt down:
- Mob and villager overcrowding
- Piles of dropped items
- Oversized farms and grinders
- Modded machines running 24/7
- Chunk loaders, item pipes and automation loops left running unattended
If the lag started right after a player built a new base, factory or mob farm, investigate that area first. A single badly designed setup can drag down the whole server.
5. Pre-generate the world
Live world generation is brutal on modded servers, especially packs with custom biomes, structures and dimensions. If lag spikes when players explore, fly, or enter new dimensions, that's world-gen. Pre-generating the map ahead of time (with a tool like Chunky) means the server isn't building terrain on the fly during gameplay. Generate a sensible border before opening a new world to players.
6. Allocate the right RAM, not the maximum
More RAM is not automatically better. Too little and the server runs out of memory; too much and garbage-collection cycles take longer, which can cause the very pauses you're trying to fix. The right approach:
- Start with the modpack's recommended RAM
- Watch actual usage with Spark
- Increase only if you genuinely hit the ceiling
- Pair the allocation with tuned Java flags (the widely used Aikar's flags for G1GC are a solid default) rather than running the JVM with defaults
Balanced RAM plus good GC flags beats brute-forcing 16 GB onto a 6 GB pack.
7. Confirm the cause with Spark
Spark is the best free profiler for Minecraft. Run it while the lag is happening:
/spark profiler start
… let it capture the lag …
/spark profiler stopThen check the key numbers:
/spark tps, watch MSPT (milliseconds per tick). Healthy servers stay under 50 ms. Above 50, you can't hold 20 TPS and players will feel it./spark heapsummary, inspect memory and spot abnormal heap growth or a likely leak./spark health, a quick overall read on TPS, MSPT and GC activity.
Spark generates a shareable report you can keep, compare across changes, or hand to your host's support team.
When it really is the network
Sometimes the wire genuinely is at fault. Suspect the network when all of these line up:
- Only players from one region or ISP are affected
- Ping spikes hard or players disconnect
- TPS and MSPT stay stable
- RAM usage is normal
- Spark shows nothing wrong
- Players report packet loss
In that case, run an MTR test from the affected players to your server IP to pinpoint where routing or packet loss occurs. But if everyone lags together while RAM climbs, stop blaming the network, it's the server.
Worked example
Three players connect from Spain to a server in France. Ping sits around 60 ms with occasional 160 ms spikes; all have fibre and full bars. Movement looks laggy, with mobs and players teleporting block to block.
At a glance, it looks like a routing problem. But after installing FerriteCore and ModernFix, and dropping simulation distance to 4, the teleporting disappears.
The real cause was never the network. It was memory pressure and GC pauses inside the modpack. This exact scenario plays out constantly on modded servers, which is precisely why ping-first diagnosis sends so many owners down the wrong path.
Stable modded server checklist
When players or mobs start teleporting, work through this in order:
- Are all players affected at once? (server) Or just one region? (network)
- Check ping and connection bars
- Check TPS and MSPT
- Track RAM usage over time
- Scan
latest.logfor overload / memory / GC warnings - Install FerriteCore (compatible build)
- Install ModernFix (compatible build)
- Add Lithium / Canary for tick performance
- Lower simulation distance (and view distance)
- Audit entities, farms, machines and chunk loaders
- Pre-generate the world
- Right-size RAM + apply tuned Java flags
- Run a Spark profile and re-test over several hours
And to keep it stable long-term: fast CPU cores, NVMe storage, sensible RAM, controlled chunk loaders, regular backups before any modpack change, and a profiler report whenever something feels off.
FAQ
Why are players teleporting on my Minecraft server? Because the server can't send movement updates smoothly. It happens when ticks run long due to server lag, memory pressure, GC pauses, entity overload or heavy world generation, not usually the player's connection.
Can players teleport even with good ping? Yes. Ping only measures network delay. A server can still stall internally from overloaded ticks, RAM pressure or Java garbage collection, and that's what produces teleporting.
Why do mobs move in a laggy, jumpy way? Unstable tick rate. Too many entities, big farms, modded machines, chunk loaders or memory issues push MSPT above 50 ms, so the server can't tick mobs smoothly.
Does ModernFix help with server lag? Yes. It reduces memory use, speeds up loading and fixes many modded bugs. It's especially effective on large Forge, Fabric and NeoForge packs.
Does FerriteCore reduce RAM usage? Yes. It cuts memory use by roughly 40 to 50% on heavy modpacks by optimising how Minecraft stores blockstates and models, with no configuration needed.
Should I install optimization mods on the client too? Usually yes. Running compatible versions on both server and client improves stability and FPS, just make sure your pack doesn't already include them.
How do I know if my server has a memory leak? If RAM keeps climbing over time and never drops back down, suspect a leak. Confirm it with /spark heapsummary and your server logs.
Can too much RAM cause lag? Yes. Over-allocating can lengthen garbage-collection cycles and create the pauses you're trying to avoid. Allocate the right amount and monitor real usage.
What's the best profiler for Minecraft server lag? Spark. It reports TPS, MSPT, memory, garbage collection and tick bottlenecks in one place.
When players or mobs teleport, the cause is rarely their internet. On modded Minecraft, it's almost always memory pressure, garbage-collection pauses, an unoptimised modpack or a memory leak, made worse by high simulation distance and runaway entities.
If your server has good ping but movement still stutters, start with RAM, TPS, MSPT and your logs. Install FerriteCore and ModernFix, add Lithium or Canary, drop your simulation distance, and confirm everything with Spark. A well-tuned server isn't about throwing more RAM at the problem, it's the right balance of CPU, memory, mod compatibility and configuration.
Running a modded pack and tired of fighting lag? MCHostingPro runs on high-clock CPUs and NVMe storage built for heavy modpacks, with the headroom and control you need to keep TPS at a steady 20.
Get Started with a
Minecraft Server
Looking to create your own minecraft server? It only takes a few minutes.