How to Migrate Mastodon to Pleroma Lightweight Server
🔍 WiseChecker

How to Migrate Mastodon to Pleroma Lightweight Server

You want to move your Mastodon account to a Pleroma server for its lower resource usage and faster performance. Mastodon and Pleroma both support the ActivityPub protocol, but their data formats differ. This article explains how to export your Mastodon data, import it into Pleroma, and transfer your followers.

Pleroma is a lightweight social networking server that uses less memory and CPU than Mastodon. It can run on low-cost hardware like a Raspberry Pi. The migration process involves exporting your Mastodon archive, setting up a Pleroma instance, and configuring your new account.

You will need access to your Mastodon account settings and administrative control over the target Pleroma server. This guide covers the complete workflow for a successful migration.

Key Takeaways: Migrating from Mastodon to Pleroma

  • Preferences > Export > Export data: Exports your Mastodon followers list, account archive, and blocked users as CSV or JSON files.
  • pleroma_ctl import: Pleroma command-line tool that imports the exported Mastodon data into your new Pleroma instance.
  • Preferences > Account > Move to a different account: Mastodon feature that sends a migration request to Pleroma, moving your followers automatically.

ADVERTISEMENT

Why Migrate from Mastodon to Pleroma

Mastodon is a robust microblogging platform, but it requires significant server resources. A single Mastodon instance can consume 2–4 GB of RAM and a full-time CPU core. Pleroma is written in Elixir and uses the Phoenix web framework, which reduces memory usage to around 200–500 MB for a comparable user load. This makes Pleroma ideal for self-hosted or small community servers.

Both platforms use ActivityPub for federation, so you can interact with Mastodon users after migration. However, Pleroma does not support all Mastodon API endpoints. Some third-party Mastodon apps may not work fully with Pleroma. The migration process transfers your followers, posts, and media, but direct messages and some metadata may not carry over.

What Gets Transferred

When you migrate from Mastodon to Pleroma, the following data is transferred:

  • Followers list — all accounts that follow you on Mastodon
  • Following list — accounts you follow on Mastodon
  • Blocked users and muted users
  • Domain blocks
  • Account archive — your posts, media attachments, and profile information

Direct messages, bookmarks, and lists are not transferred. You will need to recreate lists manually on Pleroma.

Steps to Migrate Mastodon to Pleroma

The migration requires two main phases: exporting data from Mastodon and importing it into Pleroma. You must have administrator access to the Pleroma server to run import commands. If you are using a hosted Pleroma instance, contact the administrator for assistance.

Export Your Mastodon Data

  1. Log in to your Mastodon account
    Open your Mastodon instance in a web browser and sign in with your credentials.
  2. Navigate to Preferences > Export
    Click the gear icon in the top right corner to open Preferences. Select “Export” from the left menu.
  3. Download the followers list
    Click the “Export” button next to “Followers list.” This downloads a CSV file containing all your followers’ account URLs.
  4. Download the following list
    Click “Export” next to “Following list.” This CSV file contains the accounts you follow.
  5. Download blocked and muted lists
    Click “Export” for “Blocked users” and “Muted users.” These CSV files are optional but recommended.
  6. Request your account archive
    Click “Request your archive” at the bottom of the Export page. Mastodon will prepare a ZIP file containing your posts, media, and profile data. This may take several minutes. You will receive a notification when the archive is ready.
  7. Download the archive
    Once the archive is ready, return to Preferences > Export and click the download link. Save the ZIP file to your computer.

Set Up Your Pleroma Instance

  1. Install Pleroma on your server
    Follow the official Pleroma installation guide for your operating system. Ensure you have Elixir, Erlang, and PostgreSQL installed.
  2. Create your administrator account
    Run the command pleroma_ctl user new yourusername your@email.com --admin. Replace yourusername with your desired handle and your@email.com with your email address.
  3. Verify the admin account
    Check the confirmation email sent to your address or use the CLI command pleroma_ctl user confirm yourusername to activate the account.
  4. Log in to your Pleroma instance
    Open your Pleroma server URL in a web browser and sign in with the admin credentials you just created.

Import Your Mastodon Data into Pleroma

  1. Upload the exported files to your server
    Use SCP, SFTP, or rsync to copy the CSV files and the archive ZIP to your Pleroma server. Place them in a directory accessible to the Pleroma user, such as /home/pleroma/import/.
  2. Import the followers list
    Run the command pleroma_ctl import followers /path/to/followers.csv. This adds all followers from the CSV to your Pleroma account.
  3. Import the following list
    Run pleroma_ctl import following /path/to/following.csv. This subscribes your Pleroma account to all the accounts you followed on Mastodon.
  4. Import blocked and muted lists
    Run pleroma_ctl import blocks /path/to/blocks.csv and pleroma_ctl import mutes /path/to/mutes.csv.
  5. Import the account archive
    Extract the ZIP archive you downloaded from Mastodon. Run pleroma_ctl import archive /path/to/extracted/archive/. This imports your posts, media, and profile information.
  6. Verify the import
    Open your Pleroma profile page and check that your posts, followers, and following list appear correctly. If any data is missing, re-run the relevant import command.

Redirect Your Mastodon Account to Pleroma

  1. Log in to your original Mastodon account
    Open your Mastodon instance and sign in with your old credentials.
  2. Navigate to Preferences > Account
    Click the gear icon and select “Account” from the left menu.
  3. Enable account migration
    Scroll to the “Move to a different account” section. Click “Configure.”
  4. Enter your new Pleroma account address
    Type your Pleroma account URL in the format @yourusername@yourpleromaserver.com. Mastodon will send a migration request to that address.
  5. Confirm the migration
    Check your Pleroma account for a migration confirmation notification. Accept the request to finalize the follower transfer. Your Mastodon profile will now redirect users to your Pleroma account.

ADVERTISEMENT

Common Issues During Mastodon to Pleroma Migration

Import Command Fails with File Not Found Error

The import commands require the exact file path. Use absolute paths such as /home/pleroma/import/followers.csv. Verify the file exists and the Pleroma user has read permissions. Run ls -l /path/to/file to check.

Followers Not Appearing After Import

The CSV file from Mastodon contains account URLs in the format @user@instance.com. Pleroma expects this format. If the file contains extra columns, edit the CSV to keep only the first column. Re-run the import command after fixing the file.

Archive Import Produces Duplicate Posts

Running the archive import command twice creates duplicate entries. Before re-importing, delete the existing posts from your Pleroma account using the web interface or a database query. The Pleroma API does not support bulk deletion, so use caution.

Migration Request Not Received on Pleroma

Mastodon sends the migration request via ActivityPub. Ensure your Pleroma instance is publicly accessible and federating properly. Check your Pleroma logs with journalctl -u pleroma -f to see incoming federation requests. If the request does not arrive, try initiating the migration again from Mastodon after 24 hours.

Mastodon vs Pleroma: Key Differences for Migration

Item Mastodon Pleroma
Server language Ruby on Rails Elixir with Phoenix
Average RAM usage per user 200–400 MB 50–100 MB
Supported import formats CSV, ActivityPub JSON CSV, Mastodon archive ZIP
Third-party app compatibility High — many apps support Mastodon API Partial — some apps may not work
Migration tool Built-in account move feature CLI import commands

After completing the migration, your Pleroma server will use less memory and respond faster than Mastodon. You can now interact with the same fediverse community using your new lightweight instance. To optimize performance further, consider enabling Pleroma’s Rich Media Preview feature and adjusting the Pleroma.Upload.Filter.ExifTool filter to strip metadata from images. These settings improve load times and privacy on your server.

ADVERTISEMENT