Setting an expiration period for courses and learning programs helps you control how long learners can access your content. Expiration settings can be used to support time-limited access, encourage course completion within a specific timeframe, or manage the availability of your learning material.
When a product has an expiration period, enrolled users lose access once the defined time has passed. The expiration countdown starts individually for each learner on the date they enroll in the course or learning program.
In this article, you will learn how to configure the expiration date for courses and learning programs in LearnWorlds.
How expiration works
The expiration period for a course or learning program begins on the learner’s enrollment date. Once the configured period ends, the learner’s access expires, and the content can no longer be accessed unless access is manually extended or restored by the school admin.
Configure expiration date
1. Navigate to Courses & Programs.
2. Click on the product you want to update (course or learning program).
3. Navigate to Access.
4. In Program/ Course expiration, choose the expiration period by selecting the duration from the drop-down menu. You can set the course access to expire after a specific number of days, weeks, months, or years.
5. Click on Save.
- Expiration period is available only for courses and learning programs. Subscriptions work differently, as they provide access through recurring renewals and payments. Learners retain access for as long as their subscription remains active and successfully renewed, so subscriptions cannot support fixed expiration dates.
- If a course with its own expiration date is included in a Learning Program, the course expiration setting will not apply when users access it through the program. In this case, only the Learning Program expiration date is taken into account, provided that one has been configured.
- Changing or adding a product expiration period affects only future enrollments. Existing learners keep their current expiration settings unless you update them individually or through a bulk expiration date action.
Edit expiration dates for specific users
To edit expiration dates for individual learners navigate to the Users page.
1. Open the user profile and select the Products tab.
2. Locate the course or learning program you want to update.
3. Click the three-dot menu and select Edit expiration date.
4. Under Expiration options, choose one of the following:
- Does not expire: This removes the expiration date and restores ongoing access.
- Expires after a set period: Sets a new expiration period starting from the date the change is applied. For example, if you set an expiration period of 14 days, the product will expire 14 days from the day you make the change, regardless of any existing expiration date.
- Expires on specific date: This setting sets a fixed expiration date, e.g. 5 June, 2026.
5. Click Save.
- When you define a custom time period, the countdown begins from the moment the change is applied.
- For courses using payment plans, recurring Stripe payments continue even if the learner’s course access expires, unless the payment plan is manually canceled. Since billing and course access are managed separately, it is recommended to review these settings carefully to avoid confusion.
Bulk edit expiration dates for multiple users
You can also update expiration dates for several learners at once.
1. Navigate to Users → All users.
2. Select one or more users.
3. Click the three dots and select Edit expiration dates.
4. Review the list of selected users.
5. Select one or more courses or learning programs.
6. Choose how the expiration settings should be applied:
- Set a default expiration date for all the selected products – applies the same expiration rule to every selected product.
- Set separate expiration dates for each product – allows you to configure a different expiration rule for each selected product.
For each selected product (or for all products if using a default rule), choose one of the following options:
- Does not expire
- On a specific date
- After a period
- Add or subtract time

7. Click Apply.
The table below outlines the available expiration date options and how each one affects the selected user
| Option | Result |
|---|---|
| Does not expire | If the product has an expiration date, this option removes the expiration date for enrolled users. |
| On a specific date | Sets the expiration date to the selected future date. |
| After a period | Sets a new expiration date based on the date the action is applied, regardless of any existing expiration date. |
| Add or subtract time | Requires an existing expiration date. The specified time is added to or subtracted from the current expiration date. |
What happens after expiration
- Learners can no longer access the course or its learning materials.
- Their progress, scores, and completion data remain stored and will be restored if they are re-enrolled.
- Expired learners appear as Unenrolled due to expiration in reports and filters.
- Admins can extend access, reset the expiration period, or manually re-enroll learners when needed. Click here for the steps.
Regain access after expiration
To give access to an expired course while preserving user progress, such as exams and scores, you can use one of the options below:
- Re-enroll the learner to restore access to the course if a learner’s access has expired and they have been unenrolled. Υou can either apply a default expiration date to all included products or configure a different expiration period for each product individually. Further instructions are available here.
- Provide a 100% discount offer so they can re-enroll on their own. Here you can check how to create a URL with a coupon code already applied.
- Extend the expiration date from the user's profile. This change will apply only to that specific user. You can check the steps here.