Course communicating with LMS

Have you ever run into a situation where your course doesn’t pick up where you left off when you view it more than once on your LMS? Or maybe it does, but you’d prefer it start over from the beginning? The way your course responds when it’s relaunched is called the resume behavior. 

If your course isn’t resuming as desired, you’re probably wondering what’s going on and how to fix it. In this article, we’ll help you figure that out.

How Do I Control the Resume Behavior?  

First, let’s examine our options. If you’re using Storyline 360, Presenter 360, Quizmaker 360, or Engage 360, you can choose from three resume options:

Prompt to resume

If learners previously viewed part of the course, this option displays a prompt, asking learners if they want to pick up where they left off.

Always resume

This forces your course to open at the place where learners left off. They won’t see a prompt; it just happens automatically.

Never resume

This forces your course to always open at the beginning, even if learners completed part of the course previously. They won’t see a prompt.


If you’re using  Rise 360, the course will always resume from where the learner left off. 

How Does Resume Actually Work?

As a learner makes his way through a course, a compressed chunk of information—called suspend data—is sent to the LMS after each slide. This suspend data describes everything about the current state of the course, including the learner’s responses, navigation history, object states, variable values, interaction results, and more.

Course communicating information to LMS

When the learner opens the course again, it asks the LMS where they previously left off. The LMS sends the suspend data back to the course, and the course uses it to resume at the same point and in the same state as before.

LMS communicating back to course

Why Do Courses Fail to Resume?

A few things could get in the way of the resume communication process:

You exceeded the suspend data limit.

Your LMS might be imposing limits on suspend data. Older LMS specs, such as SCORM 1.2, have outdated restrictions on suspend data.

We recommend publishing for the latest edition of SCORM 2004, xAPI (Tin Can API), or cmi5. See these articles for more information:

You’re in a cross-domain environment.

If you’re hosting AICC content on a different server than your LMS, you may experience a cross-domain conflict. See this article for solutions. (Note that this doesn’t apply to Rise 360 courses.)

You already completed the course.

The resume feature might not work as you’d expect after you meet the completion requirement. Most LMSs consider a course to be in review mode after the tracking requirement has been met.

In review mode, resume data is no longer sent to the LMS, which prevents learners from accidentally changing their course status from Complete back to Incomplete. See this article for more information. (Note that this doesn’t apply to Rise 360 courses.)

Can I Examine Suspend Data?

Enable LMS debug mode to watch your suspend data flow back and forth between your content and your LMS. By doing so, you can verify that the data returned by your LMS upon resume is the same data that your content sent upon suspend—a common point of failure.

Course and LMS communicating back and forth

To help you avoid exceeding suspend data limits (see above), we compress suspend data. As a result, the suspend_data string in an LMS debug log isn’t human-readable. You won’t be able to decipher what it means, but you can see if the data sent to the LMS matches the data that comes back from the LMS.

Doesn’t My LMS Need to Read Suspend Data?

No. Only the course itself needs to be able to decompress and read suspend data. The LMS just functions as a handy place to store suspend data between attempts.

The Bottom Line

Now that you have a better understanding of how resume behavior works, you should be able to troubleshoot these issues more easily if you run into them.

Need more help troubleshooting? Check out these other resources:

Bill Dane
Jenny Marmolejos
Bill Dane

I assume you're publishing for SCORM 1.2 or 2004 Editions 1 or 2. To see how much suspend data you're using in SCORM Cloud, open the Course Sandbox page and click on the View Registration State button. Expand the last item in the list (usually the name of the course), and scroll down to cmi.suspend_data. Select the whole line (start at the beginning and drag down to select the whole line (it's a long line)). Paste that into Notepad and move the cursor to the end of the string and observe the character count in the footer of the Notepad window. That's how much you're using. I'm guessing it'll be close to the 4096 characters allowed with those SCORM versions. To test this, go back to the Course Sandbox page, scroll down to Course Properties, choose the Compatibility Setting tab. Chang... Expand

Bill Dane