Customer & Employee Training9 min read

xAPI vs SCORM (vs cmi5): Which Standard Do You Actually Need?

SCORM is 25 years old and still everywhere. xAPI became an IEEE standard and nobody noticed. The honest comparison, including the question vendors dodge: what replaces SCORM?

Onur Öztürk
Co-Founder
Rounded package releasing small chips that arc into a rounded vault, showing xAPI vs SCORM course data on the move

Here’s the comparison in three sentences. SCORM packages a course so it runs and reports inside any compliant LMS: it’s the portability floor of the training industry. xAPI records learning experiences as small statements sent to a learning record store, from any app or device, no LMS required. And cmi5 is a profile that runs xAPI with SCORM-style launch rules, built to replace SCORM eventually.

“Eventually” is doing a lot of work in that sentence, and most xAPI vs SCORM comparisons won’t tell you why. This one will, along with the question that actually decides the choice: who controls the system your training runs in?

Key Takeaways
– SCORM and xAPI aren’t competitors on the same axis. SCORM is a packaging-and-playback contract with an LMS; xAPI is a data format for describing any learning experience.
– xAPI has been an official IEEE standard since October 2023 (IEEE 9274.1.1). None of the pages ranking for this comparison mention it.
– cmi5 is the designated successor to SCORM, production-ready since 2016, and still waiting on broad LMS support. Nothing has replaced SCORM at scale.
– If you ship training into systems you don’t control, SCORM 1.2 remains the compatibility answer. If you run your own delivery, you may not need a standard at all.
– SCORM’s completion signal can be faked from a browser console. xAPI’s can’t, at least not as easily. For compliance evidence, that difference matters.

What SCORM Actually Does

SCORM (Sharable Content Object Reference Model) is a set of rules from the early 2000s. It solved a real problem: courses built in one tool couldn’t run in another company’s LMS. A SCORM package is a zip file with a manifest that any compliant LMS can import, launch in a browser player, and track. Completion, a score, pass or fail, time spent: the package reports these to the LMS through a JavaScript API while the learner works.

That contract made courses portable, and portability made SCORM the default trading format of corporate training. When a client says “we’ll run your course in our LMS,” they almost always mean a SCORM package. It’s also SCORM’s ceiling: everything happens inside a browser window launched from an LMS, and the data vocabulary is fixed. What happened outside that window doesn’t exist.

SCORM 1.2 vs SCORM 2004

Two versions matter, and the older one refuses to die.

SCORM 1.2 (2001) is the least common denominator. Virtually every LMS on earth imports it, which is exactly why content sellers still export to it. When you can’t test against a client’s system, 1.2 is the package least likely to break.

SCORM 2004 added sequencing and navigation (rules about the order learners move through content), richer interaction reporting, and separated “completed” from “passed” as distinct states. It’s the better spec. It’s also less uniformly supported, and its sequencing rules earned a reputation for being hard to author well.

The honest buyer default hasn’t changed in a decade:

  • Author in a tool that can export both versions.
  • Ship 1.2 when the destination is unknown.
  • Use 2004 when the destination supports it and you need its features.

If a vendor’s comparison page doesn’t mention versions at all, they’ve skipped the part practitioners actually argue about.

What xAPI Actually Does

xAPI (the Experience API, formerly Tin Can) starts from a different question: what if learning data weren’t trapped in a course window? An xAPI system records statements, small JSON records shaped like a sentence: actor, verb, object. “Maria completed Safety Module 3.” “Deniz passed the simulator check with 92%.” “This team practiced the escalation scenario.” Statements travel over an authenticated web API to a learning record store. They can come from a browser course, a mobile app, a simulator, or code you wrote yourself.

Side-by-side of how the standards report: a SCORM package inside an LMS player reporting a score inward, versus xAPI statements flowing from an app, a course, and a simulator into a learning record store

Two consequences follow:

  • xAPI can describe experiences SCORM structurally cannot: offline work, mobile apps, real-world tasks, team exercises.
  • xAPI by itself says nothing about launching content or what “complete” means. It’s a reporting language, not a course-player contract.

That second gap is what cmi5 exists to fill.

One more fact that every ranking comparison omits: xAPI is no longer only a community spec. It was published as IEEE 9274.1.1-2023 in October 2023, an active IEEE standard defining the JSON data model and the RESTful API between activities and a learning record store. If you needed a one-line answer to “is xAPI going away?”, an IEEE number is a strong no.

What Is an LRS?

A learning record store is where xAPI statements live. The IEEE standard defines it as “a system that exposes the RESTful Web Service API for the purpose of tracking and accessing experiential data, especially in learning and human performance.”

In practice, three things are worth knowing:

  • An LRS is not an LMS. It stores and serves statements; it doesn’t enroll anyone, launch courses, or issue certificates. Some LMS platforms embed an LRS; standalone LRS products also exist.
  • Somebody has to run it. That’s the real cost of xAPI adoption: an extra system to host, secure, and query, plus the analytics work to turn statements into answers.
  • You can skip it. If all your training runs in one system whose native reporting answers your questions, you don’t need an LRS, and adopting xAPI “for the future” mostly buys you an unread database.

Where cmi5 Fits

cmi5 answers the obvious follow-up: “I like xAPI’s data, but I still need LMS-launched courses with defined completion.” The specification describes itself as “a ‘profile’ for using the xAPI specification with traditional learning management systems”: extra rules that give xAPI content a SCORM-style launch, defined completion criteria, and normalized reporting, while keeping statements and the LRS underneath.

Its history explains its position. The AICC began the work in 2010 and rebooted it in 2012 as an xAPI profile. When the AICC dissolved in 2014, the project transferred to ADL, the US group behind both SCORM and xAPI. The first production release, the “quartz” edition, landed in June 2016.

So the PAA question “what is replacing SCORM?” has an honest two-part answer. On paper: cmi5, and it’s been production-ready for nearly a decade. In the market: nothing yet at scale. LMS support for cmi5 is still the exception rather than the rule, and content sellers keep shipping SCORM 1.2 because it works everywhere today. Choose cmi5 when you control both the authoring tool and the LMS and both sides support it; plan for SCORM to keep paying rent in the meantime.

Where LTI Fits

LTI (Learning Tools Interoperability) shows up in these comparisons but plays a different sport. It’s not a content-packaging or tracking standard; it’s a launch-and-integration standard from 1EdTech that lets an external tool plug into an LMS with single sign-on and grade passback. Education platforms like Canvas and Moodle live on it. If your question is “how do I put my interactive tool inside a university’s LMS?”, the answer is LTI. If your question is “how do I package and track a course?”, it’s the other three.

The Cheating Problem Nobody Explains

Here’s the mechanism behind a difference that usually gets one vague line. A SCORM course reports through a JavaScript API object that lives in the learner’s browser. The content calls it to say “completed, score 95.” But the browser belongs to the learner, and anything content can call, a person with the developer console can call too. SCORM completions are, in the strict sense, assertions the client makes about itself.

xAPI statements take a different path: an authenticated HTTP request to the LRS, made with credentials, and statements are immutable once written (they can be voided, not edited). A determined cheater’s job moves from “type one line in a console” to “obtain API credentials and forge signed traffic,” which is a different category of effort.

For a marketing course, this is trivia. For compliance training whose completion records become audit evidence, it’s a real input to the standards choice. It’s also why auditable programs increasingly want tracking that lives server-side, not in the learner’s browser.

How to Choose: Who Controls the Delivery System?

Forget feature matrices for a moment. The decision almost always reduces to one question about control:

Decision flow for choosing a standard based on who controls delivery: client systems point to SCORM 1.2, own delivery to native tracking, cross-platform analytics to xAPI with an LRS, and controlled modern stacks to cmi5

Your situation Standard Why
You ship courses into client or corporate LMSs you don’t control SCORM (1.2 default, 2004 when supported) Maximum compatibility is the whole job
You deliver through your own platform or embedded in your product Possibly none The platform’s native tracking is richer than a standards bridge; export standards only at the edges
You need analytics across apps, simulators, and real-world activity xAPI + an LRS The only standard built for cross-surface experience data
You control authoring and the LMS, both sides support it, starting fresh cmi5 xAPI data with SCORM-style launch discipline
You’re plugging a tool into a school’s or university’s LMS LTI Different job: integration, not packaging

Two notes on that middle row, because it’s the one vendor comparisons never print. Standards exist to cross system boundaries. When training runs where you already control delivery, inside your app or on your own decoupled course delivery stack, a standards layer buys portability you may not need. The price is the richer signals the platform tracks natively. The standards question is really a subset of the wider which systems to connect first question: SCORM and xAPI are two of the bridges, not the destination.

Where Mini Course Generator Fits

Mini Course Generator sits deliberately on both sides of the control line. When you deliver through MCG itself, embedded in your site or product, tracking is native: completions, scores, and certificates in the AI LMS without any standards bridge to maintain. That’s the “possibly none” row above, working as designed.

When the training has to travel, courses export to SCORM for delivery inside corporate systems you don’t control, including dynamic SCORM export on Growth and above (plans on the pricing page). Authoring stays in one place either way; if you’re building the content itself, the eLearning content development guide covers that side. Test the loop on the 14-day free trial: build a course, export the package, and run it in the destination system before you commit to a standard.

The Short Version

The SCORM vs xAPI choice is a control question wearing a technology costume. SCORM is the portability contract: package once, run in any compliant LMS, report completion and score. Its 1.2 version is ancient and still the compatibility floor. xAPI is the experience-data language: actor-verb-object statements to a learning record store, from anywhere, now backed by an IEEE standard. cmi5 runs xAPI data under SCORM-style launch rules and remains the successor-in-waiting. Choose by control: ship to systems you don’t own → SCORM; own your delivery → native tracking first; need cross-surface analytics → xAPI with an LRS; control both ends → consider cmi5.

Frequently Asked Questions

What is the difference between xAPI and SCORM?

SCORM packages a course to run and report inside an LMS browser player: completion, score, pass/fail, time. xAPI records any learning experience as actor-verb-object statements sent to a learning record store from any app or device. SCORM is a course-and-LMS contract; xAPI is an experience-data format.

What is xAPI in an LMS?

It means the LMS can send or receive xAPI statements: typically launching xAPI/cmi5 content, writing its own activity data to a learning record store, or both. Check which of those a vendor actually means, because “xAPI support” is used loosely.

Which LMS supports xAPI?

Support varies by depth. Many modern platforms can launch xAPI or cmi5 packages; fewer include a built-in LRS; fewer still emit rich statements about native activity. Ask a vendor all three questions separately rather than accepting a checkbox.

What is replacing SCORM?

Formally, cmi5: an xAPI profile with SCORM-style launch rules, production-ready since 2016 and maintained by ADL. Practically, nothing has replaced SCORM at scale yet; SCORM 1.2 remains the default trading format because it runs everywhere. Adopt cmi5 when both your authoring tool and your LMS support it.

Do you need an LRS for xAPI?

Yes, statements need a learning record store to land in; that’s the point of the format. Some LMS platforms include one. If all your training already runs in one system with adequate reporting, you likely don’t need xAPI or an LRS at all.

Sources

Start creating mini-courses today

Build interactive, AI-powered mini-courses in minutes — free to start.