A lesson ledger for private tutors and music teachers
Every krone on the invoice points to a dated lesson.
Lessonbook keeps track of which lessons were given, prepaid, cancelled or made up, and works out what each family owes. The balance is never stored and cannot be edited by hand. It is calculated from the list of lessons, payments and adjustments, every time you open it.
No account needed to try it. The ledger is saved in your browser.

The Berg family · September
Example
2 Sept · Lesson given
NOK 450
9 Sept · Missed with notice
NOK 450
16 Sept · Cancelled by teacher
not charged
20 Sept · Payment · Vipps
-NOK 900
23 Sept · Make-up lesson
not charged
30 Sept · Lesson given
NOK 450
Owes NOK 450
The statement the family receives, reference LB-BERG-214
What a month looks like
An example worked out by the same code as your ledger: NOK 450 a lesson, at most one make-up credit a month.
| Date | What | Amount | Amount /Balance |
|---|---|---|---|
| 2 Sept 2026 | 2 Sept 2026 Lesson given | NOK 450 | NOK 450 NOK 450 |
| 9 Sept 2026 | 9 Sept 2026 Missed with notice Ill, told us the day before Earned one make-up credit, valid until 8 Nov 2026 | NOK 450 | NOK 450 NOK 900 |
| 16 Sept 2026 | 16 Sept 2026 Cancelled by teacher | — | — NOK 900 |
| 20 Sept 2026 | 20 Sept 2026 Payment · Vipps | -NOK 900 | -NOK 900 NOK 0 |
| 23 Sept 2026 | 23 Sept 2026 Make-up lesson Used one make-up credit | — | — NOK 0 |
| 30 Sept 2026 | 30 Sept 2026 Lesson given | NOK 450 | NOK 450 NOK 450 |
When the family accounts and the invoices don't match
You have prepaid packages, a term fee, a student who was ill twice in October, a lesson you cancelled yourself and a make-up credit nobody remembers using. The spreadsheet says one thing, the invoice another, and the balance brought forward from last month has drifted. Lessonbook keeps one list of dated events, and both the balance and the statement are read from that same list. So they cannot drift apart.
The monthly reckoning: three questions
Once a month you need to know who attended, who is owed a make-up lesson, and what each family owes. Lessonbook answers all three from the same list of dated lines, so the answers cannot disagree.
Who attended?
The schedule lays out the lessons still waiting to be marked, and you mark each one given, missed and charged, missed with notice, cancelled by you, or a make-up.
Who is owed a make-up lesson?
Make-up credits follow the rules you set for that family: whether notice earns one, the cap per month or term, and how long it lasts. Earned, refused, used and expired each appear as their own dated line.
What does each family owe?
The balance is calculated from the lessons, charges, payments and adjustments — never typed in. The family gets that same calculation as a read-only statement.
How it works
1. Set each family's plan
Per lesson, per term or a prepaid package. Add the weekly day and time (an RFC 5545 rule under the hood), plus term dates and holidays, entered by hand or imported from an .ics calendar.
2. Mark each lesson
Given, missed and charged, missed with notice, cancelled by you, or a make-up. The schedule lays out the lessons still waiting to be marked, with one button per outcome.
3. Record payments yourself
When money arrives by Vipps or bank transfer, you record it. Lessonbook never takes payments and never needs access to your bank.
4. Share a statement anyone can check
The family gets a link to a read-only statement with the amount, the payment reference, and your Vipps number, bank account or SEPA QR code. Every line has a date. Export to CSV, or print to PDF.
Five ways a lesson can end
Given
The lesson took place. Charged per lesson, taken from the package, or covered by the term fee.
Missed, charged
The student did not come and did not give notice in time. Charged like a normal lesson, with no make-up credit.
Missed with notice
The student gave notice in time. The lesson is charged as usual and earns one make-up credit, if the rules allow it and the cap is not reached. The line says which.
Cancelled by teacher
Never charged and never taken from a package. On a term plan it earns a make-up credit that does not expire and does not count towards the cap.
Make-up lesson
Uses the credit that expires first and costs nothing. If none are left it is recorded as an extra lesson, and the line says so.
Make-up rules that are written down
You decide three things per family: whether a lesson missed with notice earns a make-up credit at all, how many credits can be earned per month or per term, and how many days a credit lasts. When the cap is reached or a credit expires, that becomes its own dated line on the statement. The rules are saved on each lesson as it is recorded, so a change in January never rewrites the autumn.
What Lessonbook does not do
No payment processing, no parent logins, no booking and no negotiating times. In this first version the ledger lives in your browser rather than on a server, so download a backup from the settings now and then.
It costs nothing
Lessonbook is free. The ledger lives in your own browser, so it costs us nothing beyond being on our server — and that means it costs you nothing either. No per-student pricing, no tiers, no account, no countdowns.
Want to support Lessonbook?
Everything here is free, and that is completely fine. It costs us nothing beyond being on our server, so it costs you nothing.
Want to chip in anyway? It goes straight to keeping these tools free for everyone. Pick an amount, or write your own.
Other things we made
Faktura uten konto og binding
Se rommet ditt i ny stil
Delt doseliste for familien
Ukas vaktplan på en kaffepause