Migrate courses to Moodle with IMS Common Cartridge

Moving course content from another LMS into a self-hosted Moodle through IMS Common Cartridge packages and built-in converters. This page explains what maps cleanly, what needs rework, and how to sequence the move.

On this page

How to migrate courses to Moodle without rebuilding every course by hand

Common Cartridge export can make the content side of a course move quick, but it does not make the whole move quick. Whether it helps, and how much, depends on the content types inside each course and on how complete and clean the source export is. A course built mostly from documents, web links and standard files is a very different job from one built around timed quizzes, rubric-graded assignments and embedded third-party tools. For content, the transfer runs through documented core paths. Moodle's built-in converters bring in the parts of a Common Cartridge 1.0 or 1.1 package that map to Moodle activities and resources, and the import creates a new course from the package. Your team should run a test import of one representative course from each major content type before committing to a plan, then open the result in the Moodle course editor and check that files, links, sections and activity types arrived where expected. Confirm with your source LMS vendor exactly which cartridge version and content types their export produces, because not every platform exports every item. Assessments, gradebook settings, roles and integrations usually need rework. Quiz settings such as attempt limits, feedback timing and question behavior often do not carry over in full, and question banks may need to be rebuilt or re-imported separately. Gradebook categories, weights, grade letter mappings and any grade history stay in the source system unless you plan their recreation. Role assignments, enrolment rules and external tool connections such as video or publisher content need to be defined again in the new environment. Plan these as separate work streams with their own owners and test steps. Effort is driven by the course inventory, not by the number of courses alone. Sort courses by content type, assessment complexity and integration dependency, then identify which courses are standard enough to import in bulk and which need a manual pass. Ask for a count of courses in each group, a list of external tools in use, and an export of the gradebook structure before anyone prices the work. That inventory is the input that determines how much of the migration is import and how much is rebuild.

What maps cleanly from Common Cartridge into Moodle and what does not

This table compares each course element commonly found in a Common Cartridge export with its closest Moodle equivalent and notes what to check during migration. Rows marked as manual rebuild usually need hand work, while the others should be verified against the export from your current LMS and the Moodle release you are targeting. Treat every row as a hypothesis until a test import confirms it.

Source capabilityMoodle equivalentMigration notes
Static web content and filesPage, File and Label resources in course sectionsUsually converts. Check embedded links, images and relative paths after import, because broken references are common.
Learning objects and packaged contentImported resources or H5P and SCORM activities, depending on package typePartial. Confirm which package types your target release converts. Packages that need a player or runtime often need manual rebuild.
Quizzes and question banksQuiz activity and the question bankPartial. Question types, feedback, and random selection rules may not carry over. Manual rebuild of settings and bank structure is likely.
Discussion topicsForum activity with discussion threadsUsually converts the topic and prompt. Confirm grading settings, posting rules and group modes, which often need manual rebuild.
Grade items and gradebookGradebook items, categories and grade weightsManual rebuild. Totals, weights, hidden items and grade formulas rarely transfer intact. Rebuild and compare results against the source gradebook.
Learning outcomesLearning outcomes feature, available from Moodle 5.3Manual rebuild. Confirm the outcome framework is supported in your target release before mapping alignments to activities.
Groups and due datesCourse groups, groupings and activity datesPartial. Group membership and date fields need checking. Dates often shift by time zone, and group rules may need manual rebuild.
LTI tool linksExternal tool activities and LTI tool configurationManual rebuild. Each tool needs a registered Moodle connection, credentials and launch settings. Confirm with the tool vendor before testing.
Proprietary features such as adaptive release rules and custom gradebook schemesRestriction rules and gradebook settings, with no direct equivalent in many casesManual rebuild. Vendor-specific logic does not map. Document the source behavior first, then design and test the Moodle equivalent.

How Common Cartridge packages convert in Moodle

Whether a Common Cartridge package converts cleanly into Moodle depends on two things you do not control on your own: what the source LMS wrote into the package, and what Moodle's built-in converter accepts in the release you plan to run. Confirm both in writing before you commit to this path. A package that imports without error can still arrive with missing activities, flattened structure or lost settings, so the import log alone does not answer the question.

A Common Cartridge package is a compressed archive with three parts that matter here. The manifest, a file named imsmanifest.xml, lists the organizations (the course structure), the resources (the files, web links and content items) and the dependencies between them. Metadata describes the package and its items, such as titles, descriptions and classifications. The resources hold the actual content. The version of the specification determines which content types and metadata fields are expected. Version 1.0 and version 1.1 differ in what they can carry, so a package exported as 1.1 may contain item types that a 1.0 reader does not recognize. Ask the source LMS vendor which version the export uses and which content types it writes into the manifest.

Moodle does not map every manifest element to an activity. Its converter reads what it recognizes and creates the matching course content, so the gap between what the source system exported and what Moodle created is where the rework lives. Ask the team that will run the migration to confirm, for the exact Moodle release you plan to run, which Common Cartridge versions and item types the converter handles. Do not assume a version is supported because a neighboring release supports it. Record the answer with the release number, because converter behavior can change between releases.

Before you migrate the full course catalog, run a short test with one representative course per content type. Choose a course that uses each element you need to keep: a plain page, a file set, a web link, a discussion, a quiz with several question types, an assignment with a rubric or grading scheme, and any embedded media. Export each from the source LMS, import it into a non-production Moodle site on the planned release, and compare the result item by item against the source. Log which items arrived as the intended activity, which arrived as a generic file or link, and which were dropped. Those results decide which courses move by import and which are rebuilt by hand.

Treat the test as a decision tool, not a pass or fail gate. A course that converts with only cosmetic losses may be worth importing and tidying. A course whose assessments, grade items or completion rules fail to convert usually costs less to rebuild than to repair after import. Keep the test results, the exported files and the Moodle release number together so that the decision can be reviewed later, and repeat the test when you upgrade Moodle or change the source export settings.

Documented import paths Moodle core provides for course content

Moodle core provides several documented ways to move course content, questions, users and enrolments into a self-hosted site. Each path has a different scope, so choosing one depends on what you are moving and where it came from. Each card names what the path moves, what it leaves behind and what to confirm in your target release.

Common Cartridge import converter

Moodle's built-in IMS Common Cartridge import converts course packages exported from another LMS into a Moodle course, mapping the content items and resources the package declares. This is the path this page covers in depth, so its coverage matters most. Confirm in your target release which Common Cartridge versions the converter accepts, how it handles activities that have no direct core module equivalent, and whether quiz and assessment content comes across intact.

Course backup and restore

Backup and restore moves a course that is already in Moodle format between Moodle sites, including activities, resources and settings. It does not convert content from another LMS, so it fits courses previously exported from a Moodle site. Check whether user data is included or excluded by default in your release, and confirm the source versions the restore accepts before you plan a move across releases.

Question bank import formats

Moodle core includes import formats for quiz questions, so a question bank can be loaded without rebuilding each item by hand. Formats differ in how they carry question types, feedback, media and categories, so a format that handles simple multiple choice may flatten more complex items. Confirm which formats your release lists, then test a sample of each question type against the quiz settings you need before loading the full bank.

Database transfer tool

The core Database transfer tool moves an existing Moodle site from one database engine to another. It does not move course content, users or enrolments between sites, so it is listed here because it is often confused with course import. It is covered on its own migration page. Confirm in your target release whether the tool supports your source and target engines and how much maintenance window the move requires.

Upload courses and upload users tools

The upload courses and upload users tools load course shells, user accounts and enrolments from CSV files into a Moodle site. They suit one-time loads of structure and accounts, but they do not carry activity content, grades or files from another LMS. Confirm the column set and required fields in your target release, and check how the tool matches existing accounts and courses before running a full load on a test file first.

External database and LDAP enrolment

Moodle core includes external database and LDAP authentication plugins, and enrolment from these sources can be configured to run on a schedule. This suits recurring sync, where a one-time load would go stale as people and classes change. Confirm the sync fields, role mappings and deletion behavior in your release, since those settings decide what happens to a Moodle account or enrolment when its source record disappears.

What rework remains after the course content arrives

Once the IMS Common Cartridge package has been imported, the course exists in Moodle, but it does not yet behave like the course it came from. Plan a dedicated pass on every course before anyone treats the migration as finished. Start with activity settings. Due dates, submission types, attempt limits, availability windows and completion conditions often arrive with defaults, or with values that the source system interpreted differently. Work through these as a checklist for each activity type, and record each exception so the same fix can be applied to every course that shares the pattern. Also confirm that links, resource references and embedded items still point to the correct targets, because relative paths and cross-references are among the first things to break when content changes platforms.

The gradebook is the next area that most projects rebuild by hand. Check the category structure, aggregation methods, item weights, hidden items and locked grades against the source gradebook. A Common Cartridge package can carry the activities without the grading logic that connected them, so do not assume the totals will match. Then review the people layer. Reassign course roles so that teachers, non-editing teachers and students map to the Moodle roles your policy requires. Confirm that enrolment methods such as manual enrolment, cohort sync or external database enrolment are configured the way your institution expects. Restore groups and groupings, and rebuild completion rules and activity dependencies that once guided learners through the course.

Integrations need separate work. Video and conferencing activities usually reference an external meeting tool, tenant or account, and those references must be re-linked to the systems you operate and to the authentication settings that govern them. Test embedded media, plagiarism detection and external tool launches from a learner account as well as an administrator account, since permissions and sign-in paths differ. Settle the theme decision before course review starts. Moodle 5.3 removes the Classic theme from core, so any course that depends on its layout will need a supported theme or a maintained custom theme plugin. If the theme changes after reviewers have approved layouts, every course must be checked again. Confirm which theme your target version will use before the first course is reviewed.

Content owners must review each course against the source. This is usually the largest recurring effort in the project, because the import can move files and structure correctly while still changing wording, images, links, question feedback or the order in which material appears. Give each owner the original course and the converted copy side by side, a shared checklist and a defined sign-off step. Expect the review to repeat in later terms whenever courses are updated. When you request a quote, ask the partner or internal team to price the content review separately from the technical import, so the recurring cost is visible and can be planned against teaching calendars.

Sequence for moving courses with a pilot, parallel run and cutover

The sequence moves courses in stages so that each stage produces evidence before the next begins. A pilot shows what converts cleanly and what needs rework, a parallel period lets staff compare grades in both systems, and the cutover happens only after those checks pass.

  1. Inventory courses and export packages

    The source LMS administrator, working with course owners, lists every course to move and exports each one as an IMS Common Cartridge package. Record the package version (1.0 or 1.1), the content types inside it, the enrolment count, the gradebook scheme and any external tools each course depends on. Confirm with the source platform's vendor which export options produce a complete package for your situation, because export coverage differs between platforms. The step closes with an inventory register that lists each course with its package, owner and status, plus the content the export cannot carry.

  2. Select a pilot set covering each content type

    The project lead and academic owners choose a small set of courses that together cover every content type in the inventory, such as quizzes, files, pages, embedded media and graded assignments. Include at least one course with a complex gradebook and one that relies heavily on the source platform's own tools, since those are where conversion gaps tend to appear first. Agree the pilot list in writing with its owners and the review points where they will examine results. The step closes with a signed pilot list that maps each course to the content types it is meant to prove.

  3. Stand up the target Moodle on a chosen version

    DeployOpen and the client platform team install Moodle in the client's own infrastructure on a version chosen from the release calendar and support dates. Each release has its own general and security support end dates, so compare them before choosing and confirm the next long-term support release. Check the PHP, database and web server requirements in the release notes for the chosen version. From Moodle 5.1, point the web server document root at the public directory, because otherwise the site may show directory listings or errors. The step closes with an install record that names the version, PHP and database versions, and a tested backup and restore.

  4. Convert and review the pilot courses

    DeployOpen imports each pilot IMS Common Cartridge package into a staging course, then course designers review every activity, resource and link against the source course. Files, pages and plain links usually move with the least effort, while quizzes, question banks, gradebook categories, completion rules and external tool launches are the common candidates for rebuilding. Confirm converter coverage for your package version before the pilot starts. Log each item as converted, converted with changes or rebuilt by hand. The step closes with a review log for each pilot course and a rework list that sets the scope for the remaining courses.

  5. Run a parallel period with both systems current

    Course owners keep both systems current during an agreed parallel period, with the source remaining the system of record until cutover. Re-export changed courses on a schedule the project sets, convert them again, and record which version of each course is live in Moodle. Staff compare grades for the pilot and then the wider set in both systems, and the gradebook owner signs off each course once the differences are explained. The step closes with a reconciliation report per course that lists grade differences, open rework items and the sign-off.

  6. Cut over enrolments and access

    The client's identity and LMS teams freeze edits in the source system, run a final export and conversion, and load enrolments into Moodle through the method agreed in the design, such as a one-time upload or a recurring sync. Switch sign-in and course links to Moodle, and confirm that single sign-on, if configured, maps users to the correct accounts. Keep the source available in read-only form and agree in advance who can authorize a rollback and under what conditions. The step closes with a cutover record showing the final export checksums, enrolment counts reconciled against the source and the signed rollback decision.

  7. Decommission the source with an archived export

    After the cutover record is accepted, the client's records owner archives a complete export of the source, including course packages, grades and any other data the records retention policy requires, to storage the client controls. Confirm with the records and legal owners how long the archive must be kept and who may access it. Test that the archive can be opened and searched before the source is shut down. Then remove user access, disable scheduled jobs and retire the server or subscription through the client's decommission process. The step closes with a stored archive with a documented location, a restore test result and a decommission record signed by the platform owner.

How the parallel run and cutover protect grades and enrolments

The parallel run is the period when the legacy LMS and the new Moodle site both exist, and the most important decision in it is which system is the record of truth for each term or cohort. During a parallel run, grades, submissions and enrolments keep changing in the old system while teachers and students begin to use Moodle, so two sources drift apart quickly. Decide this per term or per cohort, in writing, before the first course is opened to students. For example, an illustrative plan might keep the spring cohort's gradebook in the legacy LMS until the term closes, while the autumn cohort starts in Moodle with imported enrolments. Name the owner of each decision, and state what happens to submissions that arrive in the wrong system during the overlap.

Cutover checks should be run against the Moodle server before any student-facing announcement. Start with enrolment reconciliation: compare the count of active enrolments per course and per role in the legacy system with the count in Moodle, and investigate every difference, including suspended users, guest access and users enrolled through more than one method. Next, compare grades for a sample of courses, covering courses with weighted categories, manual overrides, hidden grades and late penalties, because these are where imported values most often differ. Then test access for each role, including students, non-editing teachers, editing teachers, managers and any external or observer accounts, and confirm that each role sees only the courses and grades it should.

The Moodle server itself must be ready before any of these checks mean anything. Confirm that the database engine, PHP version and web server meet the requirements of the Moodle release you are installing, and check the official release notes for that version. For Moodle 5.1 onward, the web server document root must point to the new /public directory rather than the main Moodle folder. If it does not, the site can show directory listings or errors, which can look like a failed import to users. Ask the implementation partner or your own platform team to record the web server configuration in the cutover runbook, and confirm the PHP and database versions on the production hosts, not only on a test server.

A rollback plan has to name who can reverse the cutover, under what conditions, and how long the legacy system stays available for reads and writes. Define the trigger conditions in advance, such as an unresolved enrolment mismatch in a named set of courses or a grade discrepancy above a threshold agreed by the academic owner. Name the single person with authority to call the rollback, and a deputy. Then document the reverse path: how enrolments and submissions created in Moodle during the window are carried back, and who signs off that the legacy gradebook is current. A reverse path that has never been run is not a plan, so rehearse it on a copy of the production database before the cutover date and record how long it takes.

Plan the cutover so that the reverse path is tested on the same version and configuration that will go live, not on an earlier build. Confirm with the vendor and with your hosting team which database backups can be restored, how point-in-time recovery is configured, and where the legacy export files are kept. Ask for a written cutover and rollback runbook as a deliverable, with checks, owners and sign-off points, so that the decisions made in the room are the ones that get executed under pressure.

What drives the cost and duration of a course migration

This table lists the factors that most change how long a Common Cartridge migration takes and what it costs, along with how to reduce each one or ask about it in a quote. Read it before requesting a scope, because the drivers that matter most are usually the ones the source export does not reveal. Migration costs are one-time, and recurring costs appear only where support or maintenance is retained after go-live.

DriverWhy it mattersHow to reduce it or ask about it in a quote
Number and variety of coursesEach course adds packaging, review and rework, and courses built from different templates or activity types take longer to check than uniform ones.Inventory courses by activity type and template before scoping. Ask the provider to price by course category, not a single average.
Export quality from the source LMSPackages that omit resource metadata, use proprietary extensions or nest files unusually often need manual repair before import.Run a sample export early and check it in a Common Cartridge validator. Ask how the quote handles packages that fail validation.
Proportion of assessments and question banksQuizzes, question banks and their feedback, randomization and tagging rarely convert perfectly, and each question type may need its own check.Count quizzes and questions separately. Ask whether question banks are moved through a format other than Common Cartridge, such as a native question import.
Gradebook complexityWeighted categories, hidden items, grade overrides and letter scales must be recreated and reconciled, and mismatches are visible to learners.Document the source grading schemes for each course. Ask whether gradebook setup is in scope and how grade totals will be verified.
Integrations to rebuildVideo, publisher content, plagiarism checks and external tools often use links or LTI launches that must be reconfigured in the new environment.List every external tool referenced in the export. Ask which integrations are rebuilt, which are only documented and which are out of scope.
Identity and SSO scopeMapping users and SAML attributes into Moodle, for example with the auth_saml2 plugin field mapping, affects test effort and cutover timing.Confirm the identity provider, attributes and user matching rules before scoping. Ask whether SSO setup and testing are included or handled by your team.
Content owners available for reviewFaculty or course owners must confirm imported content, and slow review stretches the schedule even when the technical work is ready.Name reviewers and their time commitment early. Ask how review rounds are counted in the quote and what happens when reviewers are unavailable.
Environment and server requirements for the target releaseThe target Moodle release sets PHP, database and web server requirements, and some hosts need changes, such as the /public document root from Moodle 5.1, before import.Choose the target release and confirm hosting versions first. Ask whether environment preparation and staging are included in the scope.
Parallel run decisionRunning the old and new LMS side by side means keeping both in sync, communicating with learners and reconciling data, which adds effort and time.Decide whether a parallel run is needed and for how long. Ask the provider to price parallel running as a separate line item.

What usually goes wrong when courses move into Moodle

Most failed course migrations come from a few repeated gaps rather than one bad file. Content can import but behave differently, grades can shift without a clear record, and identities and server settings may never be checked against the new site. Each card names the early signal to watch and the step that prevents the problem.

Assessment logic lost in conversion

A Common Cartridge package can import without errors and still drop the rules that made an assessment work, such as feedback text, question randomization, attempt limits or availability windows. Learners then see questions that look correct but behave differently from the source course. Compare each converted quiz or assignment against its source settings in a test course before any learner has access. Early signal: question counts match, but attempt or availability settings do not.

Gradebook changes without notice

Grade items, categories, weights and hidden totals can be rebuilt differently after import, so a learner's final grade may change even when each activity looks correct. The change is quiet, so it often surfaces only when a learner or instructor queries a grade. Freeze a sample of source grades for known learners and recalculate them in Moodle's gradebook before go-live. Confirm which items carry over and which need manual setup. Early signal: course totals for the same learner differ from the source totals.

Duplicated and orphaned files

Re-running an import after a fix can create a second copy of each resource, while the first copy stays linked to the course. Files referenced by a package but missing from it can appear as broken links, and some files can remain in storage after their course is removed. Keep a record of each import run, delete or quarantine test copies before go-live, and check file storage for files no course references. Early signal: the same resource title appears twice in one section, or course pages show broken file links.

Enrolments that do not match identity

Course packages do not carry your current learner identities, so enrolments depend on how Moodle matches accounts to people. If usernames, email addresses or student IDs in the new identity source differ from those in the source LMS, learners can arrive in empty courses or with duplicate accounts. Decide the matching key before import, test it with a sample of accounts from the identity source, and confirm the authentication method you plan to use. Early signal: enrolment counts in a test course differ from the class roster.

Document root errors after upgrading to 5.1

From Moodle 5.1, the web server document root must point to the new public directory in place of the main Moodle folder. If the server still points to the old location after an upgrade or a new build, the site can show directory listings or errors, and imported courses may appear to be missing. Add the document root to the deployment checklist and verify it on staging. Sites must be on Moodle 4.2.3 or later to upgrade, so confirm the starting version too. Early signal: directory listings or error pages on the first request after a deployment.

Courses published before review

Once a course is made visible, learners can see whatever the import produced, including broken links, leftover test content and unfinished settings. A course can look complete in the course list while its assessments or gradebook still need work. Keep imported courses hidden until a named reviewer signs off a checklist covering content, assessments, gradebook and enrolments. Early signal: a course is shown in the catalog before its sign-off record exists.

Questions buyers ask before moving courses to Moodle

How much does a Common Cartridge migration to Moodle cost?

Cost depends mainly on how much of the course content needs manual rework, and on how many courses are in scope. One-time costs cover assessing the export, preparing the Moodle environment, running imports, rebuilding quizzes and gradebook setups by hand, connecting integrations, and testing with teachers. Recurring costs come from hosting, maintenance and upgrades after go-live, which apply to any Moodle site whether or not you migrate courses. Ask for a quote built from a written scope that lists course count, content types, assessments, grade structures and integrations, and that separates fixed work from items to be confirmed after a sample import. DeployOpen quotes follow from the written scope, and the company does not publish a price list.

How long does a course migration into Moodle take?

The timeline is set by the number of courses, how much of each one needs rebuilding, and how many review rounds your academic staff can commit to. A sample run on a few representative courses is usually the first step, because it shows which content converts and which needs manual work. Your own environment also sets the pace, since provisioning servers, confirming database and PHP versions, and completing security review can take longer than the import itself. Confirm the Moodle version you will deploy early. For example, Moodle 5.1 requires 64-bit PHP 8.2 or later and PostgreSQL 15, MySQL 8.4, MariaDB 10.11 or SQL Server 2017 or later. Ask for the plan to be broken into phases, with a sign-off point after each one.

What does our team need to provide during a course migration?

You need named subject owners who can review converted courses, an administrator who can approve server and database changes, and access to the export from the source LMS. Teachers should check a sample course for structure, links, media and assessment settings, then sign off what they accept. Your identity team is needed if logins will move to single sign-on, and your security team should review where the server runs and who can reach it. You also need to decide which course versions are current, because old term material is often exported by mistake. Ask the partner to list these roles in the written scope so each person is booked before work starts. Reviewer time is often underestimated, and unreviewed courses are where rework is found late.

Can our own team run a Common Cartridge migration without a partner?

Yes, a capable Moodle administrator can run the import, but the work involves more than handling files. The team needs Linux, web server, PHP and database skills to deploy Moodle, along with course design skills to rebuild quizzes, question banks and gradebook layouts that do not carry over cleanly. Server setup is a common source of errors. From Moodle 5.1, the web server document root must point to the /public directory, or the site may show directory listings or errors. Be honest about whether your team has the hours for sample runs, reviews and rework across the whole catalogue. Comparing a partner is worth doing when the timeline is short or internal staff are already committed elsewhere. Either way, document each import step so a second person can repeat it.

Do all course content types convert through Common Cartridge?

No. Common Cartridge covers a defined set of content, and anything outside that set has to be recreated or re-mapped by hand. Quiz and question structures, embedded third-party tools, interactive packages, grade logic and external tool launches are common areas of rework. Results also depend on the cartridge version your source LMS exports, since 1.0 and 1.1 packages differ. Confirm with the source LMS vendor which Common Cartridge version it produces and which resource types the export includes. Then run one representative course through an import into a test Moodle site and inventory what arrived intact, what arrived partly, and what is missing. That inventory becomes your rework list and the basis for a firm quote.

How are grades handled when moving courses into Moodle?

Grades usually need separate handling from course content. Gradebook categories, weightings, grade items and grade history may not come across with the course package, so check them in a sample import. Treat grades as a reconciliation task: export the source gradebook, map each category and grade item to a Moodle grade item, and compare totals for a sample of students before any cutover. Decide whether historical grades will live in Moodle, in an archive, or in the source system for a fixed period, since records retention rules may apply. Ask the vendor what the export does with grades and whether it includes student records, which can raise privacy obligations. Test with real student data only under your own data protection rules.

What happens after go-live, and who maintains the Moodle site?

After go-live, the Moodle site becomes a running platform that needs patching, backups, monitoring and scheduled upgrades. Moodle ships major releases every six months and point releases every two months, so plan which release you run and when you will move. Moodle 4.5 is a long-term support release with security support until 4 October 2027, and Moodle 5.3, released 5 October 2026, is the next long-term support release with security support until 1 October 2029. Upgrades also have starting-version rules. Moodle 5.1, for example, requires sites to be on 4.2.3 or later. Decide before cutover who handles these tasks, whether internal staff or a support retainer. Ask for a written handover that covers backups, restore tests and the upgrade path.

How DeployOpen scopes and delivers a Moodle course migration

DeployOpen plans Common Cartridge migrations as fixed-scope work, starting with an inventory of the packages you hold and the content types they contain. We then convert and import them into a self-hosted Moodle, rework what does not carry over cleanly, and document the results so your course teams can continue.

How we scope

  • Inventory the Common Cartridge 1.0 and 1.1 packages you hold and identify which content types each one contains.
  • Map each package to Moodle activities, resources and question bank entries, and list what must be rebuilt by hand.
  • Agree in writing which courses, terms and content types are in scope, along with the target Moodle version and hosting.
  • Confirm the source LMS export options with your vendor, since package completeness depends on what the source system exports.

How we build

  • Set up the target Moodle in your infrastructure, with the database engine and web server document root configured for the version you choose.
  • Run test imports of representative packages, then review converted quizzes, links, media and embedded content in a staging course.
  • Rework failed or partial items against an agreed rework list, such as gradebook setups, grouping and activity completion rules.
  • Verify course structure, file links and question counts against the source packages before any course is released to learners.

How we hand over

  • Deliver a migration record listing each source package, its target course and any items that were rebuilt or left out.
  • Document the import procedure, conversion limits and the manual rework steps so your team can repeat them for later packages.
  • Hand over course backups and a rollback plan covering the Moodle database and the imported file store.
  • Walk your course designers and administrators through the target course structure and the checks used during review.

How we support

  • Ongoing support, upgrades and continuous testing are available as retainers after the migration is accepted.
  • Agree a retainer scope that covers Moodle upgrades, plugin updates and any further package imports you plan to run.
  • Plan Moodle version upgrades separately, checking the minimum starting version and server requirements for your target release.
  • Ask for the support and response terms in the written quote, since they are set per engagement and not published.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.