Set up SkinsRestorer on your server
Install SkinsRestorer from the Plugins tab, grant the skin permission, and let players change their skin with /skin, with storage and fixes.
SkinsRestorer lets players on your server change their skin with one command, and keeps the skin showing when a server runs with online mode off. Run it on Paper or Purpur.
Checked against SkinsRestorer 15.12.6, which lists Paper, Purpur, Folia and Spigot for Minecraft 1.8 to 26.3 on its Modrinth page, October 2026.
What you need
- A Paper or Purpur server. Vanilla servers have no Plugins tab, so switch software in JAR Manager first (see Change your Minecraft version or mod loader).
- A permissions plugin such as LuckPerms, for the case where
/skinsays players have no permission. The plugin's docs say some platforms provide player permissions by default.
The plugin's docs say it works with both online and offline authentication, so you do not need to change Online mode to use it. Its own description says it is aimed at offline-mode servers.
Do not turn Online mode off just to install SkinsRestorer. The Config Editor warns that with it off, anyone can join under any name. If you must run offline, add a whitelist (see Whitelist players and set operators).
Install it
- Open the Plugins tab and leave the Modrinth button selected.
- Search for SkinsRestorer and click Install on the result by SRTeam.
- Restart from the Console tab (or click Start if the server is stopped), then type
plugins. SkinsRestorer should appear in the list. Use a restart rather than the/reloadcommand, which the plugin's docs say not to use for installs.
On the first start the plugin writes plugins/SkinsRestorer/config.yml. Keep the default settings for your first test.
Give players access
If /skin says a player has no permission, grant skinsrestorer.player to your default group. The plugin's docs say it covers ordinary skin changes, URLs, history, favourites, search, edit and the menu. With LuckPerms, the docs give this command:
/lp group default permission set skinsrestorer.player true
Staff get skinsrestorer.admin, which adds actions on other players. It leaves out reload, dump and purgeolddata in version 15.12.6, so grant skinsrestorer.admincommand.reload separately if staff need it.
Check it works
The docs suggest a five-step first check:
- Join the server with a Java client.
- Run
/skin set xknat. - Wait for the success message.
- Ask another player to look at your skin.
- Disconnect and join again. The skin should still be applied.
Your own client may briefly show the old skin, so judge from another player's view as well. To go back to your account's own skin, run /skin clear.
Commands players use
/skin set <skinName>or/skin <skinName>applies a skin by name, such as a Minecraft username./skin url "<url>"applies a skin from a web address. Keep the address inside quotation marks. The permission for it isskinsrestorer.command.set.url./skin randompicks a random skin./skin search <searchString>gives a search link and does not pick a result for you, so download the PNG you choose and upload it with/skin upload./skin menuor/skinsopens the skin menu./skin undo,/skin history,/skin updateand/skin favouritesare also available./skin updaterefreshes a skin copied from an account that has since changed it.
For staff, /sr reload reloads the config, /sr status checks the account services SkinsRestorer relies on and /sr createcustom <skinName> <skinInput> creates a custom skin.
Storage
File storage is the default, so SkinsRestorer needs no database. The docs also describe MySQL and PostgreSQL through the database.type setting. Leave it alone: this server has no database to connect to.
Common problems
- The command works but the skin does not change. The docs have a page for this: No visible skin. It separates problems with fetching the skin, applying the profile and client rendering.
- "No permission" on
/skin. The player's group is missingskinsrestorer.player. The docs also note that an explicit denial can override a grant. - Another plugin changes the result. The docs suggest a test server with only SkinsRestorer, then adding the suspected plugins one at a time until the problem returns.
- You need to report a bug. Read the plugin's debugging page first. A useful report includes the exact command, the full error, the versions you use and whether reconnecting changes the result. Running
/sr dumpin the Console uploads a diagnostic report and returns a link.
Was this guide helpful?
Related guides
Set up ChangeSkinX on your Minecraft server
Let players change their skin with /setskin: what ChangeSkinX needs, the ProtocolLib dependency, permissions, config keys and its age.
Get modpack features with Paper plugins
Match common modpack features such as claims, quests and vein mining to Paper plugins that need no client mods, and see what has no plugin equivalent.
Protect your builds with GriefPrevention
Install GriefPrevention so players claim land with a golden shovel, share it with /trust and stop griefing without admin work.
