LifterLMS · Version history
LifterLMS changelog and version history
- Latest version
- 11.0.1
- Nov 4, 2026 (5 days ago)
- Releases
- 292
- since 2017
- In the last year
- 33
- about one every 11 days
- Tested up to
- WordPress 7.1.4
- PHP 7.4 or later
Releases each year
- 20179 releases
- 201830 releases
- 201945 releases
- 202045 releases
- 202144 releases
- 202231 releases
- 202313 releases
- 202425 releases
- 202526 releases
- 202624 releases
202624 releases
LifterLMS 11.0.1Latest
- Bug Fixes
- Adding missing ActionScheduler file. #3444
LifterLMS 11.0.0
- New Features
- Added an admin notice for sites on WP Engine with protected media, linking to instructions for more efficient file serving. #3365
- Added CSS custom properties for frontend colors and corner radius so a single override updates related hovers, focus styles, and tinted backgrounds. #2286
- Added a {related_post_title} merge code for engagement emails and certificates which outputs the title of the post that triggered the engagement. #3064
- Added new engagement triggers: course progress percentage reached, course completed with a low grade, quiz failed multiple times, enrollment cancelled or expired, order failed/refunded/cancelled, and daily-scanned inactivity triggers for no course progress, course never started, days since last log…
- Added unenrollment notification trigger (popup and email) for courses and memberships, disabled by default.
- Added a new ‘Order Failed’ email notification for when an order fails at checkout or after recurring payment retries are exhausted. It is disabled by default and can be enabled for the customer, the product author, and custom recipients.
- Adds a “My Subscriptions” student dashboard tab and per-transaction receipt downloads.
- Updates and Enhancements
- Orders now lists transactions (and free orders) with a separate Subscriptions listing, allowing export of transactions and subscriptions to csv.
- Added CSS custom properties for element border width, border style, and surface hover, using the current values as defaults.
- Updated the default password strength message so it no longer says a weak password is required. #3370
- Add-on updates are no longer installed from Add-ons & more. Available updates now link to the WordPress Plugins or Themes screen. #3371
- Explained when a password is rejected because it includes other information from the form. #3401
- Course and membership loop tiles and certificate cards now link only the title, and achievement cards open from a title button. The whole card stays clickable. Featured image alt text uses the image’s alt text, or is left empty. Themes that override the loop template keep the previous wrapping link…
- Improved heading structure, labels, tables, and page titles for quizzes, focus mode, and the student dashboard.
- Updated the bundled Action Scheduler library to version 3.9.3, improving compatibility with PHP 8.4.
- Clarified the help text for course enrollment, course time period, and access plan sale dates to show the exact time each date starts or ends. #3341
- Bug Fixes
- Fixed a blank Scheduled Actions tab on the LifterLMS Status page after searching or running a row or bulk action. #3418
- Fixed a “headers already sent” PHP warning when a logged-out visitor views the checkout page and another plugin has already flushed the page output. #3425
- Fixed a PHP warning on REST API instructors collection requests that return no results. #3439
- Display an error message when the checkout form is submitted with an expired security nonce instead of silently reloading the form. #3422
- Fixed the permalink of a newly created quiz not being clickable in the Course Builder after saving. #3414
- Fixed icon spacing on LifterLMS buttons rendered with an icon and no supporting CSS from a theme or plugin.
- Fixed the student dashboard mobile navigation not navigating to the selected endpoint when the Go button is clicked.
- Fixed manual entry of datepicker dates being mis-parsed on sites using a non-US date format.
- Fixed lesson progression button layout and text alignment in the block editor.
- Course and membership loop titles use their previous size and weight again now that they are h2 or h3 headings.
- Fixed a PHP fatal error when viewing a course’s grades page on the student dashboard using the course ID instead of its slug.
LifterLMS 10.3.2
- Security Fixes
- Additional checks when loading templates.
LifterLMS 10.3.1
- Updates and Enhancements
- Captcha secret keys are partially hidden in Security settings after they are saved. #3387
- Bug Fixes
- Additional fix for the plan description editor when adding a new access plan in some cases.
- Clear the post cache after migrating a post to the block editor.
- Security Fixes
- Additional checks on REST API collection requests. Thanks @pokeroot and Huzaifa Jawaid!
- Additional security enhancements.
LifterLMS 10.3.0
- New Features
- Course builder shows a permalink preview for unsaved lessons and quizzes, based on the title, until the slug is edited.
- Added an “Add Existing Lesson” button next to “Add New Lesson” in each Course Builder section.
- Added a Customers screen under Orders with lifetime value, order history, and customer segments.
- Updates and Enhancements
- Refreshed the course builder settings panels and outline columns.
- Bug Fixes
- Fix overlapping percentage sign when entering certificate margins. #3373
- Fixed certificate editor sidebar control layout. #3340
- Improved styling in the back end editor for Lesson Progression and Access Plan buttons. #3359
- Fixed the course builder hiding the lesson editor after saving content added in the builder. #3360
- Fixed editing the access plan description on a new plan before it is saved. #3369
- Fixed a blank line in the order billing address when Address 2 is empty. #3375
- Fixed lesson settings in the course builder jumping back down after the drip method is changed. #3376
- Fixed deleting the last course section immediately adding three new lessons. #3377
- Fixed the course builder dropping quiz questions when the quiz editor is opened again while they are still loading.
- Improved prevention of recurring charges when the site URL no longer matches the stored lock.
- Show address fields that are populated. Thanks @robindevitt! #3020
- Security Fixes
- Additional checks on feeds. Thanks @Yo1o-sir!
- Additional checks on REST API endpoints.
- Improved validation of course builder and import data.
- Updated Templates
- templates/admin/customers/customer.php
- templates/admin/customers/list.php
- templates/admin/customers/orders-table.php
- templates/admin/customers/orders.php
- templates/admin/customers/overview.php
LifterLMS 10.2.1
- New Features
- Added informative notices about available add-ons in the admin.
- Makes Course IDs easier to find. #3321 Thanks @robindevitt!
- Updates and Enhancements
- Added a Name Your Price add-on option to the new access plan dialog and removed the Sale template.
- Redirected the setup wizard skip button to the LifterLMS dashboard and added a Launch Setup Wizard link on the plugins screen.
- Updates for PHP 8.4 compatibility.
- Bug Fixes
- Fixed interactive blocks not working in focus mode. #3350
- Disabled the Mark Complete button in markup while a lesson’s minimum time is still running, and left it disabled when other progression requirements remain. #3352
- Security Fixes
- Hardened certificate export handling. Thanks @s3rt4c!
- Additional checks in admin reporting. Thanks @s3rt4c!
- Additional authorization checks on REST API endpoints. Thanks @s3rt4c and @MrDarkRoot!
- Updated Templates
- templates/course/complete-lesson-link.php
- templates/single-lesson-focus.php
LifterLMS 10.2.0
- New Features
- The sections and lessons list endpoints accept parent_id as an alias for the parent filter.
- Added a read-only REST API endpoint for student grades with per-lesson course grade breakdowns, added a readonly grade field to student progress responses, and registered a student grades ability with the WordPress Abilities API.
- Added time-limited signed download URLs for protected media files, exposed as a download_url field in assignment submission and quiz attempt REST API responses.
- Added a certificate merge code for the student’s display name.
- REST API: added endpoints for quizzes, quiz questions, quiz attempts (including grading), orders and their transactions, certificate templates, and awarded certificates, with new webhook topics and WordPress Abilities API registration.
- Updates and Enhancements
- The course students reporting table now sorts by student ID by default instead of by name, avoiding expensive name joins and filesorts on large sites. Columns remain click-sortable.
- Improved cache miss detection and added expiration times to object cache entries for more reliable behavior on persistent object cache backends.
- Student search is not limited to the student role.
- List abilities return an empty list instead of a not-found error for empty collections.
- Ability input schemas reject unknown parameters instead of silently ignoring them.
- List abilities omit rendered markup when a raw counterpart is available, reducing payload size.
- Nested abilities accept id as the parent resource identifier.
- Section and lesson order is optional on create.
- Bug Fixes
- Course and membership student exports now honor the boosted export page size, reducing the number of requests required to generate an export file by up to 10x.
- Course reports and exports no longer bulk-create per-lesson time cache rows in user meta, and an automatic database update removes the zero-value rows previously created this way.
- Awarded certificates and achievements now fall back to the template’s post title when the deprecated title meta value is empty.
- Fixed course builder deep links so the lesson or quiz settings panel opens on load. #3328
- Fixed course builder tooltips being clipped by the editor sidebar and outline. #3315
- Fixed stale object cache values for core forms, membership-associated posts, student grades, product active-subscription counts, and theme template override directories on sites using a persistent object cache (Redis, Memcached). #3116
- Fixed automatic recurring payment retries never running when a failed payment placed an active order on hold.
- Fixed media protection block editor labels incorrectly showing “Protect Image” for file, video, and audio blocks.
- Preserve the authorization hook name passed to media upload.
- Ability reads default to the edit context, returning complete resource data.
- Declared and validated the status parameter on the REST enrollment update endpoint.
- Cached student progress is reset when lesson progress is deleted via the REST API and when lessons or sections are trashed, restored, deleted, or moved to a new parent.
- The lesson REST response emits complete for quiz.progression, matching the documented schema enum and the accepted input values.
- Clarified the REST schema documentation for the meta field serialization and the enrollment trigger default.
LifterLMS 10.1.1
- Updates and Enhancements
- Increased entropy used when generating order keys. Thanks @enterlectury!
- Bug Fixes
- Fixed saving when attaching an existing lesson after editing its title or permalink in the Course Builder.
- Fixed the “View add-on details” tooltip being cut off on the Add-ons screen. #3301
- Fixed access plan details not saving when using the course or membership Save button in the block editor. #3256, #3300
- Fixed duplicate engagement emails sent to all recipients when multiple emails share the same triggering post.
- Aligned admin Select2 fields with WordPress 7.0 form control sizing. #3291
- Fixed lesson completion being rejected when the Mark Complete button was clicked the moment the minimum time requirement was reached, before the next time-tracking heartbeat had persisted the elapsed time. #3295
- Prevented a fatal error when cloning a course or creating a course cohort if a cloned lesson or course could not be loaded during prerequisite handling.
- Developer Notes
- Corrected the REST API student progress status property description to reflect the completion status rather than the enrollment status, and noted that the students ability lists LifterLMS students only.
- Security Fixes
- Additional checks on checkout completion redirects. Thanks @enterlectury!
- Additional checks when creating users during course import. Thanks @enterlectury!
- Additional authorization checks on REST API key and webhook admin actions. Thanks @enterlectury!
LifterLMS 10.1.0
- New Features
- Added WordPress Abilities API (WP 6.9+) integration, registering the LifterLMS REST API endpoints for courses, sections, lessons, memberships, access plans, students, enrollments, and student progress as discoverable abilities for AI clients and automation tools.
- Added a Quizzes subtab to the single course reporting view.
- Added wp llms course enrollments <id> command to list students enrolled in a specific course.
- Added AI agent usage guide (docs/ai-agents.md) for CLI with patterns for Claude Code, Cursor, Codex, and similar tools.
- Added wp llms course content <id> command to retrieve course structure (sections and lessons) in a single call.
- Added course and membership selection to the Pricing Table block. #3239
- Added a HelpScout help beacon to the LifterLMS admin screens.
- Lesson time tracking and minimum time required on lesson enforcement.
- Added an accessible expand control on quiz attempt results so students can discover answer details and clarifications.
- Updates and Enhancements
- Adding quiz ID to the lesson listing in the Course Builder. #3024
- Bundled lifterlms-blocks, lifterlms-cli, lifterlms-helper, lifterlms-rest, and banner-notifications directly into core; standalone copies are no longer released separately.
- Limited the pricing table to a maximum of 3 access plan columns per row, using 2 columns when there are exactly 4 plans. #3288
- Added the wp-element-button class to front-end buttons (pricing tables, checkout, registration, quizzes, dashboard, certificates) so they inherit theme button styling.
- Increased the voucher admin “Uses” field width so redemption counts with more than two digits are readable.
- Bug Fixes
- Fixed media library attachment detail screen incorrectly showing course-protected files as protected by an assignment submission.
- Fixed media protection URL rewrite failing when a persistent object cache is enabled. Thanks @faisalahammad!
- Added ABSPATH direct file access protection guards. Thanks @faisalahammad!
- Switched the “Add New Plan” access plan dialog to full screen in the editor.
- Fixed course titles showing HTML character codes in block settings. #3239
- Made the course selection dropdown in course blocks searchable. #3239
- Fixed reporting stat tiles becoming misaligned depending on the number and height of tiles shown.
- Fixed course, section, lesson, and quiz titles containing quotes or HTML characters displaying incorrectly in the course builder.
- Fixed the appearance of the custom fields notice on the forms screen under WordPress 7.0. #3161
- Fixed the parent course lookup when setting up lesson data. Thanks @soydiloreto! #3230
- Fixed multi-line quiz question spacing and accessibility on the front end. #3286
- Fixed LifterLMS buttons in the block editor preview inheriting WordPress admin button styles instead of theme button styles.
- Developer Notes
LifterLMS 10.0.10
- Security Fixes
- Additional sanitization of pricing display markup. Thanks Mustafa Ahmed!
- Additional checks on post search AJAX requests. Thanks @devploit!
- Read the full changelog
LifterLMS 10.0.9
LifterLMS 10.0.8
LifterLMS 10.0.7
LifterLMS 10.0.6
LifterLMS 10.0.5
LifterLMS 10.0.4
LifterLMS 10.0.3
LifterLMS 10.0.2
LifterLMS 10.0.1
LifterLMS 10.0.0
LifterLMS 9.2.3
LifterLMS 9.2.2
LifterLMS 9.2.1
LifterLMS 9.2.0
202526 releases
LifterLMS 9.1.2
LifterLMS 9.1.1
LifterLMS 9.0.8
LifterLMS 8.0.8
LifterLMS 7.8.8
LifterLMS 6.11.1
LifterLMS 5.10.1
LifterLMS 4.21.4
LifterLMS 3.41.2
LifterLMS 9.1.0
LifterLMS 9.0.7
LifterLMS 9.0.6
LifterLMS 9.0.5
LifterLMS 9.0.4
LifterLMS 9.0.3
LifterLMS 9.0.2
LifterLMS 9.0.1
LifterLMS 9.0.0
LifterLMS 8.0.7
LifterLMS 8.0.6
LifterLMS 8.0.5
LifterLMS 8.0.4
LifterLMS 8.0.3
LifterLMS 8.0.2
LifterLMS 8.0.1
LifterLMS 8.0.0
202425 releases
LifterLMS 7.8.7
LifterLMS 7.8.6
LifterLMS 7.8.5
LifterLMS 7.8.4
LifterLMS 7.8.3
LifterLMS 7.8.2
LifterLMS 7.8.1
LifterLMS 7.8.0
LifterLMS 7.7.8
LifterLMS 7.7.7
LifterLMS 7.7.6
LifterLMS 7.7.5
LifterLMS 7.7.4
LifterLMS 7.7.3
LifterLMS 7.7.2
LifterLMS 7.7.1
LifterLMS 7.7.0
LifterLMS 7.6.3
LifterLMS 7.6.2
LifterLMS 3.15.1
LifterLMS 7.6.1
LifterLMS 7.6.0
LifterLMS 7.5.3
LifterLMS 7.5.2
LifterLMS 7.5.1
202313 releases
LifterLMS 7.5.0
LifterLMS 7.4.2
LifterLMS 7.4.1
LifterLMS 7.4.0
LifterLMS 7.3.0
LifterLMS 7.2.1
LifterLMS 7.2.0
LifterLMS 7.1.4
LifterLMS 7.1.3
LifterLMS 7.1.2
LifterLMS 7.1.1
LifterLMS 7.1.0
LifterLMS 7.0.1
202231 releases
LifterLMS 7.0.0
LifterLMS 6.11.0
LifterLMS 7.0.0-rc.1
LifterLMS 6.10.2
LifterLMS 6.10.1
LifterLMS 7.0.0-beta.1
LifterLMS 6.10.0
LifterLMS 6.9.0
LifterLMS 7.0.0-alpha.4
LifterLMS 7.0.0-alpha.3
LifterLMS 6.8.0
LifterLMS 7.0.0-alpha.2
LifterLMS 7.0.0-alpha.1
LifterLMS 6.7.0
LifterLMS 6.6.0
LifterLMS 6.5.0
LifterLMS 6.4.0
LifterLMS 6.3.0
LifterLMS 6.2.0
LifterLMS 6.1.0
LifterLMS 6.0.0
LifterLMS 6.0.0-rc.1
LifterLMS 6.0.0-beta.2
LifterLMS 5.10.0
LifterLMS 6.0.0-beta.1
LifterLMS 5.9.0
LifterLMS 6.0.0-alpha.4
LifterLMS 5.8.0
LifterLMS 6.0.0-alpha.3
LifterLMS 5.7.0
LifterLMS 6.0.0-alpha.2
202144 releases
LifterLMS 6.0.0-alpha.1
LifterLMS 5.6.0
LifterLMS 5.5.0
LifterLMS 5.4.1
LifterLMS 5.4.0-testing.1
LifterLMS 5.4.0
LifterLMS 5.3.3
LifterLMS 5.3.2
LifterLMS 5.3.1
LifterLMS 5.3.0
LifterLMS 5.2.1
LifterLMS 5.2.0
LifterLMS 5.1.3
LifterLMS 5.1.2
LifterLMS 5.1.1
LifterLMS 5.1.0
LifterLMS 5.0.2
LifterLMS 5.0.1
LifterLMS 5.0.0
LifterLMS 5.0.0-rc.2
LifterLMS 5.0.0-rc.1
LifterLMS 5.0.0-beta.2
LifterLMS 4.21.3
LifterLMS 5.0.0-beta.1
LifterLMS 4.21.2
LifterLMS 5.0.0-alpha.6
LifterLMS 5.0.0-alpha.5
LifterLMS 4.21.1
LifterLMS 5.0.0-alpha.4
LifterLMS 4.21.0
LifterLMS 5.0.0-alpha.3
LifterLMS 5.0.0-alpha.2
LifterLMS 4.20.0
LifterLMS 4.19.0
LifterLMS 4.18.0
LifterLMS 4.17.0
LifterLMS 4.16.0
LifterLMS 4.15.0
LifterLMS 4.14.0
LifterLMS 4.13.0
LifterLMS 4.12.0
LifterLMS 5.0.0-alpha.1
LifterLMS 4.11.0
LifterLMS 4.10.2
202045 releases
LifterLMS 4.10.1
LifterLMS 4.10.0
LifterLMS 4.9.0
LifterLMS 4.8.0
LifterLMS 4.7.1
LifterLMS 4.7.0
LifterLMS 4.6.0
LifterLMS 4.5.1
LifterLMS 4.5.0
LifterLMS 4.4.4
LifterLMS 4.4.3
LifterLMS 4.4.2
LifterLMS 4.4.1
LifterLMS 4.4.0
LifterLMS 4.3.3
LifterLMS 4.3.2
LifterLMS 4.3.1
LifterLMS 4.3.0
LifterLMS 4.2.0
LifterLMS 4.1.0
LifterLMS 4.0.0
LifterLMS 3.41.1
LifterLMS 4.0.0-rc.1
LifterLMS 3.41.0
LifterLMS 4.0.0-beta.3
LifterLMS 3.40.0
LifterLMS 4.0.0-beta.2
LifterLMS 4.0.0-beta.1
LifterLMS 3.39.0
LifterLMS 3.38.2
LifterLMS 3.38.1
LifterLMS 3.38.0
LifterLMS 3.37.19
LifterLMS 3.37.18
LifterLMS 3.37.17
LifterLMS 3.37.16
LifterLMS 3.37.15
LifterLMS 3.37.14
LifterLMS 3.37.13
LifterLMS 3.37.12
LifterLMS 3.37.11
LifterLMS 3.37.10
LifterLMS 3.37.9
LifterLMS 3.37.8
LifterLMS 3.37.7
201945 releases
LifterLMS 3.37.6
LifterLMS 3.37.5
LifterLMS 3.37.4
LifterLMS 3.37.3
LifterLMS 3.37.2
LifterLMS 3.37.1
LifterLMS 3.37.0
LifterLMS 3.36.5
LifterLMS 3.36.4
LifterLMS 3.36.3
LifterLMS 3.36.2
LifterLMS 3.36.1
LifterLMS 3.36.0
LifterLMS 3.35.2
LifterLMS 3.35.1
LifterLMS 3.35.0
LifterLMS 3.34.5
LifterLMS 3.34.4
LifterLMS 3.34.3
LifterLMS 3.34.2
LifterLMS 3.34.1
LifterLMS 3.34.0
LifterLMS 3.33.2
LifterLMS 3.33.1
LifterLMS 3.33.0
LifterLMS 3.32.0
LifterLMS 3.31.0
LifterLMS 3.30.3
LifterLMS 3.30.2
LifterLMS 3.30.1
LifterLMS 3.30.0
LifterLMS 3.29.4
LifterLMS 3.29.3
LifterLMS 3.29.2
LifterLMS 3.29.1
LifterLMS 3.29.0
LifterLMS 3.28.3
LifterLMS 3.28.2
LifterLMS 3.28.1
LifterLMS 3.28.0
LifterLMS 3.27.0
LifterLMS 3.26.4
LifterLMS 3.26.3
LifterLMS 3.26.2
LifterLMS 3.26.1
201830 releases
LifterLMS 3.26.0
LifterLMS 3.25.4
LifterLMS 3.25.3
LifterLMS 3.25.2
LifterLMS 3.25.1
LifterLMS 3.25.0
LifterLMS 3.24.3
LifterLMS 3.24.2
LifterLMS 3.24.1
LifterLMS 3.24.0
LifterLMS 3.23.0
LifterLMS 3.22.2
LifterLMS 3.22.1
LifterLMS 3.22.0
LifterLMS 3.21.1
LifterLMS 3.21.0
LifterLMS 3.20.0
LifterLMS 3.19.6
LifterLMS 3.19.5
LifterLMS 3.19.4
LifterLMS 3.19.3
LifterLMS 3.19.2
LifterLMS 3.19.1
LifterLMS 3.19.0
LifterLMS 3.18.2
LifterLMS 3.18.1
LifterLMS 3.18.0
LifterLMS 3.17.8
LifterLMS 3.17.7
LifterLMS 3.16.16
20179 releases
LifterLMS 3.14.9
LifterLMS 3.13.1
LifterLMS 3.11.2
LifterLMS 3.10.2
LifterLMS 3.9.5
LifterLMS 3.8.1
LifterLMS 3.7.7
LifterLMS 3.6.2
LifterLMS 3.5.3
Questions about LifterLMS’s releases
What is the latest version of LifterLMS?
11.0.1, released on Nov 4, 2026 (5 days ago). It’s tested up to WordPress 7.1.4 and needs PHP 7.4 or later.
How often is LifterLMS updated?
33 releases in the last year, about one every 11 days. Its first release on WordPress.org dates from March 2017.
Know when your rivals ship
Track your plugin and its rivals: TrackWP sees each new release in the nightly snapshot and alerts you, with what it did to their rank.
Start freeRelease dates come from the day each version’s folder was made in LifterLMS’s WordPress.org SVN repository; the notes from its readme’s changelog, as its authors wrote it.