Open source · v2.1

Clone a Discord server
in minutes, not hours

Easy Server Cloner copies a server's whole structure — roles, channels, overwrites, emojis and settings — onto another server, or into a file you restore from later. Self-hosted, with your own bot token.

8slash commands
93automated tests
0data sent anywhere

How it works

Six steps from empty server to exact copy

Click through each step — or let it play. Every stage is something you trigger yourself, and nothing is ever deleted without asking first.

Invite the bot to both servers

It reads from the source and writes to the target, so it has to be on both — with Administrator on the target and its role at the top of the list.

Tip Drag the bot's role to the top of the target server's role list — Discord never lets a bot create roles above its own.

The bot reads a blueprint

Before writing anything the bot walks the source server and turns it into a blueprint: every role with its permission bits, every channel with its overrides, plus emojis and stickers.

The engine does not care whether a blueprint came from a live server or a saved file.

/preview Runs this step alone and shows you the numbers. Nothing is written, nothing is deleted.

Nothing happens without your yes

Cloning into an existing server means clearing it first. So the bot stops and shows you exactly what it is about to do: how many objects come in, how many channels and roles go out, and which options are on.

Safety If source and target are the same server, the bot refuses outright — that mistake would delete the original.

Watch it build, live

A progress message updates as it goes: current stage, how far along, how many objects exist so far. A cancel button sits underneath.

Self-pacing When Discord starts rate-limiting, the bot notices and slows down on its own, then speeds back up.

Save the whole server to a file

/backup gives you one file holding the whole blueprint. It restores onto any server the bot can reach.

Treat it like a key The file holds your full permission structure. Share it as carefully as you would the server itself.

Interrupted? Pick up where it stopped

Big servers take minutes, and minutes are long enough to drop a connection. Every object created is written to a local checkpoint the moment it exists.

/clone resume:True skips what already exists and carries on. It never wipes what it just built.

/status Lists running jobs and any unfinished run waiting to be resumed.
01 / 06
Why this one

Built to be boring in the right places

A tool that deletes channels for a living should be predictable. These are the decisions that make it safe to actually run.

Asks before it deletes

A confirmation dialog with real numbers, a 60-second timeout, and a hard refusal if source and target are the same server.

Survives interruptions

Checkpoints after every created object. A dropped connection costs you seconds, not the whole run.

Backups you own

One file, plain JSON, gzip-compressed when large. No account, no service, nothing stored anywhere but on your disk.

Correct role hierarchy

Roles are created top-down, because Discord inserts each new one at the bottom. Get that backwards and your whole ranking inverts.

Paces itself

Detects when Discord throttles, backs off automatically, then speeds back up once things calm down.

Your token stays yours

Configuration lives in a local .env, git-ignored by default. Self-hosted — the bot only ever talks to Discord.

Quick start

Four commands to running

Python 3.10 or newer. The setup page covers the Developer Portal steps and the one setting almost everyone forgets.

terminal
# Grab the project
$ git clone https://github.com/aquaxs1/Easy-Cloner.git
$ cd Easy-Cloner

# Install and configure
$ pip install -r requirements.txt
$ cp .env.example .env

# Paste your bot token into .env, then
$ python main.py

✓ Logged in as Easy Server Cloner#1234
✓ Active on 2 server(s).

Ready to clone your first server?

Free, open source, and self-hosted. Set it up once and it is yours — no subscription, no dashboard, no third party in the middle.