Measured by DevRunners on 22 October 2026: Paper 1.21.11 (build 132), Java 21, 81 runs. Full method and raw data below.
Overview
Minecraft hosting guides all say the same thing: lower your view distance to save RAM. None of the ones we read says how much. The calculators that put a number on it don't say where the number came from.
So we measured it. We ran a Paper 1.21 server on a pre-generated world, filled it with bot players, and recorded memory at six view distances, three times each. The short version: every chunk the server keeps loaded costs about 0.1 MB of memory, and the number of chunks depends far more on where your players stand than on how many there are.
Who this guide is for
Key Takeaways
- Each loaded chunk costs about 0.1 MB (≈100 KB) of server memory after garbage collection, on Paper 1.21.11.
- One player keeps (2 × (view distance + 2) + 1)² chunks loaded: 169 at view distance 4, 625 at 10, 1,369 at 16. The "+2" is a border Paper keeps loaded around every player.
- Going from view distance 10 to 16 adds about 76 MB per spread-out player. Ten players spread across the map at 16 used 1.7 GB of live memory; the same ten standing together used 379 MB.
- Players in the same place share chunks, so a group of ten costs about the same as one player.
- View distance barely changed tick time (MSPT) in our tests, because simulation distance was fixed at 4. It's mostly a memory setting.
- The live memory we measured isn't what you allocate: in an 8 GB heap, Java let memory use climb a median 1.5 GB above it between clean-ups. Leave headroom.
What view distance actually loads
- Chunks loaded
- 625
- Memory for those chunks
- ≈ 64 MB
- View distance square: 21 × 21 chunks
- Paper's border: 2 more chunks on every side (25 × 25)
- The player
Measured at view distance 10: one player on an otherwise empty server used 307 MB of live memory in total.
View distance is a radius in chunks (a chunk is a 16 × 16 block column of the world). The server keeps a square of chunks around each player, plus, on Paper, a two-chunk border outside it. That's why the count grows with the square of the setting: going from 8 to 16 takes one player from 441 chunks to 1,369, about three times as many.
Our runs matched that rule exactly for every single-player test and every spread-out group up to view distance 10. At 12 and 16, spread groups held 0.2–5% more than the rule predicts, most likely chunks near spawn that hadn't unloaded yet.
Simulation distance is the separate radius where the world actually ticks (mobs move, crops grow). We held it at 4 for every run, so this test isolates the cost of holding chunks.
The results
- 10 players, spread
- 5 players, spread
- 1 player
- 10 players, together
The "1 player" and "10 players, together" lines almost overlap: 378 and 379 MB at view distance 16.
| Scenario | View distance 4 | View distance 6 | View distance 8 | View distance 10 | View distance 12 | View distance 16 |
|---|---|---|---|---|---|---|
| 10 players, spread | 483 MB | 604 MB | 759 MB | 942 MB | 1160 MB | 1723 MB |
| 5 players, spread | 363 MB | 423 MB | 498 MB | 581 MB | 681 MB | 942 MB |
| 1 player | 269 MB | 279 MB | 292 MB | 307 MB | 327 MB | 378 MB |
| 10 players, together | 279 MB | 291 MB | 300 MB | 317 MB | 334 MB | 379 MB |
| View distance | Chunks | Live memory (MB) | MSPT (ms) |
|---|---|---|---|
| Empty server | |||
| 4 | 0 | 228 | 0.1 |
| 10 | 0 | 228 | 0.1 |
| 16 | 0 | 228 | 0.2 |
| 1 player | |||
| 4 | 169 | 269 | 3.7 |
| 6 | 289 | 279 | 1.9 |
| 8 | 441 | 292 | 3.7 |
| 10 | 625 | 307 | 3.4 |
| 12 | 841 | 327 | 3.0 |
| 16 | 1,369 | 378 | 1.9 |
| 5 players, spread | |||
| 4 | 845 | 363 | 7.4 |
| 6 | 1,445 | 423 | 7.0 |
| 8 | 2,205 | 498 | 6.0 |
| 10 | 3,125 | 581 | 8.7 |
| 12 | 4,214 | 681 | 7.8 |
| 16 | 6,998 | 942 | 6.8 |
| 10 players, spread | |||
| 4 | 1,690 | 483 | 11.6 |
| 6 | 2,890 | 604 | 11.1 |
| 8 | 4,410 | 759 | 10.9 |
| 10 | 6,250 | 942 | 11.2 |
| 12 | 8,454 | 1,160 | 13.9 |
| 16 | 14,401 | 1,723 | 12.9 |
| 10 players, together | |||
| 4 | 196 | 279 | 2.4 |
| 6 | 324 | 291 | 2.5 |
| 8 | 484 | 300 | 4.2 |
| 10 | 676 | 317 | 4.3 |
| 12 | 900 | 334 | 3.2 |
| 16 | 1,444 | 379 | 3.7 |
Live memory is the Java heap (the server's working memory) still in use after a forced full garbage collection, Java's clean-up of memory nothing uses any more. MSPT is the 1-minute median time per game tick from spark, Paper's built-in profiler; 50 ms is the limit before a server falls behind. The empty server was measured at view distance 4, 10 and 16 only, since with nobody online there is nothing for view distance to load.
A straight-line fit through all 81 runs gives this formula. Feed it the chunk count from the rule above (not the measured count, which runs a little high for spread groups at 12 and 16) and it predicts every run to within 30 MB, usually within about 10:
live memory ≈ 237 MB + 0.1016 MB × chunks + 7.3 MB × separate player groups
(R² 0.999, where 1 is a perfect fit.) The 237 MB is the server's starting cost, close to the 228 MB the empty server used. The 7.3 MB is a small fixed cost per player area: the player and the entities around them.

Taking in the whole view at distance 16: about 140 MB of server memory for one player. via GIPHY
Why grouped players are almost free
10 players spread across the map, view distance 16
1,723 MB
14,401 chunks loaded
The same 10 standing together, view distance 16
379 MB
1,444 chunks loaded
Ten players spread across the map at view distance 16 held 14,401 chunks and 1.7 GB. The same ten standing within a few blocks of each other held 1,444 chunks and 379 MB, about what one player alone used (378 MB). Chunks are loaded once per area, not once per player.
That changes how to size a server. A small group that builds one base together needs far less RAM than the same group exploring in different directions. If your friends scatter, size for each of them; if they stay together, size for roughly one.

Everyone in one room: a group standing together costs the server about as much as one player. via GIPHY
What it means for your server settings
Small group, one base
View distance 10–12
Players who stay together share their chunks, so a higher view distance costs about what it costs one player.
Ten players together used 317 MB at 10 and 334 MB at 12.
Group that explores separately
View distance 8–10
Every player who wanders off holds a full area of their own, so each step above 10 is paid once per player.
Ten spread players used 942 MB at 10 and 1,723 MB at 16.
Public or large server
View distance 6–8
Most players are apart most of the time, so memory grows with every one of them, and view distance is the setting that scales it.
By the formula, each spread player costs about 71 MB at 10 and 52 MB at 8. We measured up to ten players.
- View distance 10 (the default) costs about 64 MB per spread-out player in chunks. Dropping to 8 saves about 19 MB per player; raising to 12 adds about 22 MB, and 16 adds about 76 MB.
- On a server where players travel apart, view distance is the biggest RAM lever you have after player count.
- If tick lag is your problem rather than memory, look at simulation distance and entities first; view distance barely moved MSPT here.
To turn this into a RAM figure for your setup, the game server sizing calculator now uses this measurement for its View Distance slider.
What we didn't measure
- One server build. Paper 1.21.11 build 132. Vanilla, Fabric and Forge weren't measured, so don't assume these numbers carry over to them; mods can store extra data in every chunk, which we didn't test.
- A pre-generated world. Generating new terrain costs extra CPU and short-lived memory that isn't in these numbers.
- Idle players. Bots stood still in creative mode at noon. Exploring players load and generate chunks continuously, and survival at night has more mobs.
- Live memory, not allocation. Between clean-ups Java let memory use rise a median 1.5 GB above the live memory we report (range 56 MB to 3.3 GB in an 8 GB heap). Allocate headroom.
- Simulation distance 4. At the default of 10 the server ticks more chunks, so expect more mobs and higher MSPT than here. We didn't measure that setting, so we can't say by how much.
- One machine. Server and bots ran on the same Apple M3 Max, so the bots took CPU from the server: treat our MSPT figures as an upper bound for that hardware.
How we tested
We ran 81 tests on 22 October 2026, each one a fresh server start, and measured live memory, loaded chunks and tick time after the players had settled. The raw results are one row per run: download the data (CSV, 81 rows). You're free to reuse it with credit to DevRunners (CC BY 4.0).
Full method and settings
- Server
- Paper 1.21.11 build 132 (stable, published 11 May 2026), sha256 5ffef465eeeb5f2a3c23a24419d97c51afd7dbb4923ff42df9a3f58bba1ccfba
- Java
- OpenJDK 21.0.13, heap -Xms8G -Xmx8G
- JVM flags
- Aikar's flags as PaperMC lists them for 1.21.11: G1GC, AlwaysPreTouch, DisableExplicitGC, ParallelRefProcEnabled, PerfDisableSharedMem, G1NewSizePercent=30, G1MaxNewSizePercent=40, G1HeapRegionSize=8M, G1ReservePercent=20, G1HeapWastePercent=5, G1MixedGCCountTarget=4, InitiatingHeapOccupancyPercent=15, G1MixedGCLiveThresholdPercent=90, G1RSetUpdatingPauseTimePercent=5, SurvivorRatio=32, MaxTenuringThreshold=1, MaxGCPauseMillis=200
- World
- Seed 20261022, default world type, structures on. Pre-generated with Chunky to radius 1,650 blocks (43,681 chunks). Every run starts from a fresh copy of that world, at noon in clear weather.
- Settings
- simulation-distance 4 for every run; view-distance 4, 6, 8, 10, 12, 16
- Players
- mineflayer 4.39.0 bots asking for client view distance 32 (so the server's setting is always the limit), in creative mode, standing still. 1, 5 or 10 bots spread at least 640 blocks apart, or 10 bots within 3 blocks of each other at spawn. Baseline with no players at view distance 4, 10 and 16.
- Settle
- 180 seconds after the last bot is in place
- Tick time
- spark's 1-minute median tick duration, taken before the forced GC
- Memory
- A forced full GC (jcmd GC.class_histogram, which works despite DisableExplicitGC), then the used heap from jcmd GC.heap_info
- Runs
- 3 repeats per cell, cell order shuffled in each repeat, 81 runs, none failed
- Machine
- Apple M3 Max, 48 GB RAM; the bots ran on the same machine
Host it
Put your own numbers into the game server sizing calculator first: it adds plugins, the base server and headroom on top of the view-distance cost measured here. If your friends live in different countries, read where to host a server for friends in different countries before picking a datacentre.
Pick RAM for the players you actually have
Check your number in the calculator, then choose the plan that covers it with room to spare. Friends who scatter need RAM for each of them; a group that sticks together needs about as much as one.
Hostinger Game Panel
A private Minecraft, Valheim, Palworld, Rust or ARK server for your group
- Four plans, from Game Panel 1 (1 vCPU, 4 GB RAM) to Game Panel 8 (8 vCPU, 32 GB RAM), all on NVMe storage
- DDoS protection and free automatic weekly backups on every plan
The catch: Self-managed: support answers general questions rather than running the server, and the whole term is paid upfront
$6.99/mo on a 24-month term, renews at $11.99/mo
Game Panel 1, Black Friday price until 14 December 2026, excl. VAT, checked 20 October 2026
Frequently Asked Questions
Does view distance affect server RAM?
How much RAM does view distance 16 use?
How many chunks does a player load in Minecraft?
Do players in the same area use more RAM?
Does view distance cause lag?
What's the difference between view distance and simulation distance?
What view distance should I use for a small server?
How much RAM per player does a Minecraft server need?
Is this the same for vanilla and modded servers?
Can I download the data?
Final thoughts
View distance is a memory setting, and its cost is predictable: about 0.1 MB per chunk, with the chunk count set by how far apart your players are. Size for scattered players, or lower view distance on servers where people explore alone; a group that stays together can run higher view distances almost for free.



