Lightening Tech Evidence, not opinion

Web Development & Engineering

Learning management system

Courses, quizzes, progress and certificates — with the video decision made properly, because that is the one that quietly decides your running costs.

From
$1,500–$15,000
Typical time
4–12 weeks
Usually bought by
Educators, academies

What this actually solves

Right now the teaching is happening, and it is happening badly organised. The videos are unlisted links on a video site, the notes are files in a chat group, the questions arrive at midnight in a direct message, and the person running it has no idea who has watched what. They cannot tell which students are falling behind, they cannot prove anybody completed anything, and the material they spent months producing is one forwarded link away from being everywhere.

There are three versions of this buyer. The individual instructor who has an audience and wants to teach at scale. The academy or training centre — professional certification, exam preparation, skills courses — that has students paying real fees and needs to look like it deserves them. And the company that has to train its own staff and be able to show that the training happened. Their motivations differ, but they all want the same three things they do not currently have — structure, evidence of progress, and control over their own material.

The thing to understand before anything else is that this is really a video product wearing a website. The lessons, quizzes and dashboards are ordinary work. Video is where the money, the running costs and most of the failure modes live, and the decision about where it is hosted shapes the budget more than any interface choice.

What we do, and in what order

  1. Design the course structure and decide the video route. Courses, modules, lessons and what a lesson can contain. Then the video decision, which is made first because everything else costs are attached to it — a dedicated video service such as Mux, Bunny Stream or Vimeo, with the storage and delivery costs at your expected student numbers worked out and shown to you before you commit. Two to three days.
  2. Model the data before building screens. Enrolment, progress, quizzes and attempts. Whether progress is stored as a record per lesson or aggregated per student is a real decision with real consequences once there are thousands of students, and it gets made deliberately rather than discovered. Quiz correct answers are stored and marked on the server, never sent to the browser alongside the questions. Attempt policy — how many tries, whether the best or the most recent score counts, whether question order is shuffled — is settled here. Three to five days.
  3. Build enrolment, the student experience and progress tracking. Free, paid or code-based enrolment. The course player, lesson navigation, resource downloads, and the student dashboard showing what has been completed and what is next. Progress is recorded as it happens rather than only on completion, so a student who leaves halfway returns to the right place. Where drip release is wanted, the schedule that governs it. One to two weeks.
  4. Build quizzes, marking and certificates. Question types, the pass threshold, the attempt limit, immediate or withheld feedback, and the record of every attempt rather than just the final one. Then certificate generation as a PDF, produced when the completion rules are satisfied, with a unique reference on each one so it can be checked later. One to two weeks.
  5. Build the instructor and admin side. Creating and editing courses, uploading video, arranging modules, writing quizzes, publishing and unpublishing, seeing who is enrolled and how far each student has reached. This half is what determines whether the platform is still being used in a year, and it is routinely under-estimated because nobody demos it. One to two weeks.
  6. Test with real content and real numbers. A genuine course loaded rather than placeholder lessons, playback checked on mobile networks as well as broadband, a quiz inspected in the browser's developer tools to confirm the answers are not sitting there, a certificate generated end to end, and the student dashboard checked with enough records to show whether the progress model holds up. Three to five days.

What moves the price

The range is $1,500–$15,000 over 4–12 weeks, and three things decide where a project sits in it.

Which route the build takes. A well-configured LMS on WordPress using an established plugin sits near the bottom, and for many academies it is genuinely the right answer. A custom build with its own video pipeline, its own quiz engine, certificates and multiple instructor roles sits near the top, and it should only be chosen when there is a reason a plugin cannot cover.

How many kinds of people use it. Students and one administrator is the simple case. Add independent instructors who create and own their own courses, and you have added permissions, content ownership, revenue splits and an approval process — which is close to a marketplace sitting on top of a learning platform.

Whether live teaching is included. Purely self-paced material is the cheaper build. Live cohorts bring scheduling, enrolment windows, attendance records and a different way of measuring progress, and they change how the course structure itself has to be modelled.

What usually goes wrong

Video is uploaded to the site's own hosting. It works perfectly for the first handful of students, which is exactly why the mistake survives testing. Then the bandwidth allowance runs out mid-month, or an overage invoice arrives, or the video stutters for everybody watching at once because a web server is not built to stream. Now the platform is failing publicly, in front of paying students, and the fix is migrating every file to a proper video service anyway — after paying for the lesson twice.

Quiz answers are sent to the browser. The questions and the correct answers are shipped to the page together and compared in front-end code, because it is simpler and it looks identical to the student. Any student who opens the developer tools can read the answer key for the entire assessment, and in a group of students studying for a certification exam, one of them will and the rest will know within a day. Answers must stay on the server and marking must happen there.

The monthly running cost is never mentioned. Video hosting, transactional email and licences are real recurring expenses that grow with student numbers, and it is tempting to leave them out of a conversation that is about a build price. You discover them after launch, feel misled, and a project that went well technically ends in a bad relationship. Those numbers belong in the proposal, at the student volumes you actually expect to reach.

See where the site stands before you brief anyone.

If the site is already live, start from what it scores rather than from a guess. The audit reports what it checked, what it found, and — the part most tools leave out — what it could not check, and why.

See the website audit Talk about this work

Questions people ask before they commit.

Should this be WordPress, a hosted platform, or custom?
It depends on what you are really doing, and we will say so plainly even when it shrinks the job. If you only want to sell a course, a hosted platform such as Teachable or Thinkific may be the right purchase and you do not need a developer. If you want the course inside your own site with your own branding and a modest budget, LearnDash, TutorLMS or LifterLMS on WordPress does a great deal of the work already. Custom earns its cost when you have multiple instructors, unusual enrolment rules, or the learning has to connect to something else you run.
What will this cost me to run every month?
Video hosting is the main one and it scales with how much you store and how much is watched, so it grows as your student numbers grow. On top of that sit hosting, transactional email, and any plugin or platform licences. You are given those figures before the build starts rather than after launch, because they are part of your business model and finding out late is how a good project turns into an argument.
Can students share the videos with people who have not paid?
Casual sharing is what proper video hosting prevents — playback links are signed, expire after a short time, and are restricted to your domain, so a copied URL is useless to whoever receives it. Screen recording is a different matter and no platform on earth genuinely stops it. Anyone who claims otherwise is overselling. The realistic aim is making sharing more trouble than paying.
Do you create the course content?
No. The videos, notes and questions are yours. What gets built is the structure they live in and the instructor interface for putting them there, so you can add modules, lessons and quizzes yourself afterwards. A course platform that needs a developer every time a lesson is added stops getting lessons added.
Can I issue certificates?
Yes, generated as a PDF when the completion conditions you define are met — finishing every lesson, passing every quiz, or both. Each certificate carries a unique reference so it can be verified later, which matters if employers or a regulator will ever be asked to check one.
What about live classes?
Live sessions can be scheduled and attendance recorded alongside the recorded material, with the video call itself handled by an established meeting platform rather than built from scratch. It is worth flagging as a scope item early, because a course that mixes live cohorts with self-paced study needs cohort dates, enrolment windows and a different progress model.

Often taken together.

Start with the brief, not the invoice.

Send what you are trying to achieve. You get a written scope, a price and a date — or an honest “this is not the right service for that”.

Talk about Learning management system (LMS) All Web Development & Engineering services