Send us a message and we'll get back to you shortly.
Cubite, one of the nine destinations below, publishes this page.
Short answer (October 21, 2026): Cubite compared what 9 platforms, including its own, import from LearnDash; learner progress and earned certificates are where most importers stop. Cubite's row: courses, lessons, quizzes, quiz attempts, users, enrollments, progress and groups move, certificates are re-issued, passwords are not. Cubite LMS replaces a LearnDash plugin stack for $290 a month or $2,900 a year, with native SCORM, xAPI and a built-in LRS. Cubite moves the whole LearnDash site, including learners, enrollments, progress, quiz attempts and groups, with earned certificates re-issued, as a migration it runs for you from that database export.
Each cell comes from the destination's own documentation, except the LifterLMS column, whose own post points to third-party tools (source 3); read on October 21, 2026, with the bracketed number pointing to the source in the list under the table. Yes means the vendor documents an import of that data; Partial means with a limit the cell names; No means the vendor says it does not move; Not documented means the vendor pages listed under the table do not say, which in practice means a rebuild by hand or a script. Tutor LMS's tool and LD to Lifter run on the same WordPress site as LearnDash, so user accounts and passwords stay as they are; Tutor's tool also deletes the LearnDash courses after it migrates them, so back up first. Masteriyo's importer is not in the table because it imports only into Masteriyo.
| Data type | Cubite LMS | Tutor LMS | LifterLMS | LearnWorlds | Thinkific | Kajabi | TalentLMS | Moodle | Open edX |
|---|---|---|---|---|---|---|---|---|---|
| Courses | Yes [1] | Yes [2] | Yes [3] | No, rebuilt by hand [4] | No, rebuilt by hand; video, audio and PDF files bulk-upload with the Content Uploader [5] | No, rebuilt by hand [6] | Partial: course records (title, code, description, category, duration, price) from a file; no content [7] | Partial: IMS Common Cartridge 1.0 or 1.1 packages; no LearnDash converter [8] | Partial: OLX course import from a .tar.gz; no LearnDash converter (one site wrote its own unreleased script through the course APIs) [9] |
| Lessons | Yes [1] | Yes [2] | Yes (topics become lessons) [3] | No, rebuilt by hand [4] | No, rebuilt by hand, as above [5] | No, rebuilt by hand [6] | Not documented [7] | Partial, as above [8] | Partial, as above [9] |
| Quizzes | Yes [1] | Yes [2] | Yes (one quiz per lesson) [3] | Not documented [4] | Not documented [5] | Not documented [6] | Not documented [7] | Not documented [8] | Partial, as above [9] |
| Quiz attempts | Yes [1] | Not documented [2] | Partial: scores and dates, not the answer-by-answer review [3] | Not documented [4] | Not documented [5] | Not documented [6] | Partial: one course score per learner [7] | Not documented [8] | Not documented [9] |
| Users | Yes [1] | Yes [2] | Yes (the same WordPress accounts) [3] | Yes: bulk import on Pro Trainer or higher [4] | Yes: import from a file [5] | Yes: contacts import, email required [6] | Yes: file import with login, first name, last name and email [7] | Yes: the Upload users tool [8] | Partial: no account import; staff can enroll an email address before the learner registers and activates an account [9] |
| Passwords | No: learners sign in from an invite or an emailed link [1] | Yes: same WordPress site, accounts untouched [2] | Yes: same WordPress site with LD to Lifter, accounts untouched [3] | Not documented [4] | Partial: a new password per row, or an Express Sign-in link [5] | Not documented [6] | Partial: a new password per row, else a random one [7] | Partial: a new password per row [8] | No: each learner registers an account and activates it by email [9] |
| Enrollments | Yes [1] | Yes [2] | Yes [3] | Yes: bulk enrollment on Learning Center or above [4] | Yes: import and enroll in one file [5] | Partial: grant an offer to a contact [6] | Yes: Usertocourses and Course columns [7] | Yes: optional on upload [8] | Yes: batch enrollment by email [9] |
| Progress | Yes [1] | Not documented [2] | Yes: finished lessons and topics [3] | Partial: marked by hand [4] | Partial: progress rates cannot be imported; a Completed_date marks a course 100 percent [5] | Not documented [6] | Partial: completion status, date and score [7] | Not documented [8] | Not documented [9] |
| Certificates | Yes, re-issued with the original completion date [1] | Partial: generated afresh if the certificate add-on is enabled [2] | Yes, where the LearnDash certificate was earned [3] | Not documented [4] | Not documented [5] | Not documented [6] | Not documented [7] | Not documented [8] | Not documented [9] |
| Groups | Yes [1] | Not documented [2] | No: LD to Lifter lists groups as not migrated [3] | Not documented [4] | Yes: Group_names on the migration spreadsheet, or Add to groups in Smart Importer; groups must exist first [5] | Not documented [6] | Yes: Group and Branch columns [7] | Not documented [8] | Not documented [9] |
| Orders | Not documented [1] | Yes: sales and order data, into WooCommerce, EDD or Native [2] | Not documented [3] | Partial: active subscribers moved onto Stripe plans as a paid service; no order history [4] | Not documented (subscriptions must be re-created) [5] | Not documented [6] | Not documented [7] | Not documented [8] | Not documented [9] |
To see which cells apply to your own site, count what it holds with the worksheet below, then get a free LearnDash migration assessment or book a call; the migration into Cubite LMS is included at no extra cost with every paid Cubite LMS plan.
Most LearnDash migrations do not go wrong because the new platform is missing a feature. They go wrong because of a quiet assumption: that "all the data comes with us." Some of it does. Some of it does not. And the parts that do not tend to be the parts learners and finance teams care about most, like who finished what, who has a valid certificate, and which subscriptions are active.
The reason is structural. LearnDash does not store your program in one neat place. It spreads it across WordPress core tables, LearnDash's own tables, and a handful of plugin-specific schemas (quizzing, membership, e-commerce, certificates, SCORM/H5P add-ons). There is no single clean export that captures all of it, so what survives a move depends entirely on the destination and the method.
That is why an honest inventory has to come before you pick a platform, sign a contract, or schedule a cutover. Once you can see, on one page, exactly how much data you have and what is at risk for each type, three things happen:
Fill this out before you talk to anyone. It takes about fifteen minutes and it will save you from the most expensive kind of migration mistake: the one you only discover after the old system is gone.
How to use it: print this page, or copy it into a doc or spreadsheet. Go row by row. Count what you actually have, read the pre-filled "What happens on migration" column, and write your own notes. Then run the scoring section at the bottom.
The pre-filled column below assumes one of three common destinations. Knowing which path you are on changes the answer for almost every row, so pick yours before you start.
The worksheet uses shorthand in the pre-filled column so you can see all three outcomes at a glance.
Fill in the second column with your real numbers. The third column is pre-filled from known data-fidelity facts so you do not have to guess. Use the last column to flag anything specific to your setup (custom plugins, weird quiz types, manual workarounds, anything a vendor would need to know).
| Asset | How many you have (fill in) | What happens on migration | Your notes |
|---|---|---|---|
| Courses | WP to WP: preserved. SaaS DIY: usually imported. Managed: scripted across. Low risk overall. | ||
| Lessons and topics | WP to WP: preserved. SaaS DIY: usually imported with the course. Managed: scripted across. Low risk, but check nested topic structure survives. | ||
| Quizzes | Single-choice and multiple-choice questions transfer cleanly on every path. Matrix sorting, sorting, fill-in-the-blank, and essay question types usually need rework or rebuild. Count these types separately. | ||
| Enrollments | WP to WP: preserved. SaaS DIY: usually imported. Managed: scripted across. Low risk, but verify group and cohort assignments come with them. | ||
| User accounts | WP to WP: preserved. SaaS DIY: usually imported (passwords often need a reset email). Managed: scripted across. Low to medium risk. | ||
| Progress and completion | THE FRAGILE ONE. WP to WP: usually preserved. SaaS DIY: in-progress completion is commonly dropped, so learners restart from zero. Managed: scripted across so learners resume where they left off. High risk on the DIY path. | ||
| Quiz attempt history | WP to WP: usually preserved. SaaS DIY: attempt history is commonly lost unless exported first. Managed: scripted across. High risk if you need historical scores for compliance or grading. | ||
| Issued certificates | WP to WP: usually preserved. SaaS DIY: issued certificates are commonly dropped; learners must re-earn them. Managed: scripted across so existing certificates stay valid. High risk if certificates are tied to compliance or CE credit. | ||
| SCORM packages | Path-dependent and add-on dependent. The package file can often be re-uploaded, but learner completion and scoring inside SCORM is commonly lost unless the destination has a native runtime. Needs scripting or a native SCORM engine. Medium to high risk. | ||
| H5P content | The interactive content often has to be re-exported and re-imported. Learner results from H5P are commonly lost unless explicitly migrated. Needs scripting or rework. Medium risk. | ||
| WooCommerce orders and subscriptions | E-commerce data lives in WooCommerce, not LearnDash. Order history and active subscriptions need a deliberate, separate migration and often scripting. Lost or broken unless exported first. High risk for revenue continuity. | ||
| MemberPress or RCP memberships | Membership levels, active status, and renewal dates live in the membership plugin. These need scripting to map onto the destination's access model. Lost unless exported first. High risk for paid-access continuity. | ||
| Custom fields and metadata | Anything custom (extra user fields, course metadata, plugin-specific data) is the most likely to silently disappear. Needs scripting and a manual mapping. Medium to high risk; inventory exactly what you rely on. |
Tip: for any row where you wrote a number greater than zero in a "needs scripting" or "lost unless exported first" line, add a note describing why it matters to you. "We need 2024 quiz scores for our auditor" is the kind of detail that decides whether a migration method is acceptable.
Now read back down your completed worksheet. The pattern in the "What happens on migration" column tells you how risky a self-serve move would be, and how much a managed migration is worth to you.
Count your rows.
Read your score.
The rule of thumb: the more rows that read "needs scripting" or "lost unless exported first," the more a managed migration is worth it. Each of those rows is data you would otherwise have to recreate by hand, ask learners to redo, or simply accept losing. A migration that scripts that data across is not a luxury at that point. It is the only version of the move that does not quietly destroy something you spent years building.
Everything in the "needs scripting" and "lost unless exported first" lines above exists because no clean standard export captures it. A managed migration solves that by going straight to the source: a vendor scripts the move directly against your LearnDash database, maps the fragile data, and carries it across instead of leaving it behind.
That is the model Cubite uses. LearnDash's WordPress export (WXR) carries course content only; learners, enrollments, progress, quiz scores and certificates live in the database, so a move to a hosted LMS needs a database export. Cubite moves the whole LearnDash site, including learners, enrollments, progress, quiz attempts and groups, with earned certificates re-issued, as a migration it runs for you from that database export. Cubite works from a copy, your live LearnDash site is not touched, and you review the record counts and sign off before launch. Start with a free LearnDash migration assessment.
And the platform you land on is fully managed, so you are not trading one plugin stack for another:
You now have, on one page, an honest picture of what is at risk in your move. That is the hard part, and you have done it.
If your scoring landed in the 3-or-more band, the most useful next step is simply to have someone look at your actual numbers. Bring this completed worksheet to a free migration assessment with Cubite. We will go row by row, tell you honestly what transfers cleanly and what needs scripting on your specific setup, and show you what your post-migration site would look like, so nothing on this worksheet gets lost in the move.
No pressure, no obligation. Worst case, you walk away with a second expert opinion on your own data inventory.
Tell us what your LearnDash site holds and we will map exactly what carries over before anything moves.
This worksheet is provided free by Cubite. Cubite is a fully managed LMS: one flat price, unlimited users and courses, hosting, maintenance, and support included, 0% transaction fees, native SCORM and xAPI, white-label, certificates and analytics. Cubite runs the migration for you from your LearnDash database export. The data-fidelity notes above reflect common outcomes across migration methods; your specific results depend on your plugins and configuration, which is exactly what an assessment confirms.
Looking to learn more about LearnDash Migration and LearnDash, LMS Migration, Cubite LMS? These related articles explore complementary topics, techniques, and strategies.
Move your entire LearnDash site to Cubite - courses, learners, progress, quiz scores and certificates - all verified, with nothing lost. Free and done for you.