Exporting and Importing Courses
Backup, Duplicate, and Transfer Course Content Between Environments
Overview
Studio features built-in migration tools that allow you to download a complete backup copy of your course or upload an existing course package. When exporting or importing courses, the platform bundles your data into a compressed package format with a .tar.gz file extension.
Tip: Ensure you are logged into Open edX Studio before proceeding.
Caution on Internal Links: Before exporting a course, verify that all internal cross-references to other units utilize the /jump_to_id/LOCATION_ID formatting. If you used raw browser addresses instead of jump links, those links will break completely once the course package is imported into a new instance or server domain.
Part 1: Export a Course
Exporting your course run creates a baseline archive file. This file can be used to store data, manually edit raw XML components, or migrate the curriculum to a separate Open edX platform instance.
Data Included in Exports:
- All course structural containers (Sections, Subsections, Units).
- All structural components (HTML text, Videos, Exercises, Problems).
- Custom tabs and navigation pages.
- Course Settings and Grading configurations.
- Static media assets from your Files & Uploads directory.
Data NOT Included in Exports:
- Student data, roster histories, and student submission grades.
- Course Team profiles and administrative roles.
- Discussion forum posts, comments, or category trees.
- Generated completion certificates.
- Conditional prerequisite subsection lock assignments.
Export Procedures:
- Open your course in Studio.
- Click the Tools menu in the top navigation bar and select Export.
- Click the Export Course Content button.
- The system will process your database. Once completed, a download prompt will appear automatically to save the
.tar.gzpackage onto your computer.
Part 2: Import a Course
Warning: Executing an import completely overwrites all existing blocks, files, and metadata settings inside your current Studio course shell. This action cannot be undone. Always export and save a local backup copy of your current course before importing a new archive package over it.
Package Requirements:
- The import package must be a valid
.tar.gzcompressed archive. - The internal directory structure must include a central
course.xmlfile. - To avoid formatting errors, verify that all raw components in your package are nested securely inside a parent Unit layout container.
Import Procedures:
- Open your destination course shell in Studio.
- Click the Tools menu in the top navigation bar and select Import.
- Click the Choose a File to Import button.
- Locate the correct
.tar.gzarchive on your machine and click Open. - The platform will run through five verification stages (Uploading, Unpacking, Verifying, Updating, and Completed).
- Note: You must keep your browser window open during the Uploading and Unpacking stages. Once Unpacking concludes, you can safely navigate away, though it is a recommended practice to wait until the "Completed" status bar turns green before making structural edits.
Crucial Step: When an import completes, milestone calendar parameters—including your Course Start Date, Course End Date, and Enrollment boundaries—are overwritten by the settings inside the imported file. Navigate immediately to Settings > Schedule & Details to verify and correct your operational milestones.
Directory Terminology Guide
If you extract the exported archive package on your local computer to modify the XML elements directly, use this structural mapping index to locate your content folders:
| Studio Course Outline Name | XML Export Directory Folder Name |
| Section | chapter |
| Subsection | sequential |
| Unit | vertical |
| Component | Named by block type (e.g., html, problem, video) |
