Choosing LMS Standards: an Overview of AICC, SCORM, xAPI, and CMI-5

When implementing e-learning, you will encounter many guidelines regarding learning strategy, content quality, personalization, etc. However, the very first ones you will need to address are the basic principles of building the learning platform and organizing content files.

In this article, we will review the major existing LMS technical standards, their objectives, strengths, and weaknesses so that you can make an educated choice.

What are LMS standards, and why do they exist?

At the dawn of online learning in the 1980s, if you wanted to train people on computers, you would have to develop your own e-learning program with courses and then stick with it, as everyone would build their custom solution differently. That meant you couldn't use others' content on your platform, and if you wanted to switch platforms, you'd have to re-make your training content from scratch.

That's when various organizations decided to standardize the way LMSs deploy courses so that everything works with everything seamlessly. They started to put out different technical LMS standards — sets of principles for LMSs and authoring tools to streamline how courses are created, packaged, and delivered, thus ensuring interoperability between platforms:

  • What metadata the content should have: labels, indexes, the order of the learning objects in a course, etc.

  • What data the LMS gathers about the course and the learners' progress, and how.

Five standards are currently dominating the market: AICC, SCORM, xAPI, cmi5, and IMS Common Cartridge.

Chart LMS Standards
In 2019, xAPI's developer Rustici Software published statistics on courses uploaded to the SCORM cloud. As you can see, SCORM 1.2 and AICC, essentially legacy standards, lead by a long shot. The e-learning market has been quite inert in adopting new tech.

While they were created for developers primarily, they affect everyone in the field, regardless of the role:

  • For instructional designers, compliance with an e-learning standard dictates across which platforms they can distribute their courses.

  • For LMS developers, the standards provide a design framework that ensures interoperability between different LMSs.

  • And for clients looking for an LMS to buy, the standard support affects a long-term strategy: what content features they need, how they will measure results, and what they will do if they need to change platforms in the future.

If you work with LMS somehow, you work with the LMS standards it supports, so knowing your options can be helpful. 


AICC stands for Aviation Industry Computer-Based Training Committee — an association of training professionals from major aircraft manufacturers, such as Airbus, Boeing, and McDonnell Douglas, formed back in 1988. The main goal of AICC was to make LMSs interchangeable so that they could reuse their courses across companies. 

They developed an LMS specification named CMI001, or Computer Managed Instruction that laid the groundwork for all future standards and is still widely used.

The organization disbanded in 2014, but its repository remains available.

How it works

AICC's CMI is a vocabulary that an LMS and a learning module can use to communicate how to deploy the module. At first, CMI covered runtime interoperability for CD-ROM/LAN operation with files stored locally. Then AICC also included guidelines for an HTTP-based interface and a JavaScript API runtime interface for situations when the LMS and content packages are stored on different domains.

It has a set of predefined variables sent back and forth between the LMS exchanges and the content package via HTTPS. For example, the learning module sends a variable where a minimal score for passing the module is set. LMS sends back the variable containing a student's score and the module signals to the LMS whether the student passed successfully.

AICC schema

These variables are universal. However, some of them are optional, so even if both platforms support AICC, they may still use different variables and not be fully interoperable.

Pros and cons

AICC is a straightforward standard that is comparatively easy to implement. The content package and the LMS communicate using HTML forms and simple text strings.

It also supports hosting on different domains, meaning you can host the learning materials on a server separate from the LMS.

Finally, the data is transferred via HTTPS, making it more secure than other options.

However, AICC is as limited as it is straightforward. It doesn't track users' progress, hence no reporting either. Moreover, it won't receive updates anymore since the organization ceased to exist. And as time goes by, fewer and fewer LMSs and authoring software will support this standard, making it the opposite of future-proof. Besides, as mentioned earlier, not even formally compliant platforms are fully interoperable due to the standard's vague nature.

When to use it

AICC is a legacy standard, so the only circumstances in which you will need it is when you have to work with software that supports CMI and nothing else.


In 1999, the US government started developing new e-learning standards and specifications for the federal and private sectors. That's how the Advanced Distributed Learning organization, or ADL, emerged.

The ADL investigated existing specifications, including AICC, and compiled its version, Shareable Content Object Reference Model, or SCORM. A new standard targeted not only LMSs but also authoring tools. That meant that you could choose between SCORM-compliant platforms without worrying whether your courses would load and create automatically compliant content with an authoring tool. The process became so much easier that it secured SCORM's swift adoption and 2/3 of the market.

There were several editions of SCORM throughout the years. However, the most widespread are SCORM 1.2, released in 2001, and the latest editions of SCORM 2004. After the 4th edition of SCORM 2004 was launched in 2009, there were no further developments.

How it works

SCORM versions slightly differ from each other. SCORM 1.2 covers two main aspects of deploying a learning module on the LMS:

  • Content Aggregation Model (CAM)

As the name suggests, CAM sets a template for aggregating the course content into a folder with a standardized structure — a SCORM package. In this folder are all the learning content files and a "manifest" file — .xml with all the necessary metadata the LMS needs to load and deliver the course correctly. SCORM-compliant authoring tools build the package automatically.

SCORM schema

The SCORM package can be saved as a .zip archive and loaded into any LMS supporting SCORM.

  • Runtime Environment (RTE)

RTE is a successor to AICC's CMI specification for JavaScript. It is a vocabulary of variables for the communication between the LMS and the SCORM package, but unlike AICC, it also tracks learners' progress.

What's worth noting is that some of the fundamental variables in SCORM 1.2 and 2004 versions differ.

Next, SCORM 2004 added one more specification on top of CAM and RTE — Sequencing and Navigation (SN). What distinguishes SN from the previous sequencing is that a SCORM package can include a whole course composed of multiple individual shareable content objects (SCOs). Depending on the user's actions, these SCOs can be algorithmically reused and moved between the modules. As a result, SCORM 2004 supports adaptive learning.

Pros and cons

SCORM is a significant improvement compared to AICC. It is clear-cut, with limited but sufficient metadata and no optional variables nonsense that made AICC compliance patchy. It allows LMSs to record at least some user activity, course completion, scores, etc. It's more user-friendly — creating new and repurposing older content into a SCORM package is easy. Most LMSs and authoring tools support SCORM, so it's been an industry standard for a while.

However, the ADL maintains documentation for SCORM 1.2 and 3rd and 4th editions of SCORM 2004 only, and they last saw an update in 2009, so the project is practically over. By today's standards, SCORM is obsolete:

  • SCORM is web-based and requires a constant connection to the LMS. If the user has trouble with their internet connection, their progress won't be saved.

  • The LMS and the learning content must be on one domain, limiting the infrastructure flexibility.

  • As a standard from the 2000s, only the latest — 4th — SCORM edition supports mobile learning. Unfortunately, it's far less popular, as the market decided to stay on simpler and older SCORM 1.2, which only works with web-based LMSs. The new abilities to build and mix up courses offered by SCORM 2004 are not widespread for the same reason.

  • SCORM doesn't gather enough user progress data for any informative reporting.

  • Another thing that shows how dated the standard is is that it was designed with Flash content in mind. It uses HTML5 now; however, sometimes, it affects the quality of the rich media output.

When to use it

If you care for interoperability and have lots of content you want to transform into simple courses and share via LMS quickly, SCORM will do just fine. Even though it's dated, it's safe to say that SCORM will be around for a while.

If you put more weight on rich experiences, learner analytics, or mobile, look into the standards below.


The limitations of SCORM had become apparent by the late 2000s already, so in 2008 an organization named Learning Education Training Systems Interoperability (LETSI) prepared white papers that the ADL Initiative and Rustici Software used to develop the next generation of e-learning standards. The new standard had to solve the following issues of SCORM:

  • The inability to function without a stable internet connection.

  • The need to host an LMS and learning courses on the same server.

  • Nonexistent learner analytics.

  • Security flaws.

The project was named Tin Can, and the official version, named Experience API or xAPI, was launched in 2013.

How it works

xAPI is not only a suite of specifications that ensure you can reuse content on different platforms but also an API that can link different platforms and programs and capture the user's learning experiences everywhere. As the ADL Initiative specifies on its website, "It can track and store data on any imaginable activity, such as:

  • Reading an article or interacting with an eBook.

  • Watching a training video, stopping and starting it.

  • Training progress data from a simulation.

  • Performance in a mobile app.

  • Chatting with a mentor.

  • Physiological measures, such as heart-rate data.

  • Micro-interactions with e-learning content.

  • Team performance in a multi-player serious game.

  • Quiz scores and answer history by question.

  • Real-world performance in an operational context."

To do that, xAPI connects RESTful web applications via API — a secure interface through which applications fetch each other requests and responses in JSON format, i.e., GET, PUT, POST, and DELETE statements. These statements are standardized and cover almost every type of learner's statistics. They cover so much, actually, that xAPI even has different Profilesseparate vocabularies of terms and variables for different contexts, course subjects, and media formats — to help users interpret the data.

The responses are then sent not to an LMS but to a Learning Record Store (LRS) — a server that filters, stores, and visualizes the learners' activities and performance database. LRSs can share data with each other in a distributed system. They can also be built in an LMS or exist separately, which makes the xAPI standard non-LMS-specific. And they support different access types — public, private, or mixed.

xAPI schema

The last version of xAPI was released in 2016, and the ADL Initiative doesn't plan to update it further.

Pros and cons

xAPI successfully resolved the main SCORM's shortcomings:

  • An xAPI-compliant system doesn't rely on a constant internet connection. The learner's device can store stats and send them to the LRS later when it's back online. That's why xAPI can track offline activities too.

  • Using an API and dedicated storage frees organizations from hosting an LMS and the content on the same domain or using an LMS at all. You can build an architecture that works best for you instead of relying on one specific software.

  • With xAPI, you can essentially harness Big Data and produce unmatched learner analytics.

  • xAPI's ability to gather data from anywhere opens great possibilities for integrating offline activities and modern interactive technologies that would otherwise be unavailable with an LMS: mobile learning, game-based learning, AR/VR, etc.

However, xAPI covers communication between a learning experience and an LRS only. It doesn't define the course structure or the communication between the learning content, the platform where it's hosted, and the learner.

Overall, xAPI grants users a high degree of freedom, which comes with consequences. First, security: while the JSON requests and responses sent in a RESTful environment are generally safe and private, the safety of LRSs where all the data is stored depends on you and you only.

Second, achieving tangible ROI requires some level of technical awareness. You control what metrics you track, what results you measure, and how you contextualize them, and it's easy to spam yourself with useless data.

Finally, xAPI has yet to become as popular as SCORM, so there might be some difficulties with finding an interoperable platform, though the biggest and most popular LMSs support the standard.

When to use it

xAPI is ideal for creating interconnected learning ecosystems with rich, diverse, non-linear learning experiences not confined to LMS. Or if you need extended analytics and reporting.

However, if you plan to work with traditional LMS courses, xAPI might be overkill, and SCORM 2004 would suffice.


After AICC disbanded in 2014, their working group joined the ADL Initiative's project on addressing the complexity of xAPI implementation and refining those parts of the specifications that were meant for traditional LMSs.

The task was similar to what SCORM did for AICC: you have a standard with many variables that tend to go all over the place, and you need to design some constraints to make it more manageable. That's cmi5's purpose — to specify how to package xAPI for traditional LMSs to facilitate the standard's adoption.

As a result, in 2016, the ADL Initiative released this new xAPI Profile designed specifically for LMSs and named it cmi5 — like in CMI001, or Computer Managed Instruction, the very first AICC's e-learning guideline. In addition, they now host weekly cmi5 working group meetings for cmi5 adoption and have even published a book with the cmi5 compliance guide.

How it works

Like SCORM, cmi5 sets LMS interoperability rules: how to launch content, authenticate learners, manage their sessions, and report on their progress — everything xAPI lacks. cmi5 package thus contains the analog of the "manifest file" — cmi5.xml — describing the course structure. The other necessary metadata cmi5 defines are language options, adaptive completion behaviors, and whether the content should launch embedded in the LMS or in a new tab (SCORM can only launch content in a pop-up window).

Unlike SCORM, cmi5 supports the packaging of both traditional LMS courses and content hosted separately, e.g., on mobile apps or offline. These pieces of content are named Assignable Units (AUs), and they can be launched outside the LMS too, e.g., on mobile apps, game-based simulators, or IoT devices, so technically, if you store some learning files on a smart fridge, you could launch them on it too. It's wild how easily you can reach your learners with xAPI and cmi5.

cmi5 schema

The launching process has also changed. cmi5 introduced a handshake mechanism where the AU requests credentials from the launch system before loading, adding an extra security layer to data exchange. These credentials include configurable permissions and expire after the session.

And as an xAPI instantiation, cmi5 uses xAPI's vocabulary to record the learners' experiences and send it to the LRS. To simplify xAPI implementation, cmi5 uses a constrained set of statements but still collects a reasonable amount of data.

Pros and cons

Feature-wise, cmi5 bridges SCORM and xAPI, embodying the best of both worlds.

cmi5 largely repeats SCORM as a standardization effort. However, it's a cut above its predecessor regarding packaging and infrastructure flexibility, data safety, and tracking abilities. You can package and launch whatever and wherever you want and even group statistics by separate AUs.

At the same time, it's an xAPI's "plug and play" for legacy e-learning platforms that makes xAPI more accessible: you don't need to choose, set up, define, and categorize statements as it's already done.

What sets cmi5 back is that it's even less popular than xAPI, let alone SCORM, at the moment, and you still might encounter some issues implementing it in the legacy infrastructure. However, it will surely win more trust from LMS and authoring tool providers and spread across the market in the future.

When to use it

Aside from legacy considerations and a small market share, there's no reason not to use cmi5. It's far more potent than SCORM and more straightforward than xAPI.

It's also a future-proof standard that will be updated and grow in popularity. Currently, the ADL Initiative and IEEE are working to make cmi5 an international standard.

And if your e-learning platform and authoring tool of choice already support xAPI, then switching to cmi5 is really a no-brainer.

Common Cartridge

Back in the 1990s, along with the ADL Initiative, there was one more non-profit organization concerned about the state of e-learning — EDUCAUSE. In 1997, they launched a project named the Instructional Management System Global Learning Consortium, or IMS GLC, and two years later, it became an independent organization focused on edtech interoperability.

Some of the IMS's work was used in SCORM, but then they focused on their own developments. While SCORM streamlines content packaging and LMS runtime for self-paced online learning, the IMS focuses on higher education's needs where instructor-led and blended learning are prevalent.

In 2008, the IMS released Common Cartridge. It's a set of open standards meant to extend and fill up some SCORM limitations concerning interoperability within a given e-learning ecosystem. Instead of trying to pack an LMS course in a way that it can be deployed in another LMS, with Common Cartridge, you can load any external content on your LMS.

The latest 1.4 version of Common Cartridge went out in 2020, and the IMS, now named 1EdTech, keeps honing its standard.

How it works

Common Cartridge is a file in the package that includes several pieces of crucial data, and almost each of the aspects is covered by a separate standard:

  • The manifest file describes the content of the cartridge, somewhat similar to SCORM's manifest file. What differs is that the content it describes doesn't have to be inside the package. External sources are referenced by URLs, and they can be whole applications.

  • Metadata labels and organizes the cartridge's content by roles, purposes, curriculum standards, etc. A native IMS specification would be the Learning Object Metadata (LOM), but Common Cartridge allows for any other metadata schemas.

  • Internal content and embedded files can be included in the package as HTML files, PDFs, EPub textbooks, videos, and text documents.

  • Learning Tools Interoperability links integrate external content into the learning experience accessible through an LMS. It can be web pages or apps, e.g., content libraries, social networks, assessment platforms, etc. Linked applications and the LMS exchange data in XML files that are then delivered via the LMS.

  • Assessment data comprises tests, assessments, and question banks. The standard allows the LMS to import and manipulate external assessments to complement the pre-configured ones with additional questions. Several question types are available: multiple choice, true/false, essay, fill-in-the-blank, and pattern matching.

Common Cartridge also allows pre-populating the learning platform with links to external resources, and forums and discussions — with exercises and questions.

Common Cartridge schema

As you can see, Common Cartridge carries a lot of features that might be confusing to implement. However, you don't have to adopt a whole pack. Instead, you may start a subset of the features and adopt them incrementally. Alternatively, you can use a so-called Thin Common Cartridge (TCC): this cartridge only supports web links, LTI links, and metadata.

Pros and cons

As a standard created by educators and for educators, Common Cartridge is far more adept in integrating external sources and tools, blended learning activities, and enhancing collaborative learning and ILT than SCORM. However, these standards share the same DNA, so migrating the content to CC is fairly easy. That's why it's growing notably, as more and more organizations in school and academic education become compliant.

The standard's implementation flexibility doesn't hurt either. Once it's set up, there will be no need to re-make and re-upload content or set up integrations and APIs.

Another reason working with Common Cartridge might be easier is eliminating the runtime aspect from the equation. You can manage sequencing and tracking or change the content within the package.

The downside is that it's not so widespread yet among LMS and authoring tool vendors and has fewer tracking abilities than xAPI or cmi5, so it might not be self-sufficient enough.

When to use it

Common Cartridge is optimal for interactive and blended learning that involves:

  1. A lot of assessments and learners' collaboration.

  2. A vastly distributed ecosystem of tools and platforms with tons of content scattered around.

  3. The need to customize and exchange content, including external, without intermediaries.

LMS Standards Comparison Chart

Overall, what standard to choose depends heavily on what kind of learning you provide, how large your ecosystem is, and how much weight you put on analytics. For example, if you stick to traditional online courses, SCORM 2004 is ideal. On the other hand, if you want to integrate learner analytics and lots of useful external tools, then xAPI or cmi5 will suit you best. And for academic learning with a massive role of in-person and collaborative work and an extensive library of content, Common Cartridge is the way to go.

To summarize our overview, here's a table with all five e-learning standards compared in key parameters.

Overview e-learning standards

It's also worth noting that learning platforms usually support several standards, so you can migrate to a more suitable standard without changing a platform. For example, Opigno supports both SCORM 1.2 and 2004 and xAPI. Our team also provides technical support and development services to help you transition smoothly.

Published on April 18, 2023