
A griefer flattened spawn, a plugin update broke the server, or the world no longer loads, and your Pterodactyl panel holds a backup from before it happened. Restore looks like one click, but does it remove files you added since, can you get back only the world, and why do the Nether and End sometimes look reset afterwards? This guide answers that from the source code of Pterodactyl Panel 1.15.2 and Wings 1.13.4, the stable releases on 30 October 2026. Our Minecraft hosting runs on the Pterodactyl panel, with backups you make yourself in the panel, so the steps apply there too.
Quick answer: Make a backup of the current state first and lock the backup you want back. Stop the server, open Backups, click the three dots next to the backup and choose Restore. With "Delete all files before restoring backup." unticked, the archive is unpacked over your files: files in the backup replace the current ones, and everything added since stays. Tick it to get the server exactly as it was. To restore only the world, choose Download, extract the .tar.gz on your computer, rename the current world folder in Files and upload the backup's world folder over SFTP. Before players join, check the Minecraft version, the plugins folder and server.properties.
What a Restore Does
A Pterodactyl backup is a .tar.gz archive of your server folder: the server jar, worlds, plugins, mods and configs. It skips the paths listed in .pteroignore in the server root, or what you typed in the Ignored Files & Directories field when you made it. It never contains databases from the Databases tab, which the panel creates on a separate database host, or your Startup settings, which the panel keeps.
When you confirm a restore, the panel marks the server as restoring, and Wings, the Pterodactyl program on the machine that runs your server, does three things:
- It sends the server's stop command and waits up to 2 minutes. If the server is still running after that, the restore ends before any file changes.
- If you ticked "Delete all files before restoring backup.", it empties the server folder.
- It unpacks the archive one file at a time. A file from the backup replaces the file with the same path; files the backup doesn't contain are left alone.
Until it finishes, the panel shows "Restoring from Backup" instead of your server, and you can't start the server, open files or create backups. Then the server pages come back by themselves, and the Activity tab logs "Completed restoration of the ... backup". The server stays offline until you start it.
| Delete all files unticked (default) | Delete all files ticked | |
|---|---|---|
| Files in the backup | Replace the current ones | Written to an empty folder |
| Files created after the backup | Stay, such as new plugin jars, world files and player files | Deleted |
| Files the backup ignored | Stay | Deleted |
| Use it for | Getting back files you deleted or broke | A full rollback |
Unticked, a rolled-back world can keep pieces of its newer state. For a full rollback, tick the option, after downloading anything you want to keep that isn't in the backup, such as folders listed in .pteroignore. Unticked also needs free disk space: Wings checks it for every file and stops at the first one that doesn't fit, leaving a half-restored server.
Step 1: Back Up the Current State
A restore can't be undone, so keep a copy of the server as it is now, even if it's broken. You may want a build or a config from it later.
- In Console, run
save-all flush. It saves all players and chunks at once, which freezes the server for a moment. - In Backups, click Create backup, give it a name such as
before-restoreand click Start backup. - Wait until the spinner in its row turns into an archive icon and a checksum appears under the name.
No Create backup button? A line such as "3 of 3 backups have been created for this server." means you're at your limit: delete an old backup or ask your host for a higher one. A limit of 0 shows "Backups cannot be created for this server because the backup limit is set to 0." By default the panel also allows only 2 new backups per 600 seconds; a third shows "Only 2 backups may be generated within a 600 second span of time."
Then open the three dots next to the backup you're going to restore and choose Lock. A scheduled backup task at the limit deletes the oldest backup that isn't locked, and that's often the one you need. The Lock option only shows if you're allowed to delete backups.
Run your own panel? Our guide to backing up a Pterodactyl panel, Wings and server files covers backup limits, S3 storage and schedules from the admin side.
Step 2: Restore the Whole Server
- In Console, click Stop and wait until the server is offline. Wings would stop it too, but a modded server that needs more than 2 minutes ends the restore before it starts. If stopping hangs, the button turns into Kill, which the panel warns "can lead to data corruption."
- In Backups, click the three dots next to the backup and choose Restore. A failed backup only has a delete button, and a backup that is still running has no menu yet.
- The dialog says: "Your server will be stopped. You will not be able to control the power state, access the file manager, or create additional backups until completed." Tick or leave "Delete all files before restoring backup." based on the table above, and click Restore.
- Wait until the panel shows your server again, then do the checks in step 4 before you click Start.
Subusers need the Restore permission, which the panel describes with a warning: "this allows the user to delete all of the server files in the process."
Rolling back a modpack update? Restore the whole server with the delete option ticked, so the mods, configs and world all come from the same moment. Our modpack update guide covers the update itself.
Step 3: Restore Only the World
Use this route when the world is broken but you want to keep newer plugins, configs or a newer Minecraft version.
First find the world folders. The level-name key in server.properties (default world) names the world folder. Minecraft 26.1, released on 24 March 2026, changed the layout inside it: the Overworld, Nether and End now sit in world/dimensions/minecraft/ as overworld, the_nether and the_end, and player files in world/players/data. Paper adopted the same layout in 26.1 and migrates older worlds. Before 26.1, vanilla keeps the Nether and End in world/DIM-1 and world/DIM1, while Paper uses separate world_nether and world_the_end folders. Restore every world folder the backup has: Paper's migration guide notes that without those folders, your Nether and End "will look like they have been reset".
- In Backups, open the three dots and choose Download. The file is named after the backup's ID and ends in
.tar.gz. - Extract it into a new folder on your computer. Windows includes
tar, which detects the compression by itself:
On Linux, run the same withmkdir restore tar -xf BACKUP_ID.tar.gz -C restoretar -xzf. - Stop the server. In Files, open the three dots next to
world, choose Rename and call itworld-old. Do the same forworld_netherandworld_the_endif you restore those. Keep the old folders until the restored world works; they count toward your disk space. - Upload the folders. The Upload button in Files takes files, not folders, up to the size your host set per file (100 MB by default), so use SFTP. Under Settings, SFTP Details shows the server address with its port (2022 by default) and your username: your panel username, a dot and the server ID. The password is your panel password. In FileZilla or WinSCP, upload
worldfromrestoreto the top level of the server, so the server findsworld/level.dat, notworld/world/level.dat. If your client can't connect, see our SFTP guide. - Start the server and check the world.
A small world also fits through the web panel as one file. In the restore folder on Windows, run tar -caf world.zip world, upload world.zip in Files, and choose Unarchive from its menu. It extracts into the folder you're viewing.
Step 4: Check Before Players Join
Version. A full restore brings back the server jar from the backup, so jar and world match. After a world-only restore, run the backup's Minecraft version or a newer one: in singleplayer, Minecraft warns that a world from a newer version may become corrupted. Startup settings aren't in the backup. On Pterodactyl's Paper egg, set the Minecraft Version variable to the restored version (Build Number can stay latest), because a reinstall downloads whatever they name. Minecraft 26.1 and newer need Java 25, which you pick under Docker Image in Startup if your host allows it.
Plugins and mods. Read the console during the first start. After a restore without the delete option, look in plugins for two versions of one plugin: a jar you updated after the backup stays next to the restored older one, and Paper logs Ambiguous plugin name with both file names. Delete the one you don't want and restart. Plugin data kept in a database from the Databases tab wasn't rolled back, so it can be newer than the world.
server.properties. Check that level-name matches the folder you restored: if no valid world exists at that path, the server generates a new one there. You don't have to fix the port: Pterodactyl's Paper egg writes server-ip, server-port and query.port into the file at every start (the console shows "Updating process configuration files..."). After a full restore, everything else, such as white-list and online-mode, has its value from the backup again, and so does the whitelist in whitelist.json.
Then join, check spawn and a recent build, and let players back in.
If It Still Fails
| Message or symptom | Cause | Fix |
|---|---|---|
This server is not currently in a state that allows for a backup to be restored. | The server is installing, suspended or already restoring | Wait, or ask your host |
This backup cannot be restored at this time: not completed or failed. | The backup is still running or failed | Wait for its size to appear, or pick another backup |
| No Restore in the menu | Your subuser lacks the Restore permission | Ask the server owner |
| The restore ended but no files changed | The server didn't stop within 2 minutes | Stop or Kill it yourself, then restore again |
| Only part of the files came back | The disk filled up during the restore | Free space, or restore with Delete all files ticked |
File world.zip is larger than the maximum file upload size of 100 MB. | The web upload limit | Upload over SFTP |
Error: Unable to access jarfile server.jar | The jar named in the Server Jar File variable is missing | Match the variable and the file name in Files |
Ambiguous plugin name | Two versions of one plugin in plugins | Delete the older jar |
| A new, empty world | level-name doesn't match, or the upload made world/world | Rename or move the folder |
| Nether and End look reset | Their folders weren't restored | Upload world_nether and world_the_end, or the missing dimension folder |
FAQ
Does restoring a backup delete files I added after it? Only when you tick "Delete all files before restoring backup." Without it, the archive is unpacked over your current files, and everything the backup doesn't contain stays.
Can I restore one player's inventory?
Yes, with the world-only route. Stop the server and upload only that player's file, named after their UUID: world/players/data/<uuid>.dat on Minecraft 26.1 and newer, world/playerdata/<uuid>.dat on older versions. The file stores the player's state, so everything in it, inventory included, goes back to the backup.
Are plugin databases included in a Pterodactyl backup?
No. A backup holds the server folder only, while databases from the Databases tab live on a separate database host, named s<server id>_<name>. A restore leaves them as they are, so ask your host how they back them up.
Can I restore a world from another host or from singleplayer?
Not through Backups, which only lists backups this server made. Upload the world folder over SFTP as in step 3 and make sure its name matches level-name.
Can I undo a restore? Only with a backup made before it, which is why step 1 comes first. Restore that backup the same way, with Delete all files ticked.
Sources
All opened on 30 October 2026:
- Pterodactyl releases: Panel, Wings
- Panel 1.15.2 source: BackupContextMenu.tsx, BackupContainer.tsx, CreateBackupButton.tsx, BackupRow.tsx, BackupController.php, BackupStatusController.php, DaemonBackupRepository.php, InitiateBackupService.php, config/backups.php, RunTaskJob.php, Permission.php, Server.php, activity.php, ConflictStateRenderer.tsx, ServerRouter.tsx, InstallListener.tsx, routes.ts, PowerButtons.tsx, SettingsContainer.tsx, StartupContainer.tsx, UploadButton.tsx, FileDropdownMenu.tsx, decompressFiles.ts, DatabaseManagementService.php, Paper egg
- Wings 1.13.4 source: router_server_backup.go, server/backup.go, backup_local.go, backup/backup.go, docker/power.go, filesystem.go, filesystem/errors.go, compress.go, router_download.go, router_server_files.go, config.go, server/power.go, server/errors.go
- Minecraft: Mojang version manifest, Minecraft Wiki: Java Edition 26.1, 26.1 Snapshot 6, Java Edition level format, server.properties, save commands, Data version, Player.dat format, whitelist.json
- Paper: Migrating to or from Paper, pull request 13736, ModernPluginLoadingStrategy.java, LegacyPluginLoadingStrategy.java
- OpenJDK launcher messages: JDK 21, JDK 25
- tar: tar on Windows, bsdtar(1), GNU tar(1)