Optimize Your Rust Server's Performance
Server performance affects every player's experience. Lag and low server FPS can cause rubber-banding, missed hits, and player churn. This guide covers the main causes of performance issues and the most effective ways to address them. If you are seeing high entity counts, consider pairing this guide with Wipe Server to start fresh.
What affects performance
Entities and colliders - every object in the world (structures, furnaces, vehicles, sleeping bags) adds to the entity count. There is no hard limit, but high entity counts reduce server FPS.
uMod/Oxide plugins - even lightweight plugins can destroy performance if they are poorly written. Hook-heavy or poorly timed plugins are the single most common cause of lag on modded servers.
Facepunch patches - some updates temporarily reduce performance until further optimisation. Running the latest server files helps once Facepunch addresses the issue.
Network - Host Havoc uses high-performance hardware with SSD/NVMe storage and DDoS-protected data centers. If performance issues only affect certain players, the problem is more likely on their end or in routing.
Assessing performance
Server FPS - poll it with the fps command via RCON. This does not affect player frame rates but indicates how hard the server is working.
Time warnings - enable global.timewarning 1 via RCON to log garbage collection warnings. Values over 2 seconds indicate a problem.
Performance Monitor plugin - the Performance Monitor uMod plugin provides real-time data on plugin hook times and memory usage. Use it to identify which plugins consume the most resources. Remove it once you have finished diagnosing as it adds its own overhead.
Optimisation steps
Audit and remove problematic plugins
Remove or replace poorly optimised plugins. More plugins always means more overhead, and this compounds with player count. Use Performance Monitor to identify the worst offenders.
Cap server FPS
Set fps.max to a value between 30 and 100 in your server config. Facepunch states that a cap of 30 FPS is imperceptible to players, so limiting FPS prevents the server from doing unnecessary work.
Disable AI movement
Set ai.think 0 to prevent animals from moving and fighting back. This has a noticeable impact on performance, particularly when many players are near animals simultaneously.
Increase the save interval
Raise server.saveinterval to reduce how frequently the world saves. This helps if you have a large save file that causes periodic stutters.
Tune upkeep and decay
Faster decay removes unused structures more quickly, reducing the total entity count over time.
Schedule daily restarts
For heavily modded servers, a daily restart can help clear memory leaks and accumulated overhead. See Automatic Restarts to set this up.