Skip to main content
There are two ways to migrate a self-hosted Meilisearch instance to Meilisearch Cloud:
Track 1: Export APITrack 2: Dumps
How it worksPushes data directly from your instance to Cloud over the networkCreates a file on disk that you upload when creating a Cloud project
Best forRunning instances with network access to CloudOffline transfers, backups, or version upgrades
File handlingNoneMust download dump file and upload during project creation

Requirements

  • A running Meilisearch instance
  • A command-line terminal
  • A Meilisearch Cloud account and project

The export API pushes your data directly from your self-hosted instance to a remote Meilisearch instance without creating any intermediate files.

1. Create a Meilisearch Cloud project

Navigate to Meilisearch Cloud and create a new project. Once it is ready, note down your project URL and API key from the project overview.

2. Run the export

On your self-hosted instance, send a POST /export request pointing to your Cloud project:
curl \
  -X POST 'MEILISEARCH_URL/export' \
  -H 'Content-Type: application/json' \
  --data-binary '{
    "url": "TARGET_INSTANCE_URL",
    "indexes": {
      "*": {
        "overrideSettings": true
      }
    }
  }'
Replace TARGET_INSTANCE_URL with your Cloud project URL and add your Cloud API key via the apiKey field or an Authorization header. Meilisearch returns a task object. Use the taskUid to monitor its progress.

3. Verify the migration

Once the task status is succeeded, open your Cloud project and run a few searches to confirm all data transferred correctly.
Meilisearch Cloud automatically generates a new master key during project creation. If you are using security keys, update your application to use the newly generated Meilisearch Cloud API keys.

Track 2: Dumps

Use this track if your self-hosted instance cannot reach Cloud directly, or if you prefer an offline file-based migration.

1. Export a dump from your self-hosted installation

A dump is a compressed file containing all your indexes, documents, and settings. Make sure your instance is running, then run:
curl \
  -X POST 'MEILISEARCH_URL/dumps'
Meilisearch will return a summarized task object and begin creating the dump. Use the returned object’s taskUid to monitor its progress. Once the task completes, find the dump file in your project’s dump directory (default: /dumps).
Instance configuration options and experimental features that can only be activated at launch are not included in dumps.Once you have successfully migrated your data to Meilisearch Cloud, use the project overview interface to reactivate available options. Not all instance options are supported in the Cloud.

2. Create a Meilisearch Cloud project and import the dump

Navigate to Meilisearch Cloud and log in. You can only import dumps into new projects. Click “Create a project” or “New project”:
The Meilisearch Cloud menu, featuring the 'New Project' button
Fill in your project name, choose a server location, and select your plan. Then click “Import .dump” and select the dump file you generated:
A modal window with three mandatory fields: 'Project name', 'Select a region', and 'Select a plan'. Further down, an optional field: 'Import .dump'
Meilisearch will start creating the project and importing your data. This may take a few moments depending on the size of your dataset.
Meilisearch Cloud automatically generates a new master key during project creation. If you are using security keys, update your application to use the newly generated Meilisearch Cloud API keys.

3. Verify the migration

Once your project is ready, click on it to open the project overview. Click “Search preview” in the top bar and run a few test searches to confirm all data was migrated successfully.
Congratulations, you have migrated to Meilisearch Cloud. If you encounter any problems, reach out to our support team on Discord.