Skip to main content

SCORM Course Player: Best Practices and Recommendations Cheat Sheet

Best practices for SCORM course player settings in PlusPlus: launching, exiting, versioning, PDF and media thresholds, restarting registration, and interaction validation explained.

Written by Chris Ramlow

Disclaimer

Some behavior may or may not be available depending on how the courseware has been set up. If you purchase eLearning content off the shelf, it’s important to check with your provider regarding the expected behavior. For example, if you wish to launch the course in a frameset but the courseware provider has a built-in redirect, the course may launch in a pop-up window regardless of your player settings.

PlusPlus plays eLearning courses through Rustici SCORM Cloud. The settings below are SCORM Cloud player settings, and the option names and defaults in this article follow Rustici’s configuration reference.

Course Launching and Exiting: Best Practices

Launching My Course In or Not In a Pop-Up

(Section Name: Player Launch Type)

  • Recommendation:

    • For a seamless learner experience, we recommend launching the course in a new window (pop-up). This minimizes distractions from the learning environment (e.g., an LMS menu) and gives the course the whole browser window. Note that a pop-up is not automatically full-screen; the learner can still resize it.

  • Launch Options:

    • Display in a child frameset: The course appears within the main LMS interface. This is the SCORM Cloud default.

    • Display in a pop-up window: Opens a separate window. Best for SCORM content.

    • Display in a pop-up window after click: Shows the learner a link to click before the window opens. Because the window opens from a click, browser pop-up blockers allow it.

    • Display in a pop-up without toolbar: Removes extra browser elements, keeping learners focused.

    • Display in a pop-up without toolbar after click: Same as above, with the click prompt that avoids pop-up blockers.

    Pro Tip: If learners report that the course never opens, a pop-up blocker is usually the cause. Switch to one of the “after click” options rather than asking learners to change browser settings.

    Note: A second setting, Player SCO Launch Type, controls how the player opens the content inside it and has the same five options. Setting both to a pop-up can produce two or three windows. If you see extra windows, set the SCO launch type to frameset and keep the pop-up on Player Launch Type.

Exiting My Course Options

(Section Name: Player Final SCO Course Exit Action)

  • Types of Course Exits:

    • Exit After Asking Learner’s Permission: Gives learners control and ensures they are ready to leave.

    • Exit Immediately: This option can help keep content flow streamlined but may disrupt learner continuity.

    • Display Status Message: Before exiting, inform learners about the status (e.g., complete/incomplete).

    • Go to Next SCO: Immediately moves to the next activity. Only meaningful for multi-SCO courses and not for the final SCO.

    • Do Nothing: The player takes no action and the learner navigates manually.

  • Best Practice:

    • For courses with final assessments or key milestones, we recommend the "Exit after asking permission" setting, so learners can confirm their progress before exiting.

  • Note: “Final SCO Course Exit Action” is a family of eight settings, one for each combination of whether the course is satisfied (passed) or not satisfied, and which exit type the content reported: normal, suspend, timeout, or logout. The same five actions are available for each. See Handling Timeouts and Suspensions below.


Versioning My Course: How to Ensure Users Get the Most Current Version

(Section Name: When To Restart Registration)

  • What Versioning Does:

    • When you import a new version of a course, this setting decides whether learners who already have a registration are moved to the new version, and when. Moving a registration creates a new instance on the new version. To the learner this resets their progress: bookmarks, completion, and score start over on the new instance. The previous instance is kept for reporting.

  • Options for Versioning:

    • Never restart existing registration (default): Learners continue on the version they started with. Only learners who launch for the first time after the import see the new version.

    • Restart when a newer version exists: Every existing registration, including completed ones, is moved to the new version on its next launch. In-progress learners lose their place and completed learners are reset to incomplete when they reopen the course.

    • Restart when incomplete and a newer version exists: Only registrations that are incomplete (or unknown) are moved. Completed learners keep their completion.

    • Restart when complete and a newer version exists: Only completed registrations are moved. In-progress learners finish the version they started.

    • Restart when passed and a newer version exists: Only registrations that are complete and passed are moved.

    • Restart when failed and a newer version exists: Only registrations that are complete and failed are moved.

    Best Practice: Leave the default (Never) for most updates such as typo fixes and small content changes. Use Restart when incomplete and a newer version exists when a fix must reach learners who are mid-course and you accept that they lose their place.

    Avoid Restart when a newer version exists on compliance and regulatory courses: it silently resets completed learners to incomplete the next time they open the course. If a new version must be retaken by everyone, use Restart when complete and a newer version exists together with a reassignment so the retake is visible and tracked. See Assignment and Re/assignment Management Best Practice.


Enforcing Time on PDF Pages

(Section Name: PDF Content Page Duration Threshold)

  • Setting Time Spent on a PDF:

    • You can require learners to spend a minimum amount of time on each page of a PDF that was imported directly as a course. This setting does not affect PDFs embedded inside a SCORM package; those are controlled by the courseware itself.

  • How to Configure:

    • Use the PDF Content Page Duration Threshold setting. This is the number of seconds a learner must view a page before it counts toward progress and completion. The default is 5 seconds.

    • Recommendation: Keep a modest threshold (e.g., 5-10 seconds per page) to ensure learners engage with the content but avoid frustration from forced waiting periods.


Restarting Registration: What Does It Mean?

(Section Name: When To Restart Registration)

  • Definition:

    • Restarting a registration resets the learner's progress in a course. It increments the registration’s instance number, which allows tracking of the new attempt while preserving the previous one.

  • When It Happens:

    • New Version: Every “restart” option in the versioning setting requires a newer version of the course to exist. A restart is triggered on the learner’s next launch, not at import time.

    • Recurring Training: This setting does not reset completed learners on a schedule. For annual compliance or other recurring training, reassign the course in PlusPlus so learners get a fresh attempt and a new due date. See Assignment and Re/assignment Management Best Practice.

  • Best Practice: Use a restart option when a significant content update requires learners to start from the beginning. Use reassignment when learners need to retake an unchanged course.


Additional Best Practices for eLearning Course Management

Detailed Attempt Information

(Section Name: Player Capture History Detailed)

  • What It Does:
    This setting makes the player send detailed launch-history information to SCORM Cloud. It is diagnostic data about each launch. It does not change what is recorded for the registration itself, and it does not add learner analytics to PlusPlus reports.

  • Best Practice:
    Leave it at the default. It is mainly useful when troubleshooting a course with PlusPlus support, alongside the steps in Debug eLearning course issues.


Progress Bar Display

(Section Name: Player Show Progress Bar)

  • What It Does:
    This setting controls whether a progress bar is visible to learners, showing them how far along they are in the course.

  • Best Practice:
    Enable the progress bar for courses with multiple modules or longer content. It helps learners stay oriented and motivated as they track their progress through the material.


Completion and Score Tracking

(Section Name: Player Is Completion Tracked / Player Is Score Tracked)

  • What It Does:
    These settings declare whether the course package reports completion and score in a meaningful way. They do not make a course report data it was not built to report; they tell the player which reported values to trust. They are normally set correctly at import from the package’s manifest.

  • Best Practice:
    Leave both enabled for courses that have assessments or graded activities, so learner performance is accurately recorded. Turn score tracking off only for a course that never reports a score, so that an empty score is not shown as zero.


Force Objective Completion Set by Content

(Section Name: Player Force Objective Completion Set By Content)

  • What It Does:
    SCORM 2004 only. This option overrides the manifest’s “objective set by content” and “completion set by content” flags to true, so the status the content reports at runtime is used instead of a status derived by the sequencer from its rollup rules.

  • Best Practice:
    Use this setting if you want the content itself (e.g., a final quiz or assessment) to determine whether learners have completed the course, and the course is showing an unexpected status because of its sequencing rules. It has no effect on SCORM 1.2, AICC, xAPI, or cmi5 courses.


Satisfaction and Completion Rollup

(Section Name: Player Satisfied Causes Completion / Player Rollup Runtime at SCO Unload)

  • What They Do:
    Satisfied Causes Completion: when an activity is marked passed, the player also marks it completed. This helps courses that report a pass but never report completion.


    Rollup Runtime at SCO Unload: controls when the player rolls up runtime data, forcing a rollup every time a SCO unloads rather than only at specific points. This helps courses whose status is not updated until the learner exits.

  • Best Practice:
    Enable Satisfied Causes Completion when a course passes learners but leaves them incomplete. Enable Rollup Runtime at SCO Unload when a multi-SCO course shows stale status between activities. How multiple SCOs combine into one course status is controlled by the separate Status Rollup Mode and Score Rollup Mode settings for SCORM 1.2 courses, or by the course’s own sequencing rules for SCORM 2004.


Handling Concurrent Launches

(Section Name: Force Exit Concurrent Launches)

  • What It Does:
    SCORM Cloud always detects when the same learner launches the same course in a second window. By default it shows the learner a “concurrent launch detected” page. With this setting on, the earlier launch is exited automatically instead, and the new window continues without the warning page.

  • Best Practice:
    Leave it off if you want learners to see why their first window stopped working. Turn it on if learners frequently open a second window by accident and the warning page causes support tickets. Either way, the earlier window’s data is not allowed to overwrite the newer one.


Enforcing Completion of Media Content

(Section Name: Media Content Completion Threshold)

  • What It Does:
    This specifies the percentage of an audio or video file that must be played before it can be marked "complete." It applies only to media files imported directly as a course. Video inside a SCORM package is controlled by the courseware itself.

  • Best Practice:
    The default is 95%. Keep it between 90% and 95% so learners who stop during closing credits are not left incomplete.


Lookahead Sequencer

(Section Name: Player Lookahead Sequencer Mode)

  • What It Does:
    For SCORM 2004 courses, this controls how the player enables or disables activities and navigation controls based on the learner's possible future paths through the sequencing rules. Options are Disabled, Enabled, and Enabled with real-time status updates.

  • Best Practice:
    Keep the default (Enabled). For complex courses with branching paths or prerequisites where the menu appears out of date, switch to real-time status updates so learners only see the activities available to them.


Validating Interaction Responses

(Section Name: Player Validate Interaction Responses)

  • What It Does:
    When on (the default), the player checks that quiz interaction responses and correct responses match the format the SCORM version allows. SCORM 1.2 only allows a single number or character per choice, so a course that sends descriptive answer text such as “Paris” will have those responses rejected.

  • Best Practice:
    Leave validation on for standard content. Turn it off if your authoring tool records descriptive text in interaction responses and you see missing or empty quiz answers in reports.


Handling Timeouts and Suspensions

(Section Name: Player Final SCO Course Not Satisfied Timeout Exit Action / Player Final SCO Course Satisfied Suspend Exit Action)

  • What They Do:
    These settings pick the exit action for each exit type the content reports when it closes. “Suspend” means the course exited with its exit flag set to suspend, which is how most content saves a bookmark when the learner leaves mid-course. “Timeout” means the course itself reported a time-out, for example a content-enforced time limit. These are not LMS session timeouts or browser inactivity. There is one setting for each combination of satisfied or not satisfied and normal, suspend, timeout, or logout exits.

  • Best Practice:
    Customize these actions to align with your course structure. For example, displaying a status message on a not-satisfied timeout can help learners understand that they need to revisit specific sections, while a satisfied suspend exit can simply exit the course.


Final Thoughts

By implementing these settings and best practices, you can significantly enhance the learner experience, ensure accurate tracking of progress, and maintain up-to-date content in your courses. For any specific customizations or behavior settings, always consult with your courseware provider, especially when using off-the-shelf eLearning content.

Did this answer your question?