Pricing
Per learner, per year. Self-hosting is free because the licence says so.
Priced per learner, per year, and that is the whole formula
No modules to unlock, no separate charge for the API, no per-integration fee. Self-hosting is free forever because the licence says so, not because we are being generous.
Self-hosted
Run it yourself. Same code, same features, no licence key.
AGPL-3.0. No licence key, no feature flags, no call to us required.
- Every feature, no feature flags
- Community forum and public issue tracker
- Docs, reference deployment and Helm chart
- Security advisories on the public list
- Named support contact
- Migration service
Operated
We run it in your region, you keep the exit door open.
Billed annually on distinct learners who logged in at least once. Falls if your numbers fall.
- Everything in Self-hosted
- EU, UK or Canadian hosting region
- 99.9% uptime commitment, credited
- Named support contact, 4-hour response
- Quarterly upgrade, scheduled with you
- Full data extract on request, any time
Consortium
For groups buying together, and for anyone over 20,000 learners.
A fixed annual fee, agreed once and held for the term of the agreement.
- Everything in Operated
- Shared identity across member institutions
- Migration service included
- Two named engineers, one-hour response
- A seat on the roadmap council
- Annual on-site review
What institutions ask before signing
The awkward ones included. If yours is not here, ask it on the contact page and we will answer in writing.
You run one command and get a tarball — courses, submissions, grades, discussion history, files and the audit log, in documented open formats. Operated customers can trigger it themselves from the admin console at any time, without asking us and without a notice period. We do not consider your data to be leverage.
Yes, and you can check. There is no enterprise fork, no feature flags gated on a licence key, and no "open core" module we hold back. What you pay for on the Operated plan is that we run it, patch it and answer the phone — not access to features.
We count distinct learners with at least one login in the billing year, measured at year end. A learner who registers and never logs in is not counted. A learner enrolled on four courses is counted once. If your number falls, so does the invoice.
That is the normal way to start, and LTI 1.3 makes it work properly — Cairn can sit inside your existing platform as a tool, or host tools from it, so a single department can pilot without the registry noticing anything changed.
Cairn is built by a 34-person cooperative with no outside investors. The code is AGPL-3.0 and the trademark is held by a foundation with institutional trustees, so an acquisition could not close the source or relicense it. That is the point of the structure.
The authoring tools. If your instructors are used to a drag-and-drop page builder they will find ours plain, and we have deliberately not built a proprietary one because it is the single hardest thing to migrate away from. Most institutions author in something standards-based and import it. Some find that a fair trade and some do not.
The exit clause is on page two
Read the member agreement before you talk to us. Four pages, plain language, and it says what happens to your data if you leave.