Theory
Case: a board report for a new board member
A board report on the quarter: rebuild Klasna's autumn P&L from raw lines, separate what will repeat from what won't, and back the memo with numbers.
~9 min read · 10 exercises · 250 points
Before you start
Before Thursday's board
On Klasna's product team, you're helping Leo and Hanna get ready for Thursday's board meeting. The new board member has read the autumn P&L and sent one question: which of these numbers will still be there next quarter?
This case closes the module. Working from the raw monthly lines rather than Hanna's summary, you'll rebuild the quarter's P&L, sort what will repeat from what won't, and back a short memo to the board with numbers.
Rebuilding revenue from raw lines
A board member who asks "which numbers will repeat?" deserves an answer built from the raw lines, not from a summary. Klasna's dataset has one row per line and one column per month.
Dataset · 14 rows
Klasna's P&L lines, September–November 2026
One row per line, one column per month, UAH. Klasna acts as an agent for 1:1 lessons (revenue = lesson_gmv − lesson_tutor_payouts) and as the principal for Teams and the Club.
First 5 of 14 rows
The first trap is at the very top. lesson_gmv is what families paid for 1:1 lessons: GMV, not revenue. Klasna is an agent for those lessons, so only its commission counts:
revenue = (lesson_gmv − lesson_tutor_payouts) + breakage + club_subscriptions + teams_lessons
November 2026:
- commission: 5,408,550 − 3,690,540 = 1,718,010;
- plus breakage 163,150, Club 387,000, Teams 272,000;
- revenue: 2,540,160 UAH.
Adding the whole lesson_gmv instead gives 7,948,700, which mixes the tutors' money into Klasna's revenue. The Club and Teams are different: Klasna is the principal there, so their lines are revenue in full and their delivery costs sit in cost of revenue. For the quarter, the same method gives 6,832,760 UAH of revenue.
- Do(5,408,550 − 3,690,540) + 163,150 + 387,000 + 272,000 = 2,540,160 UAH
- Don't5,408,550 + 163,150 + 387,000 + 272,000 = 6,230,700 UAH
lesson_gmv includes the tutors’ share; only the commission is Klasna’s revenue.
A headline that answers the board’s question
The new board member asked one question: which of these numbers will still be there next quarter? A good headline answers that question, not a nicer one.
Klasna's operating profit rose every month: 352,306, 593,252 and 759,141 UAH. That is true. But breakage, revenue from lessons nobody used, was 277,700, 188,460 and 163,150 in those months. September was the first month packages ever expired, so there is no history to say how much breakage will come next year.
Without breakage the months read 74,606 → 404,792 → 595,991 UAH. Two facts become visible at once:
- most of September's profit came from expired lessons;
- the underlying trend is still up, and strongly.
That combination is the honest, and more convincing, story. A headline of "1.7 million for the quarter" invites the board to extrapolate a line that may not repeat; the reader finds out later and trusts the next report less. Show both versions, and say which one you expect to repeat.
- Do"Up every month; without expired lessons 74,606 → 404,792 → 595,991 UAH."
- Don't"Operating profit 1.7 million and rising; expect more next quarter."
It leans on 629,310 of breakage with no history behind it.
Profit with and without non-recurring revenue
Walk down the quarter's staircase: revenue 6,832,760 − cost of revenue 1,724,061 = gross profit 5,108,699; − operating expenses 3,350,000 = EBITDA 1,758,699; − depreciation 54,000 = operating profit 1,704,699 UAH.
Now separate what may not repeat. Breakage, revenue from expired lessons, was 277,700 + 188,460 + 163,150 = 629,310 UAH. September 2026 was the first month Klasna's packages ever expired; last autumn there was no such line. Until there are a few cohorts of history, treat it as non-recurring revenue.
Dataset: Klasna's P&L lines, September–November 2026 · shown above
Breakage has no costs attached: no tutor is paid for an expired lesson. So it comes off operating profit in full:
1,704,699 − 629,310 = 1,075,389 UAH without breakage.
By month, operating profit falls from 352,306 to 74,606 in September, from 593,252 to 404,792 in October and from 759,141 to 595,991 in November. A board report shows both versions side by side, so the reader can see how much rests on a line that might not come back.
- DoWithout breakage: 1,704,699 − 629,310 = 1,075,389 UAH
- Don'tWithout breakage: 1,758,699 − 629,310 = 1,129,389 UAH
That starts from EBITDA, which still includes depreciation; start from operating profit.
How much of the profit rests on one line
A share can make a dependency clearer than a subtraction. The question: what part of operating profit comes from a line that may not repeat?
Breakage has a special property: no costs attached. No tutor is paid for an expired lesson, no video minutes are used, no fee is charged again. So every hryvnia of breakage revenue reaches operating profit.
Klasna's autumn:
- operating profit: 1,704,699 UAH;
- breakage: 629,310 UAH;
- share: 629,310 ÷ 1,704,699 = 36.92%.
More than a third of the quarter's profit depends on families not using lessons they paid for. Compare that with breakage's share of revenue, 629,310 ÷ 6,832,760 ≈ 9.21%. The same line looks small on the revenue side and large on the profit side, precisely because it carries no costs.
When a line is both uncertain and cost-free, measure it against profit, not only against revenue. That is the number a board member needs to judge how fragile the bottom line is.
- Do629,310 ÷ 1,704,699 = 36.92% of operating profit
- Don't629,310 ÷ 6,832,760 = 9.21%, so breakage hardly matters.
That is its share of revenue; with no costs, its weight in profit is four times larger.
Why the blended margin falls
Klasna's gross margin moved month by month: 76.77% in September, 74.20% in October, 73.74% in November.
Dataset: Klasna's P&L lines, September–November 2026 · shown above
November from the raw lines:
- revenue: (5,408,550 − 3,690,540) + 163,150 + 387,000 + 272,000 = 2,540,160 UAH;
- cost of revenue: fees 144,888.75 + video and AI 292,330 + Club hosts 83,600 + Teams tutors 146,200 = 667,018.75;
- gross profit: 1,873,141.25;
- gross margin: 1,873,141.25 ÷ 2,540,160 = 73.74%.
Why is it falling while gross profit grows (1,508,306 → 1,727,252 → 1,873,141)? The mix is shifting:
- Teams, shown gross with a 42% margin, grows from 128,000 to 272,000 of revenue;
- breakage, which has a 100% margin, shrinks from 277,700 to 163,150.
A blended margin is a weighted average, so it moves with the mix even when no line gets worse. Before reading a falling margin as bad news, check which lines grew and how each is shown.
- DoNovember: 1,873,141.25 ÷ 2,540,160 = 73.74%
- Don'tNovember: (7,948,700 − 667,018.75 − 3,690,540) ÷ 7,948,700 = 45.18%
lesson_gmv is not revenue; for 1:1 lessons only the commission belongs on top.
A low margin can still mean more profit per lesson
Klasna's blended gross margin mixes lines shown in different ways, so line margins are not comparable.
- Teams is shown gross: 800 UAH of revenue a lesson, with the tutor's 430 and 31 for video and AI in cost of revenue. Gross profit: 339 UAH a lesson, a margin of 42.38%.
- 1:1 lessons are shown net: only the commission is revenue. In November a lesson cost families 595 UAH, the tutor got 406, the fee was 14.88 and video 31. Gross profit: about 143 UAH a lesson.
So Teams has the lowest margin and the highest gross profit per lesson. The percentage reflects presentation; gross profit per unit reflects earnings.
By line, the quarter's gross profit was: 1:1 lessons 3,523,282, Club 684,908, Teams 271,200, expired lessons 629,310. As Teams grows, the blended gross margin will fall while gross profit rises. Tell the board before they see it, so a falling percentage is not read as a weaker business.
- DoCompare per lesson: Teams 339 UAH of gross profit vs about 143 for a 1:1 lesson.
- Don't"Teams’ 42% margin is the lowest, so slow Teams down."
Its margin is low because it is shown gross, not because it earns less.
Paid, earned and still owed
A prepayment splits into two parts on any report date: what has been earned (revenue in the P&L) and what is still owed (deferred revenue, a liability on the balance sheet).
Klasna Club's annual plans this autumn: 60 sold in September, 25 in October, 15 in November, 4,320 UAH each, recognized at 360 a month counting the month of purchase.
- Paid: 100 × 4,320 = 432,000 UAH, all of it in the bank.
- Earned by the end of November: 60 × 3 + 25 × 2 + 15 × 1 = 245 plan-months × 360 = 88,200 UAH, in autumn revenue.
- Still owed: 432,000 − 88,200 = 343,800 UAH, deferred revenue.
The same split applies to families' prepaid 1:1 lessons and, in the other direction, to the 640,000 UAH Teams invoice: earned and in revenue, but not yet paid.
For a board memo this means two honest sentences instead of one: what the quarter earned, and what Klasna still owes or is still owed. The P&L carries only the first; the balance sheet carries the second.
- DoClub annual plans: paid 432,000, earned 88,200, still owed 343,800 UAH.
- Don'tClub annual plans: 432,000 UAH of autumn revenue.
Most of that money pays for months of service not yet delivered.
What the P&L cannot show the board
The P&L shows what was earned and what it cost. Some questions a board asks need other statements.
In the P&L:
- marketing for the quarter, 880,000 UAH (an operating expense);
- revenue from expired lessons, 629,310 (breakage);
- the laptops' depreciation, 54,000 for the quarter.
Not in the P&L:
- whether invoices are paid: Teams was invoiced 640,000 UAH on 30 November, and companies pay in 30 to 60 days;
- service still owed to customers: families' prepaid lessons in deferred revenue, and 343,800 UAH of Club annual plans;
- cash paid for equipment: the 432,000 UAH for laptops in August.
These belong to the balance sheet and the cash flow statement. So when Leo asks whether Klasna can pay for growth itself, the P&L cannot answer alone. In a memo, name it as an open question instead of implying that profit equals cash.
- Do"Profit is 1.7 million; cash depends on the 640,000 Teams invoice and prepaid lessons. Open question."
- Don't"We earned 1.7 million, so we can fund growth from our own cash."
Profit is not cash; the P&L does not show what has been paid.
Ready to practise?
Answer the lesson's exercises and earn 250 points the first time you finish it.
Start the exercises