What is Tin Can?
When someone takes an e-learning course, the course sends out short messages about what happened: Ann started the course, Ann answered question 3, Ann passed with 85%. Tin Can is the agreed format for those messages and the agreed way of sending them, so that any course can talk to any system that collects them.
That collecting system is called a Learning Record Store, or LRS. It is to Tin Can what the LMS is to SCORM: the place the results end up, where you can see who did what.
Ann Murphy passed Fire Safety Basics with a score of 85%
- Actor
- who did it: a learner, by email or account
- Verb
- what they did: started, answered, completed, passed…
- Object
- what they did it to: a course, a slide, a question, a video
These messages are called statements. A typical course sends dozens per learner.
Tin Can, xAPI, Experience API: one standard
The standard was developed for the US Advanced Distributed Learning Initiative (ADL), the organisation behind SCORM, by Rustici Software, under the project name Tin Can. Version 1.0 was published in 2013 with the official name Experience API, xAPI for short. The name Tin Can stuck, so authoring tools often say “xAPI (Tin Can)” or “Tin Can API”. They all mean the same thing. Most courses today use version 1.0.3; a later version is published as IEEE standard 9274.1.1.
Tin Can or SCORM?
SCORM is older and every LMS supports it, so it is still the safe choice when your course lives in an LMS. Tin Can is the better choice when you want more detail, or when your learners aren’t in an LMS at all.
| Compared | SCORM | Tin Can (xAPI) |
|---|---|---|
| Where the course runs | Inside an LMS | Anywhere: an LMS, a web page, a link in an email, an app |
| Where results go | The LMS that launched it | Any Learning Record Store |
| What is recorded | Completion, score, time and a limited list of answers | Anything: every answer, slide, video, retry |
| Supported by | Practically every LMS | Modern authoring tools; many LMSs, often through an LRS |
| Your data | In the LMS’s own format | Standard statements you can move to any LRS |
How to publish a Tin Can course
You don’t write any code. In your authoring tool, publish for an LMS and choose the Tin Can / xAPI option. The menus move around between versions, but it is roughly:
Articulate Storyline 360
Publish → LMS, then choose xAPI (Tin Can API) as the LMS type.
Articulate Rise 360
Export → LMS, then choose xAPI (Tin Can) as the reporting standard.
Adobe Captivate
In the publish settings, set the reporting standard to xAPI.
iSpring Suite
Publish → LMS, then choose Experience API (xAPI) as the profile.
You get a zip file. On its own it doesn’t record anything: it needs to be launched with the address of an LRS and the details of the learner. That is the part that usually needs a developer or an LMS that supports it.
The easy way: let us host it
Upload the zip to Learn Skills LRS. We host the course, launch it with the right details and record every learner, with reports you can read at a glance. Share it as a link, or add it to Moodle as a small package. Got a SCORM export instead? That works too: we record it as Tin Can statements.
See Learn Skills LRSQuestions
Is Tin Can free to use?
Yes. It is an open standard; anyone can use it without a licence. You only pay for the LRS or hosting, if you use a hosted one.
Do I need an LMS for Tin Can?
No. That is one of the main differences from SCORM. A course can be launched from a link, a website or an app, and still report to an LRS. You can use an LMS too, if you have one.
What is cmi5?
cmi5 is a set of rules on top of xAPI for courses launched from an LMS: how the LMS starts the course and what it must send. It combines the reach of SCORM with the detail of xAPI. Support in tools is growing.
Can I see the results without technical skills?
Not in a bare LRS: it stores statements, which look like code. That is why Learn Skills LRS turns them into course and learner reports.
Where can developers read more?
On xapi.ie, our technical guide to statements and the LRS API.