LifterLMS Cookies FAQ
LifterLMS has three distinct cookies that are used.
These are: llms-tracking, wp_llms_session, and if you’re using the LifterLMS Stripe integration, Stripe adds the m.stripe.network.
These three are all expected and necessary cookies to make sure your LifterLMS course site runs smoothly.
The llms-tracking cookie is a session cookie. This cookie is set and reset server side. As of now, it’s mainly used for the Advanced Videos add-on: it stores the video related events (start, pause, ect.) as a buffer prior to the dataset being sent to the server on video completion. It’s a session cookie, meaning that expires when you close the browser.
The wp_llms_session cookie is used for two main reasons:
1. To store the coupon at checkout. LifterLMS leverages the session cookie so that if the user adds a coupon but doesn’t buy the course, then navigates to another page, then comes back to the checkout the coupon is still there.
2. To store notices for both logged in and logged out users. For example, if a visitor tries to visit to a lesson which is for enrolled users only, LifterLMS will redirect them to the course page (or sales page) and show the visitor a restriction message. The process for this looks like a visitor lands on the restricted lesson, LifterLMS will check whether they can view the lesson or not, then it sets the notice in the session cookie, redirects the visitor to the course page or sales page, where LifterLMS then looks into the session cookie for the notice to display and, finally, displays it.
This cookie lasts minimum 6 hours, but if the visitor is still active on the site after 5 hours the expire time is postponed of another 6 hours and so on.
The m.stripe.network cookie will only show up if you are using the LifterLMS Stripe integration to load Stripe’s card reader on your checkout. This cookie is set by Stripe itself, by a script downloaded by the browser from Stripe servers.
If your site isn’t using the Advanced Videos addon, you can disable LifterLMS session tracking entirely with this hook.
You’ll want to use a __return_false on the callback to disable it and the cookie will no longer be set. It will also eventually expire for users who already have it set.
Note: disabling this cookie can result in incorrect lesson visibility or missing notices, such as required enrollment or coupons being save in the checkout form.
Caching can have a negative impact on dynamic content on your LifterLMS site. For more information on this please see our caching documentation here.
Specifically with caching, a major issue you may encounter is that cookies are not properly set for password resets, or with LifterLMS Groups and the Group invitations.
In both these cases it will be important to clear your cache and exclude LifterLMS content from any on site caching plugin, as well as reaching out to your host to have them remove LifterLMS content from server side caching.
The solution here being that cookies and pages that rely on cookies can never be cached.