# The allocation trap: should we drop programming?

> A subject that looks loss-making only because of the shared costs it carries.

- Course: [Finance for Product People: From Unit Economics to Business Cases](https://productovi.com/courses/finance-for-product.md)
- Module: Which costs matter for this decision?
- Lesson 30/32, ~29 min
- Source: https://productovi.com/courses/finance-for-product/allocation-trap

## Programming lost 1.86 million?

**Alex Tutor:** Back at Klasna's product team: Hanna's report by subject is out, and Leo is reading it closely.

**Leo:** Hanna's report by subject for last year is brutal. Programming lost 1,859,775 UAH, maths 580 thousand. Only English makes money. I'm thinking of closing programming.

**Hanna:** Careful. Most of that loss is one line I added myself: shared costs. Team salaries, office, coordinators and brand marketing, spread over the subjects by the number of tutors.

**Dataset (CSV):** [Klasna by subject, Sep 2025 – Aug 2026](https://productovi.com/datasets/finance-for-product/allocation-trap/klasna-subject-results.csv)

Last year split by subject; the rows add up to the company's 744,174.72 UAH of operating profit. Variable costs are tutor payouts, payment fees and video + AI. Shared costs (10,088,000 UAH: team salaries, office and tools, support coordinators, brand marketing) are allocated by the number of tutors.

- `subject`: english, maths or programming
- `tutors`: Tutors who taught the subject (the allocation key)
- `lessons`: Lessons delivered in the year
- `lesson_sales_uah`: What families paid for those lessons
- `variable_costs_uah`: Tutor payouts, payment fees and video + AI for those lessons
- `subject_marketing_uah`: Ads aimed at this subject only
- `shared_costs_allocated_uah`: The subject's share of shared costs: 77,600 UAH per tutor
- `operating_result_uah`: Sales − variable costs − subject marketing − allocated shared costs

**Alex Tutor:** Shared costs are 10,088,000 a year over 130 tutors: 77,600 per tutor. Programming has 34 tutors, mostly students teaching a few hours a week, so it carries 2,638,400.

**Sofia:** So it's charged by headcount, not by how much it actually uses the team or the office.

**Alex Tutor:** Before you look at anything else, decide how to read that −1.86 million.

> **Exercise:** Klasna's report by subject shows programming at −1,859,775 UAH for last year. That result already subtracts 2,638,400 UAH of shared costs (team, office, coordinators, brand marketing) allocated at 77,600 UAH per tutor. Which reading is right?

**Alex Tutor:** That's **cost allocation**: useful for pricing and reports, dangerous for decisions. Before deciding anything, look at what programming leaves on its own.

> **Exercise:** Use the dataset. What **contribution margin** did programming leave last year: sales minus its variable costs?

## What would really go away

**Sofia:** 1,118,625 of contribution, 196.25 a lesson: more per lesson than English. After its own 340,000 of ads it still leaves 778,625.

**Alex Tutor:** Now the question from last time: if programming closes, which costs actually go away?

**Hanna:** The payouts, fees and video leave with the lessons. Its own ads, 340,000. Coordinators: programming learners are about 8% of active learners, so three months would have needed one fewer, 114,000.

**Leo:** And the team? The office? The brand campaigns?

**Hanna:** All still there. Those 2,638,400 don't disappear; they move onto English and maths.

> **Exercise:** If Klasna closes programming, which of these would actually go away? Select all that apply.

## What closing would do

**Leo:** I'd been reading that last column as what we'd save by closing.

**Hanna:** It's what's left after a share of costs that stay anyway. Nothing in that column says what would leave.

**Alex Tutor:** So closing programming loses its whole contribution and saves only what goes away with it. Put the two together.

> **Exercise:** By how much would Klasna's operating profit for last year have changed without programming? Programming left 1,118,625 UAH of contribution; closing it saves its 340,000 of ads and 114,000 of coordinators. Enter a fall as a negative number.

**Sofia:** Last year's 744,174.72 of operating profit would have been 79,549.72.

**Leo:** So the "loss-making" subject paid for most of our profit.

## The spiral

**Hanna:** And it gets worse. Without programming, next year's report spreads the shared costs that remain over 96 tutors. Maths would carry 2,701,291.67.

**Sofia:** Then maths shows −1,264,093.67, and someone proposes closing maths.

**Alex Tutor:** That's the spiral. Each cut leaves the same shared costs on fewer shoulders, until the last subject "loses money" too.

**Alex Tutor:** And the report itself depends on a choice. Change the key and run programming again.

> **Exercise:** Klasna allocates its 10,088,000 UAH of shared costs by **lessons** instead of tutors. Last year Klasna delivered 71,563 lessons, 5,700 of them in programming. Programming's sales were 4,047,000 UAH, its variable costs 2,928,375 and its own ads 340,000. What operating result would the report now show for programming? Round to two decimals; enter a loss as a negative number.

**Alex Tutor:** And change the key, the picture changes. Allocate by lessons and programming carries about 803 thousand and shows −24,885.19. Neither key is "true". An allocation is a convention, not a fact about the subject.

> **Exercise:** **True or false:** Klasna's report spreads 10,088,000 UAH of shared costs over 130 tutors (34 in programming, 26 in maths); closing programming would save only 114,000 of them. After programming closes, the same report would show maths with a bigger loss than before, even though nothing about maths changed.

**Leo:** Then what should the report show, if I'm going to decide from it?

**Hanna:** Each subject's contribution, minus the costs it causes and would take with it. Shared costs once, at the bottom, for the company.

**Sofia:** So the decision report and the pricing report can be two different reports.

> **Exercise:** Which report should Leo use to decide whether to keep a subject?

**Alex Tutor:** Now build one line of that decision report, for maths.

> **Exercise:** Maths at Klasna last year: lesson sales 6,539,280 UAH, variable costs (payouts, fees, video + AI) 4,622,082, its own ads 480,000, and 2,017,600 of shared costs allocated by tutors. In a decision report (contribution minus the subject's own costs, shared costs shown once for the company), what does maths bring to the company?

## Your turn: answer Leo

**Leo:** OK. I still need a clear answer for the partners who saw the first report: do we close programming?

**Alex Tutor:** Give the numbers that matter, explain why the report misled, and say what you'd look at instead.

**Sofia:** A few sentences, with what programming leaves and what closing it would cost.

> **Exercise:** Write Leo's answer for the partners (3–5 sentences): do we close programming? The facts: the report by subject shows programming at −1,859,775 UAH after 2,638,400 of shared costs allocated by tutor headcount; programming's own contribution is 1,118,625 UAH (196.25 per lesson); closing it would save only its 340,000 of ads and 114,000 of coordinators; Klasna's operating profit last year was 744,174.72 UAH. Use the numbers that matter and explain why the first report misled.

> **Key ideas**
>
> - **Cost allocation** spreads shared costs by a key (here 77,600 UAH per tutor). It's a convention: by tutors programming shows −1,859,775, by lessons −24,885.19.
> - For a drop decision, compare what the product leaves (contribution: 1,118,625) with the costs that would actually go away (its 340,000 of ads and 114,000 of coordinators).
> - Closing programming would cut Klasna's operating profit by 664,625 UAH, from 744,174.72 to 79,549.72.
> - Allocated costs don't disappear; they move to the remaining products and start a spiral (maths would then show −1,264,093.67).
> - For decisions, report each product's contribution minus its own costs, and show shared costs once for the company.

**Alex Tutor:** Next time Klasna needs money from outside for a bigger plan, and we compare a loan with an investor.

- Previous lesson: [Relevant, sunk and opportunity costs](https://productovi.com/courses/finance-for-product/relevant-and-sunk-costs.md)
- Next lesson: [Debt vs equity: leverage, dilution and risk](https://productovi.com/courses/finance-for-product/debt-vs-equity.md)

---
Productovi Learning. Free, no sign-up needed to read.
