Blog › Moodle SCORM Builder: How to Create Packages Moodle Actually Accepts

Moodle SCORM Builder: How to Create Packages Moodle Actually Accepts

July 16, 2026 · SCORMBuilder.ai
اقرأ بالعربية → Moodle SCORM Builder: How to Create Packages Moodle Actually Accepts

If you’re looking for a Moodle SCORM builder, start with the thing Moodle’s own docs say quietly: Moodle can’t create SCORM. It only plays it.

There’s no “export as SCORM” anywhere in Moodle. The SCORM activity is a player — it runs a ZIP you built somewhere else. So the real question isn’t how to build SCORM in Moodle. It’s what to build it with, and how to stop Moodle silently breaking it afterwards.

Moodle does not support SCORM 2004

This is the one that costs people weeks, and it’s official.

Moodle’s SCORM FAQ states plainly that SCORM 2004 is not supported. Parts of the basic API were implemented, native development stopped, and SCORM 2004 bugs in the Moodle Tracker are closed as “won’t fix”. Sequencing and navigation — the entire reason SCORM 2004 exists — were never built into core.

The dangerous part is that SCORM 2004 packages often appear to work. They load. Learners click through. Then sequencing doesn’t fire, statuses don’t settle, and you’re debugging a compliance report a fortnight before an audit.

What Moodle core actually supports: SCORM 1.2 (fully), AICC (since Moodle 2.1, though the standard is no longer developed), and nothing else. xAPI and cmi5 need third-party plugins. Certified SCORM 2004 needs Rustici’s commercial SCORM Cloud plugin.

The rule: for Moodle, publish SCORM 1.2. Every time. If an authoring tool tells you to publish 2004 for Moodle, it hasn’t read the docs.

Three settings that silently break tracking

None of these are your content’s fault, and all three generate support tickets.

The 4,096-character limit. SCORM 1.2 caps suspend_data — the field storing where a learner got to — at 4,096 characters. Longer courses blow past it and bookmarking dies. Your learner returns tomorrow and lands on slide 1 instead of slide 34. Moodle exposes a SCORM 1.2 standard mode setting under Site administration → Plugins → Activity modules → SCORM; disabling it raises the ceiling to 64,000 characters. One checkbox, and it’s documented nowhere a course author would look.

Mastery score overrides status. On by default. When a mastery score is set, Moodle recalculates status from the raw score on LMSFinish — overriding whatever your package reported, including “incomplete”. A learner who exits halfway with 40% gets that treated as final, compared to the pass mark, and marked failed. They didn’t fail. They left. Set it to No.

Grading method mismatch. Match it to what your package actually reports: Learning Objects if it reports cmi.core.lesson_status but no score; Highest / Average / Sum grade if it reports cmi.core.score.raw. Get this wrong and your gradebook shows zeros while the course runs perfectly.

Building the package

Your options, honestly: desktop suites like Storyline or iSpring — powerful, and priced for teams that already employ an instructional designer. Hand-authoring imsmanifest.xml and the SCORM API wrapper — free if your time is. Or an AI SCORM builder, where you describe or upload the content and the tool generates and packages the course.

With SCORMBuilder.ai:

  1. Give the AI Course Wizard a topic — or upload a document you already have.
  2. Edit with 48 block types: text, images, audio narration, accordions, flip cards, hotspots, sorting, labelled diagrams, quizzes. No timelines, no layers, no slide masters.
  3. Design branded, reusable blocks on an open canvas with Block Studio — optional, but it’s what stops AI-built courses looking AI-built.
  4. Export as SCORM 1.2 from the version dropdown.
  5. Upload the ZIP — step-by-step guide here.

It runs in the browser, exports SCORM 1.2, SCORM 2004, xAPI and cmi5, and costs $29/month on a single monthly plan. Against annual-only desktop licences, that’s less a feature argument than a commitment one.

Generating the assessments

Assessments are where course projects stall — you have the material, but writing twenty defensible questions against it is a day’s work.

SCORMBuilder generates question sets from your content as native blocks, so they report through the SCORM API to the Moodle gradebook like any other scored SCO. Then check your grading method. A perfect quiz still shows zeros if the method doesn’t match what the package reports.

What about Totara?

Totara Learn is a Moodle fork, so it inherits the same SCORM architecture — same activity module lineage, same SCORM 1.2 strength. Everything above applies.

Totara sites are typically enterprise and compliance-audited, which raises the stakes on status reporting rather than lowering them. Publish SCORM 1.2, check the mastery score setting, pilot one course before rolling out.

Common gotchas

Publishing SCORM 2004 for Moodle; the 4,096-character suspend data limit killing bookmarking; mastery score overriding a valid “incomplete” into “failed”; grading method not matching what the package reports; uploading a folder instead of the ZIP; not testing in the Moodle app before rollout.

Make your Moodle-ready SCORM package

New to the format? Start with what SCORM is. Already have content? Convert a PowerPoint deck or a Word document. Planning richer tracking later? See SCORM to xAPI.

Start free at SCORMBuilder.ai — build a course, export SCORM 1.2, and upload it to Moodle.

Frequently Asked Questions

Can Moodle create SCORM packages?

No. Moodle plays SCORM through its SCORM activity module — there is no export-to-SCORM function, and you can't convert a Moodle course into a SCORM package. You author the package in a separate tool and upload the ZIP.

Does Moodle support SCORM 2004?

No. Moodle's own SCORM FAQ states that SCORM 2004 is not supported: parts of the API were implemented, development stopped, and SCORM 2004 bugs in the tracker are closed as won't fix. Sequencing and navigation were never built. Some packages appear to work, which is worse than a clean failure. Publish SCORM 1.2. For certified SCORM 2004, Rustici sell a Moodle plugin that connects to their commercial SCORM Cloud service.

Which SCORM version should I use for Moodle?

SCORM 1.2. It's fully supported and it's what Moodle's player is built around. Don't publish 2004 for Moodle, whatever your authoring tool suggests.

Why do learners lose their place in long courses?

The SCORM 1.2 suspend_data limit — 4,096 characters. Long courses exceed it and bookmarking stops working. Check the SCORM 1.2 standard mode setting under Site administration, Plugins, Activity modules, SCORM.

Why does Moodle mark completed courses as failed?

Usually the mastery score setting, which recalculates status from the raw score and overrides whatever your package reported — including "incomplete". A learner who exits halfway with 40% gets marked failed. They didn't fail; they left.

Can I use xAPI instead of SCORM in Moodle?

Not in core. xAPI needs third-party plugins — logstore xAPI to report to an external LRS, or mod_tincanlaunch to launch Tin Can packages. SCORMBuilder exports xAPI and cmi5 if your stack supports them, but SCORM 1.2 is the path of least resistance for Moodle.

Do I need instructional design experience?

No. An AI course builder drafts the structure, objectives and assessments from your topic or document — you edit them.