Self-Hosted LMS for Small Teams and Training Businesses
If you sell training or courses, a self-hosted LMS replaces per-student SaaS fees with a platform you own and control.
Training businesses and consultancies that sell courses face a perverse incentive: SaaS learning management systems charge per student, which means growing your business makes your software more expensive. A self-hosted LMS breaks this relationship. Your costs stay flat while your student count grows.
Moodle: The Established Standard
Moodle is the most widely used open-source LMS in the world. It supports course creation with quizzes, assignments, forums, wikis, and grading. It handles thousands of students on modest hardware and integrates with payment gateways, video conferencing, and authentication systems.
Moodle runs on PHP with PostgreSQL or MySQL. A VPS with 4GB RAM handles 500 concurrent students comfortably. The interface takes time to learn, but the feature depth is unmatched. If your training business needs SCORM compliance, competency frameworks, or complex grading schemas, Moodle is the only open-source option that delivers.
Setup takes about 45 minutes. The admin interface is comprehensive but not intuitive. Plan for a learning curve. Once configured, Moodle runs reliably with minimal intervention.
When Moodle Is Overkill
Moodle is heavy. If you sell simple courses (video plus written content, no complex quizzes or certifications), Moodle adds overhead your students do not need. In these cases, consider:
- Outline: Normally a knowledge base, Outline can serve as a simple course delivery platform. Organise courses as collections of pages with embedded video. No quizzes, no grading, no certifications. Just content delivery with a clean reading experience.
- WordPress with LMS plugins: Self-hosted WordPress with LearnPress or Tutor LMS provides course creation, student management, and payment processing in a familiar interface. This is a pragmatic middle ground between Outline's simplicity and Moodle's complexity.
What About Payment?
Moodle supports payment plugins for PayPal and Stripe. WordPress LMS plugins support WooCommerce for payment processing. Neither self-hosted solution handles payment compliance (PCI DSS), which is why you integrate with a payment processor rather than handling credit card data yourself.
The integration flow: student registers on your LMS, selects a course, is redirected to Stripe or PayPal for payment, payment is confirmed via webhook, and the student is enrolled automatically. n8n can orchestrate this flow with zero custom code.
The Economics
Commercial LMS platforms charge 50 to 200 dollars per month for 100 active students. With a self-hosted LMS on a 4GB VPS costing roughly 30 dollars per month, the break-even point is roughly 15 to 60 students depending on the SaaS pricing tier. Every student beyond the break-even point is pure savings.
VPS1 deploys Moodle or WordPress LMS configured for your course catalogue, payment processing, and student management workflow.
More articles
Self-Hosted PIM Solutions Compared
If you sell products anywhere other than one shop, you have a product data problem. You might not call it that yet.
5 Ways to Bypass CGNAT in Brunei
Five technologies let you bypass Brunei residential CGNAT. Here is a detailed comparison of speed, privacy, cost, and complexity for each.
Paperless-ngx: Your Self-Hosted Document Management System
Stop searching through filing cabinets. Paperless-ngx digitises, OCRs, and organises every document your business handles.