Send us a message and we'll get back to you shortly.
Short answer (updated October 9, 2026): 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 LMS costs $290 a month or $2,900 a year. Start with the free LearnDash migration assessment.
Cubite sells Cubite LMS and publishes this guide. The export steps below work the same whichever platform you choose.
If you came here to get your courses out of LearnDash, here is the single most important thing to know before you click anything: the export button you are looking for does not export everything you think it does. WordPress's own exporter moves course content but drops your quizzes, your course-to-lesson links and every byte of learner progress. LearnDash's own Import/Export tool can include users, but its file is built to import into another LearnDash site. Getting learner data anywhere else takes separate, deliberate steps.
This guide is the honest version. We will walk through the actual native export mechanics step by step, show you exactly what each tool can and cannot carry, flag the two gotchas that silently corrupt a migration (the quiz caveat and the serialized post-ID trap), give you the non-negotiable backup rule, show you how to keep a record of grades and transcripts, and then explain the done-for-you path if you would rather not hand-assemble all of this yourself.
When you want to export LearnDash courses for a real platform move (not just a site-to-site clone), the difference between "I exported my courses" and "I exported my courses, quizzes, links, users, progress, and certificates" is the difference between a clean migration and a week of cleanup.
Before touching a single setting, know where each kind of data lives and which export carries it. LearnDash spreads "export" across three mechanisms (its own Import/Export, its quiz export and WordPress's export), and none of them gives a different platform the whole picture.
| Data | Where LearnDash keeps it | In WordPress's export (WXR)? | How to move it |
|---|---|---|---|
| Courses, lessons and topics | WordPress posts and their custom fields | Yes, but the course-to-lesson links are lost on import | LearnDash's Import/Export for another LearnDash site; for another platform, its importer or a migration |
| Quizzes and questions | Quiz and question posts, plus LearnDash's quiz tables | No: LearnDash says not to use it for quizzes | LearnDash's quiz XML export (LearnDash LMS > Quizzes > Actions > Import/Export) |
| Learner accounts | WordPress users and user meta | No: it lists only the authors of the exported posts | LearnDash's Import/Export (Users) for another LearnDash site; a database export for a hosted LMS |
| Enrollments, progress and completion | User meta (progress sits in _sfwd-course_progress) and LearnDash's activity table, wp_learndash_user_activity | No | A database export |
| Quiz attempts and scores | User meta (_sfwd-quizzes), plus Quiz Statistics for per-question answers where that option was on | No | A database export; keep LearnDash's Quiz Data report (CSV) as a record |
| Groups and group membership | Group records, plus user meta (learndash_group_users_ keys) for each member | Not the membership | LearnDash's Import/Export keeps group associations between LearnDash sites; a database export for a hosted LMS |
| Certificates | A certificate template, filled in with each learner's name, course title and completion date when they earn it | The template only | Re-issued by the new platform from completion data |
Two parts of that table cause almost every botched LearnDash export. The first is the WordPress export column: people assume WordPress Tools > Export is a safe shortcut, and it quietly drops quizzes and the course-to-lesson links. The second is the learner rows - accounts, enrollments, progress, quiz scores and certificates - which live in user meta and LearnDash's own tables rather than in the posts the WordPress export carries.
LearnDash's own Import/Export tool is the right choice when the destination is another LearnDash site: LearnDash recommends it for moving a whole site, and it can export users along with courses, quizzes and groups (LearnDash, Transferring LearnDash Courses). Its file is built to import into another LearnDash site, though, so a move to a different platform needs another route. Knowing that boundary up front is what keeps you out of trouble.
LearnDash shipped a built-in Import/Export tool in version 4.3, so first confirm you are on 4.3 or newer (wp-admin > Dashboard > Updates, or check the plugin version on the Plugins screen). On older versions this menu simply will not exist.
Here is the step-by-step:
That covers course structure, plus users if the destination is another LearnDash site. It does not cover your quizzes if you took the WordPress shortcut, and it does not move learners into a different platform. Both of those are the next two sections, and skipping them is where migrations break.
Here is the trap that catches people who try to be clever and use WordPress's own exporter instead of the LearnDash tool.
WordPress's built-in Tools > Export does NOT carry quizzes. LearnDash's own documentation is explicit: the WordPress Export and Import options under the Tools menu should be used for all custom post types except quizzes. (LearnDash Support, XML Quiz Import/Export) The same shortcut also drops your course-to-lesson links and all progress, because WordPress exports posts as flat content and knows nothing about LearnDash's relationship structure.
LearnDash quizzes have to be exported through their own dedicated path:
This produces a separate quiz file (XML) that you import on the destination the same way. If you forget this step, your new site will have perfectly structured courses with empty holes where every assessment used to be - and you usually do not notice until a learner complains.
The rule of thumb: the native LearnDash Import/Export tool keeps quizzes; the generic WordPress exporter does not. If you are using the WordPress Tools menu for anything LearnDash, you have already lost data.
The quiz file is a separate file. Treat it like one.
Add "export quizzes via LMS > Quizzes > Actions" as its own line item on your migration checklist, with its own downloaded file. The most common LearnDash export failure is a course that looks complete until someone tries to take an assessment.
This is the gotcha that does not throw an error, does not show a warning, and does not surface until a learner logs into the new site and finds their progress gone.
LearnDash embeds WordPress post IDs inside serialized completion data. A learner's progress is not stored as "completed Lesson: Intro to Safety." It is stored as a serialized PHP blob referencing the numeric post ID of that lesson. When you import courses into a new site, WordPress assigns new post IDs to those courses, lessons, and topics. If a single ID shifts, every serialized progress record that pointed at the old ID now points at nothing.
The result: the import "succeeds," the courses look right, and the progress is silently broken because the IDs underneath no longer line up.
There are only two safe ways through this:
For the second path, a tool such as Transfer by Honors WP exports your LearnDash data as a zipped JSON package and carries enrolled users, their course progress, certificates earned, group membership, quiz attempt data, and submitted assignments. (Honors WP, Transfer) Because it is built around LearnDash's structure, it handles the post-ID remapping instead of leaving you with orphaned serialized blobs.
One more constraint worth knowing: a user must be enrolled in a course or group for their data to export. Serialization-aware tools use the course/group relationship to find and move user data, so courses and users have to migrate together. (Honors WP, Transfer) An unenrolled user with historical progress can fall through the cracks if you move content and people separately.
| Migration concern | LearnDash Import/Export | Serialization-aware tool | Database export |
|---|---|---|---|
| Where it can import | Another LearnDash site | A WordPress LMS site with the same plugin installed, such as another LearnDash site or LifterLMS (LifterLMS's own migration guide uses Transfer to move LearnDash data into LifterLMS) | Any platform whose migration reads it |
| Learner data | Users are an export option; LearnDash recommends this tool for moving a site | Users, progress, certificates earned and quiz attempts | All of it: learner data lives in the database |
| Rewrites embedded post IDs | Not documented | Yes | Mapped by the migration to the new platform's records |
| Requires users enrolled to export their data | Not documented | Yes | No |
| Best use case | Moving a LearnDash site to a new site, server or LearnDash Cloud | A WordPress-to-WordPress move that must keep history | A move to a hosted LMS |
Compliance and credential programs need each learner's history, not just their current status. Before you change anything, download the two CSV reports LearnDash gives administrators and group leaders from its Reports menu (LearnDash, User Data):
LearnDash says these exports are for reporting purposes only, so keep them as your transcript of record rather than as an import file. Per-question answers sit in Quiz Statistics only for quizzes where that option was turned on, and the option is not retroactive. Certificates work differently again: a LearnDash certificate is a template that LearnDash fills with each learner's name, course title and completion date when they earn it (LearnDash, Create a Certificate), so the new platform re-issues certificates from completion data. In a move to Cubite LMS, quiz attempts and scores come across in the migration, and certificates are re-issued with the original completion date.
Every export above touches production data, and LearnDash's serialized progress format is unforgiving when something goes sideways. Two non-negotiables before you export anything:
And when you do go live with a new domain or URL structure, set up 301 redirects from your old LearnDash course URLs to the new ones. A 301 (permanent redirect) preserves the link equity and search rankings you have already earned, so the move does not cost you traffic. Dropping your old URLs without redirects is the most common self-inflicted SEO wound in any LMS migration.
Backup, staging, verify, then 301. In that order.
If you only remember one operational rule from this article: never run a LearnDash import for the first time against the site real learners are using. Prove it on a copy first.
Put together, a move off LearnDash that keeps learner data looks like this:
Appendix: the LearnDash migration checklist turns these steps into a printable, section-by-section runbook, and the what-transfers worksheet helps you count what your site holds before you start. The LearnDash exit matrix on that page shows what nine destinations, Cubite included, import from LearnDash, cell by cell with a dated source each.
None of that is impossible. It is, however, three different export mechanisms, a real risk of silent progress loss, and a verification burden that grows with every course and every enrolled learner. For a hobby site with five courses and no learner history worth keeping, the manual path is fine. For a course business or training program where progress, certificates, and enrollments are the product, the manual path is where weekends go to die.
If you are weighing a platform change rather than a same-site clone, it is worth seeing the full set of options before you commit. We mapped every realistic exit in the hub guide - compare all the ways off LearnDash - and walked the specific destination step by step in migrate from LearnDash to Cubite without losing data.
Everything above is the do-it-yourself path. Here is the done-for-you one.
If you are moving to Cubite LMS, Cubite runs the migration for you from a copy of your LearnDash database export, as one project instead of three separate exports you reconcile by hand. It moves:
Cubite works from a copy, so your live LearnDash site is not touched, and you review the record counts and sign off before launch. Passwords do not move: migrated learners sign in from an invite or an emailed sign-in link.
In other words: the outcomes the manual route is chasing - quizzes, course links, progress and certificates - without you personally stitching together three exporters and hoping the serialized IDs survive.
See your actual migration scoped in 30 minutes.
Tell us your LearnDash setup - course count, learner count, whether progress and certificates need to come across - and we will show you exactly what moves and what cutover looks like. No deck, no obligation.
Tell us what your LearnDash site holds and we will map exactly what carries over before anything moves.
Cubite LMS is a fully managed platform at $290 a month or $2,900 a year: unlimited users and courses, with hosting, maintenance, and support bundled in, 0% transaction fees, native SCORM and xAPI, white-label branding, programmable certificates and built-in analytics. SSO with Google, GitHub or Facebook sign-in is included at $290; SAML SSO and SCIM are Enterprise. It is built for exactly the operators who feel the most pain in a manual export - the ones whose progress and certificates are the value contract with their learners.
The 60-second version:
If your courses are the easy part and your learners are the part you cannot afford to lose, the manual route is a lot of careful, breakable work. Cubite runs that migration for you from your database export - courses, quizzes, learners, enrollments, progress, quiz attempts and groups, with earned certificates re-issued - and you review the record counts and sign off before launch.
Stop exporting by hand. Let Cubite run the migration.
Bring us your LearnDash site and we will show you the full move - what comes across, how we verify it, and what cutover day looks like - in a single 30-minute call.
Bring your LearnDash site and we will map what comes across, how it is checked and what cutover day looks like.
Looking to learn more about LearnDash, LMS Migration, Course Export, WordPress LMS and LearnDash, LMS Migration, Cubite LMS, Course Management? These related articles explore complementary topics, techniques, and strategies.
LearnDash self-hosted vs SaaS (StellarSites Learning) after the StellarWP dissolution: real Year-1 costs, real risks, and the enterprise L&D alternative.
Move your entire LearnDash site to Cubite - courses, learners, progress, quiz scores and certificates - all verified, with nothing lost. Free and done for you.