How to Create a SCORM Package or SCORM File
Learn how to create a SCORM package, create a SCORM file, build SCORM content, configure tracking, export a ZIP, and test it in your LMS.
If you need to create a SCORM package, create a SCORM file for an LMS, or turn training material into trackable SCORM content, this is the practical workflow: build the course, set completion and score rules, choose the SCORM version, export the ZIP, then test it in your LMS.
A SCORM package is not just a file-conversion task. The real job is to create learning content that can report completion, scores, pass/fail status, time, and resume data back to the LMS.
With ScormStack, the workflow is designed around that full path: author the course, configure publishing rules, export a SCORM .zip, then upload it to your LMS.
If you are comparing authoring tools first, see the guide to SCORM authoring tools. If your source material is a slide deck, see the dedicated PPT to SCORM workflow. If you want to generate the first draft from documents, see how to create a SCORM course with an AI agent and the ScormStack API.
What is a SCORM package?
A SCORM package is a .zip file that an LMS can import and launch. It usually contains:
- Course pages, media, interactions, and assessments
- A manifest file named
imsmanifest.xml - Runtime code that lets the course communicate progress, completion, score, and resume data to the LMS
In practice, most teams should not edit the manifest or tracking code by hand. A SCORM authoring tool should generate the package for you and keep the export structure valid.
The ScormStack workflow
Here is the practical workflow for creating a SCORM package in ScormStack:
- Create a course
- Add lessons and content blocks
- Add interactions or assessments
- Set completion and grading rules
- Choose SCORM 1.2 or SCORM 2004
- Export the SCORM package
- Upload and test it in your LMS
The value of an authoring tool is that steps 5 and 6 do not require technical packaging work. You focus on the course; ScormStack handles the export structure.
Create a SCORM package: quick checklist
Use this checklist when the goal is a valid LMS-ready SCORM file:
| Step | What to decide | Why it matters |
|---|---|---|
| Course content | Lessons, media, interactions, and assessments | The SCORM file needs real learning content, not only a ZIP wrapper |
| Completion rule | Viewed pages, progress percentage, quiz pass, or a combination | This controls when the LMS marks the course complete |
| Score rule | No score, quiz score, or pass/fail status | This controls what the LMS reports to admins |
| SCORM version | SCORM 1.2 or SCORM 2004 | The best choice depends on LMS support |
| Export type | Manual SCORM ZIP or Dynamic SCORM package | This decides whether future updates need a new LMS upload |
| LMS test | Launch, resume, completion, score, and exit | A package is not ready until the LMS receives the right tracking data |
If you searched for "how to create a SCORM file," the exported SCORM ZIP is usually the file you need. If you searched for "create SCORM content," start with the authoring steps below before exporting.
Download the SCORM package creation and LMS testing checklist.
Step 1: Create your course
Start by creating a course in ScormStack. Give it a clear title, choose a structure, and decide what the learner should be able to do by the end.
Before adding content, define three things:
- Audience - who is taking the course?
- Outcome - what should they understand or complete?
- Tracking need - do you only need completion, or do you also need score and pass/fail reporting?
This matters because SCORM is not only a delivery format. It is also the way your LMS receives tracking data from the course.
Step 2: Author SCORM content with blocks
Build the course using ScormStack content blocks. A typical SCORM course can include:
- Text and rich content
- Images and diagrams
- Video and audio
- Tabs, accordions, callouts, flashcards, and other interactive blocks
- Navigation and separators
- Assessments and quizzes
This is the core of creating SCORM content. The package comes later; first you need a course that is clear, structured, and useful for learners.
For most teams, this is a better starting point than trying to convert a document or manually assemble files into a ZIP. Conversion can help in specific cases, but authoring gives you more control over structure, interaction, accessibility, and tracking.
Step 3: Add assessments and completion logic
Decide how the LMS should know that the learner has completed the course.
Common completion options include:
- The learner viewed all required pages
- The learner reached a minimum percentage of the course
- The learner passed an assessment
- The learner completed both content and assessment requirements
If your course includes a quiz or assessment, set the passing threshold and decide what should be reported to the LMS as completion, success, and score.
This is where a SCORM package becomes more than a static export. The LMS needs consistent signals, and those signals should match your training policy.
Step 4: Choose the right publishing option
ScormStack supports different publishing needs. For LMS delivery, the two most important options are:
| Publishing option | Best for | What you upload to the LMS |
|---|---|---|
| Manual SCORM export | A fully bundled course that does not depend on hosted updates | A SCORM .zip file |
| Dynamic SCORM | Courses that need updates after the first LMS upload | A lightweight SCORM package that connects to hosted course content |
Choose manual SCORM export when the LMS needs a self-contained package or when the course will not change often.
Choose Dynamic SCORM when the course may need corrections, translation updates, media changes, or content revisions after launch. You upload the package once, then publish updates from ScormStack without re-uploading a new ZIP every time.
Step 5: Choose SCORM 1.2 or SCORM 2004
Most LMSs support SCORM 1.2, so it is often the safest choice for broad compatibility.
Choose SCORM 1.2 when:
- Your LMS expects SCORM 1.2
- You need simple completion and score reporting
- Compatibility matters more than advanced tracking behavior
Choose SCORM 2004 when:
- Your LMS supports it reliably
- You need clearer separation between completion and success
- You need more room for resume/bookmark data
If you are unsure, start with SCORM 1.2 and test in your LMS. The best version is the one your LMS handles cleanly.
Step 6: Export the package
When your content and tracking rules are ready, export the course as SCORM.
The exported package should be a .zip file that contains the course, assets, manifest, launch file, and tracking runtime. Do not unzip and re-zip it unless you know exactly what your LMS expects; changing the internal structure can break the package.
After export, keep a copy of:
- The exported ZIP
- The course version or release date
- The SCORM version used
- Any completion or grading settings
This makes future updates easier to audit.
Step 7: Upload and test in your LMS
Upload the SCORM package to your LMS and test it before assigning learners.
Use this checklist:
- Launch the course from the LMS.
- Navigate through the course.
- Complete the required pages.
- Take the quiz or assessment if there is one.
- Exit before finishing, then relaunch and check resume behavior.
- Confirm completion, success, score, and time reporting.
- Test with the learner role, not only as an admin.
If something does not report correctly, check the completion settings first. Many SCORM issues are not packaging issues; they are mismatches between course rules and LMS expectations.
What about PowerPoint?
PowerPoint can be a useful starting point, but it should not be the default mental model for every SCORM course.
Use a PowerPoint-to-SCORM workflow when:
- The source content is already a finished slide deck
- Visual fidelity matters more than rebuilding each screen
- You need a fast conversion path for an existing training asset
For that case, use the dedicated guide: PPT to SCORM: convert PowerPoint to a SCORM course.
If you are creating a new course, start directly in ScormStack instead. You will have more control over responsive layout, interactions, assessments, and tracking.
What about manual SCORM packages?
Manual SCORM builds are possible, but they are rarely the best path for course creators.
Manual packaging means you own:
- HTML, CSS, JavaScript, and media files
imsmanifest.xml- SCORM runtime API calls
- Completion, score, and resume behavior
- LMS testing and debugging
That can make sense for custom web applications or specialist teams. For most training teams, a visual authoring and publishing workflow is faster, safer, and easier to maintain.
Common mistakes to avoid
- Treating SCORM as just a ZIP file - the package also needs tracking behavior and a valid manifest.
- Skipping LMS testing - always test launch, completion, score, and resume.
- Choosing SCORM 2004 without LMS support - compatibility matters more than the version number.
- Uploading a new ZIP for every small correction - consider Dynamic SCORM when courses change often.
- Building from PowerPoint by default - use slides when they are the right source, not as the default authoring model.
Frequently Asked Questions
How do I create a SCORM package?
Create the course in a SCORM authoring tool, configure completion and grading rules, choose SCORM 1.2 or SCORM 2004, then export the course as a SCORM .zip file and upload it to your LMS.
How do I create a SCORM file?
In normal LMS language, a "SCORM file" usually means the exported SCORM package. In ScormStack, you create the course, choose your publishing settings, and export the result as a SCORM .zip.
How do I create SCORM content?
Create lessons, media, interactions, assessments, and navigation inside an authoring tool. Then publish that content as SCORM so the LMS can launch it and track learner progress.
Should I use SCORM 1.2 or SCORM 2004?
Use SCORM 1.2 for broad LMS compatibility. Use SCORM 2004 when your LMS supports it well and you need richer completion/success behavior or more resume data.
Can I update a SCORM package after uploading it?
With a traditional manual SCORM export, you usually export a new ZIP and upload the updated package to the LMS. With Dynamic SCORM, you can upload once and publish future content updates from ScormStack.
Do I need to know HTML or JavaScript?
No. You only need HTML, JavaScript, and manifest knowledge if you want to hand-build a SCORM package. With ScormStack, the authoring and export workflow handles the technical packaging.
Final thoughts
The best way to create a SCORM package is to start with the learning experience, not the ZIP file.
Build the course, define what completion means, choose the right publishing option, export, and test. ScormStack keeps that workflow focused on authoring and publishing, so you can create LMS-ready SCORM content without hand-coding a package.