Gaming 10 min read

Minecraft View Distance vs Server RAM: We Measured It (Paper 1.21)

We ran 81 Paper 1.21 server tests to measure how much RAM view distance really costs: about 0.1 MB per loaded chunk, and why grouped players are nearly free.

October 24, 2026 Updated October 24, 2026
Minecraft toy figures of Steve, an Enderman and a zombie posed around block-shaped props on a white table
This article contains affiliate links. If you purchase through these links, we may earn a commission at no extra cost to you. Learn more

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

Anyone running or renting a Minecraft server who wants to set view distance from data instead of a guess, and anyone deciding how much RAM to pay for. For the other games, see how much RAM each game needs.

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

10
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.

One player's loaded area, to scale. Memory is chunks × 0.1016 MB, from our fit; players far apart each hold an area like this, players standing together share one.

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

Live memory by view distanceMedian heap after a full garbage collection, MB, 3 runs per point
  • 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.

Median live heap after GC in MB, by scenario and view distance
Scenario View distance 4 View distance 6 View distance 8 View distance 10 View distance 12 View distance 16
10 players, spread483 MB 604 MB 759 MB 942 MB 1160 MB 1723 MB
5 players, spread363 MB 423 MB 498 MB 581 MB 681 MB 942 MB
1 player269 MB 279 MB 292 MB 307 MB 327 MB 378 MB
10 players, together279 MB 291 MB 300 MB 317 MB 334 MB 379 MB
Every scenario, median of 3 runs
View distance Chunks Live memory (MB) MSPT (ms)
Empty server
402280.1
1002280.1
1602280.2
1 player
41692693.7
62892791.9
84412923.7
106253073.4
128413273.0
161,3693781.9
5 players, spread
48453637.4
61,4454237.0
82,2054986.0
103,1255818.7
124,2146817.8
166,9989426.8
10 players, spread
41,69048311.6
62,89060411.1
84,41075910.9
106,25094211.2
128,4541,16013.9
1614,4011,72312.9
10 players, together
41962792.4
63242912.5
84843004.2
106763174.3
129003343.2
161,4443793.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.

Minecraft's Steve leaning back in a wheat field, looking out at a sunset horizon

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.

A zombie, an Enderman, a creeper and other Minecraft mobs dancing together in one small room

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

See Game Panel plans

Frequently Asked Questions

Does view distance affect server RAM?
Yes. Each loaded chunk cost about 0.1 MB in our tests, and the chunk count grows with the square of view distance.
How much RAM does view distance 16 use?
About 139 MB of chunks per spread-out player (1,369 chunks), versus about 64 MB at view distance 10.
How many chunks does a player load in Minecraft?
On Paper, (2 × (view distance + 2) + 1)²: 625 at the default view distance of 10.
Do players in the same area use more RAM?
Barely. They share loaded chunks; ten players together used about the same memory as one.
Does view distance cause lag?
In our tests it barely changed tick time, with simulation distance fixed at 4. For lag, look at simulation distance and entities first; we didn't measure those.
What's the difference between view distance and simulation distance?
View distance is how far chunks are loaded and sent to players; simulation distance is how far the world actually ticks.
What view distance should I use for a small server?
For a group that plays together, 10–12 costs little. For players who explore apart, every step above 10 adds noticeably per player.
How much RAM per player does a Minecraft server need?
At view distance 10, about 64 MB of chunks plus about 7 MB per separate player area, on top of the server's base and your plugins; then headroom.
Is this the same for vanilla and modded servers?
We can't say: we measured Paper only. Vanilla, Fabric and Forge weren't tested, and mods can add data to every chunk.
Can I download the data?
Yes, the raw CSV of all 81 runs is linked in "How we tested".

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.

You Might Also Like