How to Add Video Lessons in LifterLMS (and Where to Host Them)

Add video to a LifterLMS lesson with the Video Embed URL field, choose a host that fits your content, keep large files out of the media library, and understand what the Advanced Videos add-on changes.

  • Add as a preferred source on Google
Illustration for “How to Add Video Lessons in LifterLMS (and Where to Host Them)”

Adding a video to a LifterLMS lesson takes one field and one pasted link. The decisions around that field take longer: where the file lives, who can watch it outside your site, and whether a student has to finish it before moving on.

This guide covers the mechanics first, then hosting, protection, the Advanced Videos add-on, and the effect of video on page speed. It assumes you already have a course with lessons. If you do not, start with how to create a course in LifterLMS.

How the lesson video field works

Every lesson has a Video Embed URL setting. You paste the address of a video, and LifterLMS shows the player above the lesson content, sized to fit the content area.

Behind the field, LifterLMS hands the address to the embed system built into WordPress, known as oEmbed. That has two practical consequences:

  • Any video service on the WordPress list of embed providers works, which includes YouTube and Vimeo. LifterLMS also supports Wistia links.
  • If the address is not from a recognized provider, LifterLMS falls back to the standard WordPress video player. A direct link to a video file will play, although that is rarely the best choice, as explained below.

The field takes one video. A lesson that needs a second clip can have it embedded in the lesson content with an ordinary embed block. A neighboring Audio Embed URL field does the same job for audio lessons.

Two related fields are worth knowing. A course has its own Featured Video under Course Options > General, which is the place for a trailer on the course page. And individual quiz questions can carry a video, which accepts YouTube, Vimeo, or Wistia links.

Add a video to a lesson, step by step

  1. Upload the video to your host and set its privacy there before you do anything in WordPress.
  2. Copy the video's normal page address or share link. You want the link, not the embed code.
  3. Open the course in the Course Builder and click Settings on the lesson.
  4. Paste the link into Video Embed URL.
  5. Click Save changes. A Video indicator now appears on the lesson's row in the outline.
  6. Click View on the lesson and confirm the player loads and plays.
  7. Repeat the check in a private browser window as a test student. Your administrator account can see things a student cannot.

If you write lessons in the WordPress editor, the same field appears in the lesson settings box below the content. Use one place or the other for a given lesson so you always know where to look.

If the player does not appear, the usual causes are a link the host does not allow to be embedded, a privacy setting that blocks your domain, or an embed code pasted where a plain link belongs.

Where to host course videos

LifterLMS does not host video. Its documentation on where course videos should be hosted names Vimeo, Wistia, YouTube, GoDAM, Vidalytics, and VdoCipher, and mentions Presto Player with Bunny.net as another route. The right one depends on what you are protecting and what you are willing to pay for.

OptionGood fitWhat to check
YouTube, unlistedFree courses, previews, and marketing lessonsAn unlisted video can be watched by anyone who has the link, and the player carries YouTube's branding and links back to YouTube
VimeoPaid courses that want a clean playerPrivacy settings that hide a video from vimeo.com and limit which sites may embed it depend on your plan
WistiaBusinesses that already run their marketing video there and want courses in the same accountWhat your plan includes as the library grows
A DRM-focused host such as VdoCipherHigh-value content where copying is a real commercial riskHow the player is embedded. It may need its own plugin or shortcode in the lesson content instead of the URL field
A video file on your own serverAlmost nothingSee the next section

Whatever you choose, test one real lesson from upload to playback before you upload a whole course.

Why the media library is the wrong place for lesson videos

WordPress will accept a video upload, and the lesson field will play it. It is still a poor idea for anything beyond a short clip.

  • Your server becomes the video server. The same machine that runs checkout, quizzes, and the Student Dashboard now also pushes large files to every viewer. A busy lesson can slow the whole site.
  • There is no adaptive streaming. A dedicated host prepares several quality levels and switches between them as the viewer's connection changes. An uploaded file is one file at one size, so a student on a weak connection waits.
  • Upload limits get in the way. Many hosting plans cap upload size and request time well below the size of a long lesson video.
  • The file has a public address. Anything in the uploads folder can normally be opened by anyone who has its URL, enrolled or not.
  • Backups grow. Every backup and every staging copy now carries gigabytes of video.

LifterLMS does include a media protection option that ties a media library file to a course or membership, described in its documentation on how protected media files work. It is useful for PDFs, worksheets, and other downloads. It applies only to files on your own server, and it does not turn that server into a streaming service.

Protecting your videos

Protection comes in layers, and it helps to be clear about what each one does.

  1. LifterLMS protects the lesson page. Only enrolled students, and anyone viewing a lesson you marked as free, can open the page where the player sits.
  2. Your host protects the video. The video still lives on the host. Hide it from the host's public pages and search, and restrict embedding to your own domain if your plan allows. Without this step, a link copied from the page source can be shared.
  3. Account settings discourage sharing. Under LifterLMS > Settings > Accounts you can prevent concurrent logins, so one set of credentials cannot be used in several places at once.
  4. DRM raises the effort required. Hosts built around encrypted playback make downloading much harder than a standard player does.

Be realistic about the limit. Nothing stops a determined person from recording their own screen. Aim to make casual sharing inconvenient, and put the rest of your effort into things a recording cannot copy: feedback, community, assessments, and certificates.

What the Advanced Videos add-on changes

In the core plugin a video is something shown on the lesson. LifterLMS does not know whether it was watched. The paid Advanced Videos add-on, sold individually and as part of the Infinity Bundle, connects the player to lesson progress. According to its product page, it works with Vimeo, Wistia, YouTube, and GoDAM and adds:

  • Require Video Completion. Students must watch the whole video before they can move on to the next lesson or attempt the lesson's quiz.
  • Auto-Advance Videos. When a video ends, a countdown sends the student to the next lesson, quiz, or assignment.
  • Resume. Playback picks up where the student stopped.
  • Player options. Controls can be shown or hidden and the player styled to match the site.
  • Reporting. Video progress is recorded alongside other lesson data.

You may already have seen two of these. When a lesson has a video URL and the add-on is not installed, recent versions of the Course Builder display Require Video Completion and Auto-Advance Videos as disabled options. They are a preview, not a fault.

If you only need students to spend real time on a lesson, the core Minimum Time on Lesson setting may be enough. It holds back the Mark Complete button until a set time has passed. It measures time on the page, not video watched, so treat it as a lighter alternative. Note that it is not available on free lessons.

Keep video lessons fast

A hosted video keeps the heavy file off your server, but each embedded player still loads its own scripts from the video service.

  • Keep to one player at the top of the lesson where you can. Several players on one page multiply the load.
  • Be careful with Display Featured Video on Course Tile. It places a player on the catalog tile of every course that uses it, which adds up quickly on a long catalog.
  • If a performance plugin replaces players with a click-to-load image, retest your lessons afterward, especially if you rely on video completion tracking.
  • Give each video a clear poster image at the host so the lesson looks finished before playback starts.
  • Add captions at the host. They help students in noisy places and students who cannot hear the audio.

For the rest of the stack, including what is safe to cache on a membership site, see how to speed up a LifterLMS site.

What to do next

Pick a host, upload one lesson, set its privacy, and run it past a test student before you record the rest. Then decide how video fits your course design: our guide to structuring an online course covers how much belongs in a single lesson.

Professional help is worth it when video stops being a pasted link. Typical cases are a host that LifterLMS does not recognize, completion rules tied to a player the add-on does not support, video progress that has to reach a CRM or reporting tool, or a large library being moved from another platform. Those fall under our LifterLMS integrations and LifterLMS customization work. If lessons are slow and you are not sure whether video is the cause, LifterLMS optimization starts with measuring it.

Add LifterLMS Expert to your preferred sources

Add lifterlmsexpert as a preferred source on Google, or open this article in your AI assistant to use it as a source.

  • Add as a preferred source on Google
VishavjeetChoubeyLifterLMS Expert
Free consultation

Prefer expert help over DIY?

Skip the trial and error. Get specialist LifterLMS help and ship faster.

Talk to a LifterLMS Expert Explore our services

Replies within one business day