✦ Summary
Add a training video to Moodle as a SCORM 1.2 package so every learner's completion is recorded, then test it as a student before the course opens.
How to add video to Moodle and track who finished it
There are two ways to add video to Moodle. You can upload the MP4 as a plain file, which plays but records nothing about watching. Or you can upload it as a SCORM package, which records each learner's completion in the gradebook and the completion report. For training that someone will ask about later ("did the whole team watch the safety update?"), use SCORM.
This guide takes you from a finished video to a tracked Moodle activity: export a SCORM 1.2 package, add it to your course, set the completion rule, and test it as a student. It assumes you can edit the course. Moodle labels here match current Moodle; older versions word a few buttons differently, noted where it matters.
Plain video or SCORM package?
| MP4 as a File resource | SCORM package activity | |
|---|---|---|
| Learner experience | Opens or downloads the video | Plays inside the course page or a new window |
| What Moodle records | That the file was viewed, if you turn that on | Incomplete, then completed when your rule is met |
| Shows in the gradebook | No | Yes, as a grade item |
| Good for | Optional reference, a welcome message | Required training, compliance, anything you report on |
"Viewed" on a File resource means the learner clicked the link. It says nothing about whether they played the video. If you need more than that, you need the package.
Step 1: Export the video as SCORM 1.2
Open the finished video in Interlace and click Export at the top right. In the Format row, choose SCORM 1.2 instead of MP4 video.

A Complete at row appears. It decides when the package tells Moodle the learner is done:
- Play starts. Complete as soon as the video plays. Use it for announcements.
- 80% watched. Complete once the playhead passes 80% of the video. A good default for training.
- Fully watched. Complete at the end. Use it for compliance and safety.
The package marks completion on the playhead's position, so a learner who drags to the end also counts. SCORM 1.2 vs 2004 vs xAPI for video lessons explains what that rule can and cannot prove.
Under Render on, pick This device to build the zip in your browser (keep the tab open), or Interlace servers to have it built and saved with the video. A server-built package also includes the video's captions as VTT files, so the player shows a CC button. Press Download SCORM package, or Render and package on servers. You get a file named after the video, ending in -scorm12.zip.
Do not unzip it. Moodle wants the zip exactly as downloaded.
Step 2: Add a SCORM package activity in Moodle
- Open the course and switch on Edit mode (older versions: Turn editing on).
- In the section where the video belongs, click Add content, then Activity or resource. Older versions show Add an activity or resource.
- In the activity chooser, pick SCORM package.
- Give it a name learners will recognize, such as "Fire safety refresher, 2026".
- Under Package, drag the zip into the Package file box.
Step 3: Set appearance, grade and attempts
Most defaults are fine for a single video. Four settings are worth a look.
Display package. Current window plays the video inside the course page. New window opens it in a pop-up, which some browsers block. Current window is simpler for learners.
Height. Under Appearance, click Show more. Moodle's default stage height is 500 pixels, which on a wide screen can leave the player's title, video and status line scrolling inside a short box. Raise it (for example to 700) or use a percentage.
Grading method. Set it to Learning objects. Moodle's own docs recommend this when a package reports a status but no score, which is exactly what a video package does.
Preview. Moodle can offer learners a preview mode, and an activity finished in preview is marked "browsed", not completed. Set Disable preview mode to Yes so every launch counts.
Leave Number of attempts unlimited unless you have a reason. In Moodle, a SCORM 1.2 attempt only ends once the status is completed or passed, so a learner who stops halfway comes back to the same attempt.
Step 4: Set the completion condition
This is the step that decides whether completion shows up in reports.
- Make sure the course has Enable completion tracking set to Yes in the course settings. Without it, the completion options below do not appear.
- In the activity settings, open Completion conditions and choose Add requirements.
- Tick Require status, then tick Completed.
- Leave Require minimum score off. The video package sends no score.
- Leave View the activity off. On its own it would complete the activity the moment it is opened.
- Click Save and display.
Why Completed and not Passed: the package reports "completed" when your rule is met. It only reports "passed" when it carries a quiz, and a video exported from Interlace does not. Tick Passed alone and nobody will ever complete. If you built the package with a quiz in the free SCORM packager, tick Passed as well, or Require minimum score at your pass mark.
Step 5: Test it as a student
Test before the course opens, not after the first complaint.
- Enrol a test student account in the course and sign in as that student in a private browser window.
- Open the activity and click Enter. The player's status line should say it is connected to the LMS and tell you when you will be marked complete.
- Play past your rule, then leave the activity with Exit activity.
- Back on the course page, the activity should show as done.
Then, as the teacher, open the activity and click Reports. The basic report lists attempts per learner. Click the attempt number, then Track details, and you see the values the package sent: cmi.core.lesson_status should read "completed". For the course-wide view, use the Activity completion report.
If the status line says no SCORM API was found, the video still plays but nothing is reported. That usually means the package was opened outside Moodle, for example by unzipping it and opening the HTML file directly.
Fixes for the two common problems
Completion is not recorded
- Only Passed is ticked under Require status. Tick Completed.
- Completion tracking is off for the course. Turn on Enable completion tracking in course settings.
- The learner used preview. A preview attempt is recorded as browsed. Set Disable preview mode to Yes.
- The rule was never reached. With Fully watched, a learner who closes the tab ten seconds early is still incomplete. Check Track details for "incomplete".
- Settings changed after someone completed. Moodle locks completion options once anyone has completed. Unlock completion settings recalculates, but use it with care on a live course.
The zip is rejected
- "Missing imsmanifest.xml". Moodle needs
imsmanifest.xmlat the top level of the zip. This happens when a package is unzipped and zipped again as a folder. Upload the original download. - The file is too large. The file picker shows Max size. The limit is set by your Moodle admin, not by the package; ask them to raise it or export at a lower resolution.
- A blank page after upload. Moodle's docs point to a missing PHP zip extension on the server. That one is for your admin.
One more trap when you update a video later: Moodle keeps tracking data only if the new package's item identifier matches the old one. Interlace builds that identifier from the video's title, so keep the title the same when you re-export an updated version, then upload the new zip into the same activity.
A tracked video, tested once
The work is mostly in two settings: Require status set to Completed, and preview mode switched off. Get those right and test once as a student, and every video after that is a short upload. For more on how training teams use Interlace end to end, see Interlace for training teams, and if you want to wrap an MP4 you already have, the free SCORM packager builds a 1.2 zip in your browser. To make the videos themselves, join Interlace.