Short answer
Paper replaces the server JAR and nothing else. Stop the server, back up the world, delete server.jar, put Paper's JAR in its place with the same name, start it, and run /version. The world, the plugins folder and server.properties are untouched.
Installing Paper is a file swap, which is why it is worth doing: nothing about your world changes, no player needs to download anything, and the switch back is the same operation in reverse. What does change is the software doing the ticking, and with it the amount of headroom you have.
This guide is the swap done properly, including the two mistakes that cost people their worlds: starting the new JAR while the old one is still running, and uploading the build for a different Minecraft version.
Before you start
- Java 21 installed
- File access to the server folder
- A backup of the world before you touch anything
1. Stop the server and take a backup
The server must not be running. Two Java processes writing to one world is how worlds get corrupted, and Paper and vanilla write the same files. Stop the server properly and wait for the process to exit.
Then back up. This is a one-line operation that changes files you depend on, and the backup is what makes the whole thing safe rather than probably safe.
server.jar the vanilla server
world/ your world
server.properties your settings
plugins/ plugins, if you have them2. Download the build that matches your Minecraft version
Paper's downloads are listed per Minecraft version, with a build number for each. Take the newest build for the version your server is on, not the newest build overall: Paper publishes builds for several Minecraft versions at once, and a build for a different version will not start.
The file is a JAR, as with the vanilla server. Save it and note which Minecraft version it is for, because that is the number you need for step three.
https://fill.papermc.io/v3/projects/paper
-> versions: 1.21.x, 1.20.x, ...
-> builds for that version, newest first
-> paper-<minecraft version>-<build>.jar- Pick the Minecraft version your server currently runs, from the console line that says "Starting minecraft server version".
- Take the newest build of that version.
- Download the JAR. Do not download the paperclip wrapper under a different name by accident; the file you want is the one named paper-<version>-<build>.jar.
3. Swap the JAR, keeping the name
Delete the old server.jar and put Paper's JAR in its place with the same filename. Keeping the name means every script, service unit and startup shortcut you already have keeps working without an edit.
Leave everything else alone: world/, server.properties, plugins/, ops.json and whitelist.json are all read by Paper exactly as vanilla wrote them.
server.jar Paper's build, same filename as before
world/ untouched
server.properties untouched, and still the settings file
plugins/ Paper loads these on first start
config/ new: Paper writes its own settings herejava -Xms6G -Xmx6G -XX:+UseG1GC -jar server.jar --nogui4. Start it and watch the first boot
The first Paper boot is slower than later ones: it generates its configuration files, its mappings and its plugin directory. The console shows Done (...)! when it is ready, and any error appears before that line.
Paper writes two configuration files on this first run, config/paper-global.yml and config/paper-world-defaults.yml. Leave them as they are for now: configuring Paper explains what each one is for.
[12:31:02 INFO]: Loading Minecraft 1.21.11 with Paper 1.21.11 build 132
[12:31:05 INFO]: Done (9.118s)! For help, type "help"5. Confirm it is Paper, then play
Run /version in game. It prints the server brand, so "Paper" in that output is the proof, not the absence of an error. /plugins should also exist now and list your plugins, and /tps confirms the tick loop is healthy.
Play a normal session before you change anything else. If something looks different, the first suspect is a plugin that behaved differently under Paper rather than anything Paper changed; the vanilla game rules are the same either way.
Then check the startup log for plugin warnings. A plugin built against APIs Paper has deprecated logs that at startup, and it is far easier to deal with now than the first time it misbehaves.
/version
/plugins
/tpsGood to know
- Keep the old JAR somewhere outside the server folder until you are satisfied. Rolling back is then a file copy rather than a re-download.
- Paper vs vanilla covers what you gain and give up, so the switch is a decision rather than a step.
- Purpur is the same procedure with a different JAR, if you want Purpur's optional gameplay features.
- Paper recommends 6 to 10 GB of memory whatever the player count. On a 3 GB free server it runs fine; that figure is about headroom, not a requirement.
Common questions
Will my world survive switching to Paper?
Yes. Paper reads and writes the vanilla world format, so the map, player data, inventories and villages are unchanged. Take a backup anyway, which is advice for every server change.
Do my players need to install anything?
No. Paper is server-side software; everyone joins with the normal Java Edition client on the matching version. That is why a Paper server needs no downloads and a Fabric server needs a mod install from every player.
Which Paper build should I download?
The newest build for the Minecraft version your server is running. Paper publishes builds for several Minecraft versions at once, and a build for the wrong version will not start.
Can I switch back to vanilla?
Any time. Stop the server, put the original JAR back, start it. Paper makes no permanent changes to the world, though its configuration files will sit in the folder unused.
Why does Paper use more memory than vanilla?
It holds more of the world in a form it can work with efficiently, and it is doing more bookkeeping for the plugin API. That is the trade for the headroom; the memory guide covers sizing it.
Sources
Official documentation this guide was checked against.
Rather not run this on your own machine? PufferHost gives every player a free Minecraft server with 3 GB of RAM and 10 slots. Create a free server.