Build your own platformComparison
daLæs på danskBuild vs Buy an Online Course Platform: When Custom Pays Off
Build vs buy an online course platform: Thinkific, Teachable and Kajabi vs a custom build, with three-year costs in EUR, middle routes and EU VAT.

Freelance full-stack developer
- Published
- Reading time
- 11 min
In this post9
For most people weighing build vs buy for an online course platform, buying wins: Thinkific, Teachable or Kajabi give you video hosting, checkout, student logins and course structure for a monthly fee. Building your own only pays off when your courses live inside a bigger product, when you sell seats to companies with their own requirements, or when the learning experience itself is what you compete on.
I build web apps and platforms for a living, so weigh my view accordingly.
The short answer
| Hosted course platform | WordPress + LMS plugin | Custom course platform | |
|---|---|---|---|
| Best for | Creators and businesses selling self-paced courses to consumers | Teams that already run a well-maintained WordPress site | Courses inside a product, B2B training or formats that don't fit a template |
| Upfront cost | Low, usually with a free trial | Plugin and theme licenses plus setup | Highest, since everything is built for you |
| Running cost | Subscription, sometimes a transaction fee | Hosting, licenses and updates | Hosting, a video service, updates and new work |
| Time to launch | Days | Weeks | Usually months |
| Student experience | The platform's templates with your logo, colors and domain | Flexible, within what the plugin and theme allow | Exactly what you design |
| Data and customer relationship | Held by the platform, export options vary | In your own database | Yours |
| Selling to companies | Depends on the platform and plan | Needs extra plugins or custom code | Built around your contracts |
| Biggest risk | Price increases and bending your business to fit the tool | Plugin conflicts and a site someone has to keep patched | High cost and a system you have to maintain |
My rule of thumb: if individuals buy your course and work through it at their own pace, buy. If you sell seats to employers, need to prove who completed what, or your learners already log in to something you've built, a custom platform is worth costing out. My guide to building your own platform covers the other platform types.
What you get from Thinkific, Teachable or Kajabi
A hosted course platform covers most of what a course business needs: video hosting, courses split into modules and lessons, student accounts, checkout, coupons and receipts. Most add quizzes, certificates and email marketing. That's hundreds of hours of development, kept running and secure by the vendor.
Thinkific runs €39-159 a month on annual billing for its fixed-price plans. Teachable is $29-139 a month billed annually, and Kajabi is $143-399. Prices change, so check them. Watch the fees more than the headline price: Teachable's entry plan takes a 7.5% transaction fee on every sale, and card processing through the platforms' own payment options typically runs 2.9-3.9% per sale, often plus a fixed fee.
When you use its built-in payments, Teachable also acts as merchant of record, meaning it is the legal seller to your customer and handles VAT, GST and US sales tax. For sales to consumers across Europe, that saves real admin.
The big three are North American, which matters if your audience isn't. Before you commit, check whether every student-facing page, the checkout, receipts and emails can run in your learners' language and currency, and read the data processing agreement so you know where student data is stored under GDPR.
The strongest argument is time: you can have a course on sale this week and spend your energy on the content, which is what decides whether a course sells. No platform, including one I'd build, rescues a course nobody wants.
Where off-the-shelf course platforms run out
The limits rarely come from student volume. They show up when your business doesn't match the model these tools were built for: one instructor selling to individuals.
Your courses are part of a bigger product
If you already run an app, a membership or a SaaS product, your users shouldn't need a second login for the training, and two systems quickly mean double admin. If the membership is really the core, you're looking at a membership platform with courses as one piece, and you should judge it as one. If learners also book live sessions or in-person classes, the trade-offs in custom booking system vs off-the-shelf apply as well.
You sell training to companies
B2B changes the requirements. A company buys 40 seats, an HR manager wants to add and remove staff, and leadership wants a completion report. Public-sector buyers may require e-invoicing, for example through the Peppol network, and larger customers often want access through their own company login (single sign-on). Some platforms cover parts of this, so check which plan it takes. And B2B deals are rarely standard: each customer has its own price, term and rules.
Completion has to be provable
Mandatory or accredited training, like safety courses or expiring certifications, needs more than a PDF certificate. You have to show who completed what and when, remind people before a certification lapses and pull records for an audit. Hosted platforms can rarely be configured for that.
Your teaching doesn't fit the template
Video, text and quizzes cover most courses. If your teaching relies on assignments graded by an instructor, cohorts moving through fixed dates, interactive exercises or learning paths that adapt to answers, you'll spend your time working around the platform instead of with it.
Data ownership and user experience: when they justify custom
Ownership is one of the most common arguments for building a custom course platform. It's partly right and partly overrated.
The overrated part first: your videos and written material are already yours, and most platforms let you export your student list. What's harder to move is everything inside the platform: active subscriptions, saved payment details, progress and history. When the platform is merchant of record, the payment relationship sits with them. Ask before you sign up whether recurring subscriptions can be migrated without customers re-entering their cards. If the answer is no, expect to lose some of them when you switch.
Data is worth owning when you'll act on it, for example when:
- you want to see where learners drop off and connect that to sales, support or renewals
- a corporate customer needs reports that match its own departments and roles
- course data has to drive something else, like access to the next level, a certification or an offer inside your app
User experience works the same way. A hosted platform gives you your logo and domain, but the flow is theirs: login, checkout, the course player and the emails. For most creators that's fine. It becomes a problem when the experience is the product, or when the course has to feel like part of your app rather than a page somewhere else.
My test: if you can't name one concrete decision you'd make with the data, or one thing learners would do differently with a different experience, ownership isn't a reason to build.
Three-year cost: subscription vs a custom build
A hosted platform is cheap to start and gets pricier as you move up plans, add contacts or grow revenue. A custom platform is expensive to build but doesn't cost more as you add learners.
Thinkific's mid-tier plan at €79 a month on annual billing comes to €2,844 over three years. Kajabi's Growth plan is about $7,200 over the same period. Card processing fees come on top, but you'd pay those with a custom build too. Transaction fees are different: 7.5% of €25,000 in annual sales is €1,875, every year.
A custom course platform is a web app, so the price follows the hours. Senior freelance developers in Denmark charge 800-1,200 DKK an hour excluding VAT in 2026 according to LønRadar, roughly €107-161. Rates elsewhere in Europe differ, but hours drive the total. In my estimate, a focused first version with login, payments, course structure, progress tracking and an admin area often takes 150-350 hours. That's a rough range of €16,000-56,000 excluding VAT. Seat licensing, reporting and certification push it higher.
Add a video service for hosting and playback. A common rule of thumb is to budget 15-20% of the build cost per year for maintenance and small improvements. I break down what else drives the number in my web app development cost guide.
On price alone, buying almost always wins. A custom build has to pay for itself another way: B2B deals you can't otherwise close, admin you no longer do by hand, or courses that belong inside a product customers already pay for. If none of those apply, stay on a hosted platform.
The middle ground: an LMS plugin or a platform with integrations
You don't have to pick between a subscription and a ground-up build. Two middle routes suit many teams outgrowing a hosted tool.
WordPress with an LMS plugin
An LMS (learning management system) is software for managing courses and learners. Plugins such as LearnDash turn a WordPress site into a course platform for a few hundred dollars a year in license fees. Courses, learners and data stay in your own database, and you can extend it with other plugins or some custom code.
The catch is that updates, security and speed are on you, and stacking plugins invites conflicts. It works best when you already have a well-maintained WordPress site. I compare the two approaches in WordPress vs a custom-built website.
A hosted platform plus integrations
Several course platforms offer an API, an interface your other systems can talk to, plus webhooks that notify you when a learner buys or completes something. That lets you keep the platform for teaching and only build what's missing:
- a sync to your CRM or accounting system
- a portal where corporate customers follow their employees' progress
- automatic enrollment when a company buys a block of seats
Before you go this way, find out whether the API can create and update records rather than just read them, whether it's included on your plan, and whether you can get all your data out if you leave. If the vendor changes its API, your integration needs fixing.
When each option is the wrong choice
A hosted course platform is wrong when
- your B2B contracts, licenses and reporting needs only work through manual workarounds
- the course has to live inside a product your customers already log in to
- you must prove completion and renewal to regulators or clients
A custom course platform is wrong when
- you don't yet know what learners will pay for. Start hosted, even if it's not perfect
- the value is in the content, not the platform. A better course sells more seats than a better platform
- there's no budget for hosting, maintenance and improvements after launch
- you're a solo instructor selling to individuals. A subscription is almost always the sensible choice, and you don't need to spend money on a developer like me
WordPress with an LMS plugin is wrong when
- nobody owns updates, backups and security on a schedule
- you need very specific B2B logic, because you'll end up with a pile of plugins and custom code that's hard to maintain
Next steps: making the call
- Write down who you sell to now and in a year: individuals, companies or both.
- List what learners and customers need to do, and mark everything you currently handle by hand.
- Run your hardest real scenario through two or three hosted platforms, such as a company buying 25 seats with a monthly report. Ask each vendor what their platform can't do.
- Check how learners, progress and subscriptions can be exported from the platforms that come closest.
- Model three years for each route, including fees, maintenance and your own time.
If you land on a hosted platform, you can put your energy into the content. If you land on integrations or a custom platform, the next step is a tightly scoped first version. I start larger projects with a paid, fixed-price discovery phase where requirements are written down and the first version is scoped before any code is written. You can see how that works on my page about web app and platform development. You own the code from day one.
Frequently asked questions
Can I move from a hosted course platform to a custom one later?
Yes, and that's often the best order. Your videos and written material are already yours, and most platforms let you export your student list. The hard parts are progress, certificates and recurring subscriptions, which don't always transfer. Export everything regularly, and let existing learners finish on the old platform while new ones start on the new one.
Can I stop people from sharing or downloading my course videos?
Not completely, bought or built. You can make it harder: videos that only play on your own domain, links that expire quickly and a limit on how many devices an account can use at once. Video services built for paid content often include these options. There is no reliable protection against screen recording.
How does EU VAT work when I sell online courses across Europe?
When you sell to consumers in other EU countries, VAT is generally charged at the rate of the customer's country, and the EU One Stop Shop lets you report it in a single return. With a custom build, your payment setup has to apply the right rate per country. This isn't tax advice, so check with your accountant.
What should the first version of a custom course platform include?
Only what's needed to sell and complete a course: login, payments, courses with video and text, progress tracking for learners and a simple admin area for you. If you sell to companies, add seat licenses and a basic report. Community features, points and a native app can usually wait until learners ask for them.