Setting an expiry date for published content

Jan 30, 2013

Hi there.

As the title says, I was wondering if there was any way to set an expiry date for published content, which would basically stop users from being able to view the content after a specific date? I've used this feature in KnowledgePresenter before but can't find such a thing anywhere in Storyline.

It would be very handy, as we are basically looking to put our course on disc to send out to people to trial them, but we don't want them having access to our courses beyond the trial period.

Thanks again for any support on this.

81 Replies
Ashley Terwilliger-Pollard

Hi Martin,

There is not an expiration feature within Storyline, as it's often controlled by the LMS or the hosting platform you use. As to whether it will be a feature in a future version, I don't have any information to share in that regards, but the more feature requests the  better. :-) 

Jim McKay

We sell e-learning content to organizations all over the world on a yearly license basis.  We need a way to set an expiration date on the content so that when their year runs out the content stops working and they need to purchase a new license.  I'm actually surprised that this feature isn't in the program or in development.  Most organizations want the content on their own LMS and once they have it there we have no control over it.

Martin H.

Thanks for your post Jim McKay! Same problem as we have. I posted about it long time ago. Thanks also Mike B. for your response regarding SCORM Cloud. What do Articulate Staff say about that? Is that something that you may recommend or have you come closer to a built-in solution in Storyline? Pleased to hear.

Jim McKay

For what we do SCORM Cloud is way too expensive.  If we license a product to a company with 10,000 employees we would have to pay $1000s per month just to make sure they would have enough registrations for their 10,000 employees.  And that's just one company!  If Articulate's competitors have this feature, it certainly should at least be at least be on radar.  SCORM Cloud is a great site, but I think their prices are extremely unreasonable.  @Leslie  I'll do a feature request and hopefully Martin can resubmit too.

Mike B.


SCORM Cloud has a rather unique pricing strategy that I think you might have misunderstood. Check out:

"Do I have to keep paying for registrations each month once I have created them?

Great news! We want to be awesome to you, so you only pay for the registration when it was created. After that, learners can access the course as often and as long as they like (or you want them to) without any additional registration fees."

This means that you pay only for the registrations "purchased" that month. They even send you an email right before you are billed, I believe so that you can go into your account and change your plan accordingly if you have had a lot of registrations that month. This easily gets the cost per registration down to $0.10 each for large numbers. You should at least set up a trial account to check out their functionality,

We've worked with Geoff at Rustici (SCORM Cloud) quite a bit and their guys are amazingly helpful. Oddly, they don't really seem to be in it to make money, just to be SCORM evangelists. They do sell an Enterprise product though, if you would like your own SCORM Cloud.




Bj Wilson
Zio Fonta

there are some errors in the story provided by Garth on date validation, when validating date you cannot simply compare each expire value (year, month and day) to actual one, while you must proceed first comparing year, then month, and finally day.

here is a story file that should work well.

I put 2 layers to display the result of validation on each one.

expire date is set in JS but you could also set it by system variable and retrieve those variable when executing the JS.


Thank you for this it works great for CD and web and upgrades to version 2 well

Apoorv Jain

Hello, Garth Yorko, T.E.

I have created a module where I used a true/false variable. I also used a javascript code to set the expiry date of the module.

Now I want, if the value of my variable is true then show layer 1.

here I am sharing my .story file please have a look let me know.


Leslie McKerchie

Hi Apoorv - The reply by Garth is quite a bit dated. I'm not sure if he's still subscribed here, but you are certainly welcome to reach out to the user directly via the 'Contact Me' option on the user profile if you do not hear back soon.

Otherwise, hopefully someone will be able to chime in and help you with your JavaScript code.

Alyssa Gomez

Hi Tyler! 

A content expiration date is not a feature we have on our roadmap, but thanks for letting us know that feature would be useful for you!

In the meantime, is your content hosted in a learning management system (LMS)? If so, your LMS likely has a feature that will block users from accessing content after a certain date. 

Allison Owsley

We are actually using SCORM Cloud and the potential customer cannot get the dispatch file to work so we are trying to find a way to make the courses "expire" at the end of their contract so that we don't lose $$$ and proprietary content after that time. The "potential" client's LMS appears to be the issue and so not having this feature that is apparently common in SL's competitor's products is insane to me. Very frustrating!!!!!!!!!!!!!!!!!!!! AND the idea that we might have to manually edit all 130+ courses for someone just to get them to work for them and think about buying from us is outrageous.

Joe Lonn

I am happy to see that so many people are requesting this functionality to be in the software, but a little shocked that we are in the same place as the first request 6 years ago. We also sell SCORM packages in 1 and 3-year contracts and need a better way to ensure the files are disabled or expire so we aren't losing money. 

Leslie McKerchie

Thanks so much for chiming in to share that you would like to see this feature implemented as well, Kassie.

I've pulled together conversations in the forums as well as a few of the official feature requests that were filed so that we can better track this request.

I wanted to share some information about how we manage these feature requests as that may be helpful.