> For the complete documentation index, see [llms.txt](https://docs.stylemixthemes.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.stylemixthemes.com/masterstudy-lms/lms-settings/lms-migration.md).

# LMS Migration

**LMS Migration** lets you move your courses, students, and progress from another LMS plugin into MasterStudy LMS without rebuilding anything by hand. MasterStudy creates a copy of your existing content, your original plugin and its data are never touched or removed.

{% hint style="success" %}

#### &#x20;**With LMS Migration, you can:**

* Automatically detect another LMS plugin installed on your site and get offered a migration
* See exactly which plugins are supported, and which of them are currently active
* See exactly what content each plugin can bring over before you start
* Choose which content types to import and skip the ones you do not need
* See how many items of each type will be imported
* See clearly what could not be migrated, and why
* Run the migration in the background and check on it later
* **Undo a migration if the result is not what you expected**
  {% endhint %}

### Before You Start

* [**Install and activate**](/masterstudy-lms/getting-started-1/plugin-installation.md) **MasterStudy LMS**, both the free and the Pro versions, on the site that already runs your current LMS plugin.
* **Keep the source plugin active.** Do not deactivate or update it until the migration has fully finished. MasterStudy reads data from it during the process.
* A **database backup** is recommended before starting, as with any large data operation.
* If you are not satisfied with the migration, you can reverse it and switch back to your old LMS. MasterStudy has [undo migration](#undoing-a-migration) feature.

### Automatic Detection

If MasterStudy detects a supported LMS plugin already installed on your site, it shows a notice at the top of the MasterStudy admin pages, letting you jump straight into migration.

<figure><img src="https://691205473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MDTL6WUldKvxQaP8jzz%2Fuploads%2FXwwiXKrwyAc5Js97dTZ1%2Fimage.png?alt=media&amp;token=4091c837-3381-4991-987e-6988390eb678" alt=""><figcaption></figcaption></figure>

The notice gives two options:

* **Start migration**, which opens the LMS Migration tab
* **Not now**, which dismisses the notice for the current session

Dismissing the notice does not disable migration. The feature stays available any time you need it.

## Example: How to Use LMS Migration?

We will see real example on migrating from Tutor LMS to MasterStudy LMS.

{% stepper %}
{% step %}

### Accessing LMS Migration

Whether or not the detection notice appeared, LMS Migration can always be opened from **WP Dashboard > MS LMS > Settings > LMS Migration:**

<figure><img src="https://691205473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MDTL6WUldKvxQaP8jzz%2Fuploads%2Ff01svCNOJVuYgbEqdEhy%2Fimage.png?alt=media&amp;token=3fa2e688-2e48-4897-afee-4bffd474573c" alt=""><figcaption></figcaption></figure>

LMS Migration currently supports importing from:

* Tutor LMS
* LearnDash
* LearnPress
* LifterLMS
* Masteriyo

Each plugin card in the LMS Migration tab shows an **Active** or **Not active** badge. Only an installed and active plugin can be selected as a source, since MasterStudy needs it running to read its data.

The content types available for import depend on what the source plugin itself supports. The tags on each plugin's card list exactly what will be offered:

<table><thead><tr><th width="197">Source plugin</th><th>Importable content</th></tr></thead><tbody><tr><td><strong>Tutor LMS</strong></td><td>Users, Courses, Enrollments, Assignments, Orders, Reviews, Announcements, Questions &#x26; Answers, Lesson Notes, Course Progress, Quiz Attempts, Google Meet, Wishlists</td></tr><tr><td><strong>LearnDash</strong></td><td>Users, Courses, Enrollments, Course Progress, Quiz Attempts, Orders, Assignments, Reviews, Coupons</td></tr><tr><td><strong>LearnPress</strong></td><td>Courses, Users, Enrollments, Orders, Reviews, Quiz Attempts, Course Progress</td></tr><tr><td><strong>LifterLMS</strong></td><td>Users, Courses, Enrollments, Orders, Reviews, Course Progress, Quiz Attempts, Assignments</td></tr><tr><td><strong>Masteriyo</strong></td><td>Users, Courses, Enrollments, Orders, Reviews, Announcements, Questions &#x26; Answers, Course Progress, Quiz Attempts, Wishlists</td></tr></tbody></table>
{% endstep %}

{% step %}
Choose the plugin you want to migrate from the list:

<figure><img src="https://691205473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MDTL6WUldKvxQaP8jzz%2Fuploads%2FfzMSqFdCNspMcAb5kJKH%2Fimage.png?alt=media&amp;token=af92a4e4-2d3e-444e-a0a6-cd4d08cf9d25" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Choosing What to Import

After selecting a source plugin, you move into the import setup step. Here MasterStudy shows:

* The **number of items** found for each content type (for example, how many courses or how many students will be imported)
* A **checkbox for every content type**, so you can leave anything out. For example, you can import courses, enrollments, and progress while leaving instructors or coupons out of the migration entirely
* A clear message listing anything that **cannot be migrated**, with the reason why. This can happen when the source plugin has a feature MasterStudy does not have an equivalent for, when a content type is not compatible between the two systems, or when a piece of data depends on something that was excluded from the import

<figure><img src="https://691205473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MDTL6WUldKvxQaP8jzz%2Fuploads%2FRbONNteUxOQgrit7yOGR%2Fimage.png?alt=media&amp;token=0c70bbb6-cad5-4094-b12a-ef9b27a236ae" alt=""><figcaption></figcaption></figure>

Select the necessary items to migrate:

<figure><img src="https://691205473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MDTL6WUldKvxQaP8jzz%2Fuploads%2F5DlrvY2I1qPcqQe4GFOQ%2Fimage.png?alt=media&amp;token=c9d2cdd1-d351-4843-9071-1d1a72b1b537" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Reviewing this list before starting the migration is the best way to know exactly what your site will look like afterward, with no surprises once the process finishes.
{% endhint %}
{% endstep %}

{% step %}
Type `confirm` and click on **Confirm & start** to start the migration:

<figure><img src="https://691205473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MDTL6WUldKvxQaP8jzz%2Fuploads%2FHtTb4uimV8j2cVeyuVhJ%2Fimage.png?alt=media&amp;token=b6592751-4115-475d-b6a7-f6ffa8205fd7" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Running the Migration

The migration runs in the background on the server, so you are not required to keep the browser tab open. You can safely close the tab or navigate away. To check progress later, just return to: **WP Dashboard > MS LMS > Settings > LMS Migration.**

The tab shows the current status of the migration, whether it is still running, has completed, or ran into an issue, so you always know where things stand.
{% endstep %}

{% step %}

### Finish

After the migration, system shows the summary. It also displays all the errors occured in the migration (if any) and provide detailed info as well as the clear reasons to them.&#x20;
{% endstep %}
{% endstepper %}

## Undoing a Migration

If the result of a migration is not what you expected, it can be reversed. Running the undo removes the content that was imported into MasterStudy LMS, while your original data in the source plugin remains exactly as it was, since that data was never modified in the first place.

You can do it in three steps:

1. Follow **WP Dashboard > MS LMS > Settings > LMS Migration** and find the Delete Migration button at the end of the page.
2. Read the warnings carefully and type `delete` to the input field.
3. Click on the **Delete Migration** button to remove migrated data and get your old LMS.

{% hint style="warning" %}
Undo removes the imported content from MasterStudy LMS. If you have already made changes to that content inside MasterStudy after the migration, those changes will be lost along with it.&#x20;
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.stylemixthemes.com/masterstudy-lms/lms-settings/lms-migration.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
