Exporting Your Courses From Canvas (IMSCC), Step by Step
July 16, 2026 · 6 min read
What IMSCC actually gives you
A Canvas course export produces an IMSCC file, and it's a solid way to move your course content. The mistake is assuming it's a backup of the whole course. It isn't. Student submissions, grades, and some external-tool settings do not travel inside that package, and finding that out after cutover is a bad afternoon.
IMSCC stands for IMS Common Cartridge. Think of it as the syllabus and the materials: pages, assignments as definitions, quiz questions, files, module structure. What it leaves behind is everything that happened inside the course, the human record, plus the wiring that connected the course to other systems.
The step-by-step, and the gaps at each step
- Export the course. In the course, Settings → Export Course Content → Course, and you get an
.imsccfile. This carries structure and materials. - Export the grades separately. The gradebook exports as CSV from the Grades page. IMSCC won't contain it. If a completion record matters a year from now, this file is the one you cannot lose.
- List your external tools. LTI/external-tool placements and their configurations are not guaranteed to survive the cartridge. Write down every tool, its placement, and its keys before you touch anything.
- Account for submissions and interactions. Student uploads, discussion posts, and quiz attempts are not in the IMSCC. If you need them, that's a separate admin export or a data request, planned in advance.
Canvas's own documentation is clear that a course export package does not include student-specific data such as submissions and interactions, and that grades are backed up separately. Treat that as the design of the format, not a bug to work around. (Instructure's course-export documentation)
| Item | In the IMSCC? | How it actually moves |
|---|---|---|
| Pages, assignments, quiz questions, files | Yes | The cartridge |
| Module and course structure | Yes | The cartridge |
| Grades / gradebook | No | CSV export from Grades |
| Student submissions & discussion posts | No | Separate admin export / data request |
| LTI external-tool config & keys | Not reliably | Re-register on the new platform |
Re-test the launches, don't assume them
The part people underestimate is the external tools. An LTI tool that "works" in Canvas is a set of keys, a placement, and a grade-passback contract. Import the cartridge somewhere new and the tool definition may come across as a broken link with no credentials behind it. Every integration needs a fresh launch test and, if it sends grades back, a passback test. Those are two different tests, and skipping the second is how a term starts with grades landing nowhere.
If student-data ownership is part of why you're leaving, that's worth naming out loud, and it's the throughline of a Canvas alternative you actually control and the lesson from the Canvas breach. For the standards mechanics, SCORM vs xAPI covers what portability really means, and what a smooth LMS migration looks like puts these exports into a full timeline. When the destination is a platform you own, custom LMS development plans these gaps before they become surprises.

Written by Choaib Mouhrach
Founder & Senior Software Engineer
I design and build custom learning platforms for organizations with complex training and certification workflows. Instead of stitching together plugins and third-party tools, I create systems tailored to how each business operates, reducing administrative overhead while improving the learner experience.
Your learning product deserves its own platform.
If you want to deliver a learning experience built around your product, your learners, and your goals, you are in the right place. We build platforms that give you the control and flexibility to grow without limits.