Theory
Case: fix Klasna's exam-season price page
NMT Sprint's page is ready to go live with a "−20%" from a one-week price, a restarting countdown, false scarcity, a fee at checkout and a pre-ticked add-on. Find what misleads and rewrite it honestly.
~9 min read · 10 exercises · 250 points
Before you start
The draft
Back at Klasna for the module's case: Nazar's NMT Sprint page for the exam season goes live on 1 February 2027, and it has every problem from this module. Your job is to audit it line by line, put numbers on what misleads, decide what to do for the families who overpaid, and rewrite it honestly.
Audit a price page line by line
A price page is a set of claims. An audit takes them one at a time and asks: what fact stands behind this line, and is it true?
Nazar's draft for NMT Sprint (eight weeks of maths exam prep, 1 March – 25 April 2027) makes claims about the past (“15,500 12,400, −20%”), about time (a 23:59:59 countdown), about scarcity (“only 3 places left”), about the total (a fee and a pre-ticked Club add-on at checkout) and about comparisons (the maths 16-pack saving).
The facts: sales opened on 11 January at 15,500 because Leo believed exam families pay anything, well above the 13,000 ceiling worked out in November. After a week only four families had bought, so since 18 January the price is 12,400. The countdown restarts for every visitor. As of 1 February, 41 of 120 places are sold.
The launch above the ceiling is what created the temptation: a high price that didn't sell became a “was” price to shout about.
- Do“Line 3 says 3 places left; bookings say 79. It goes.”
- Don't“It looks great, let’s go live tomorrow.”
Looking good isn't the test; each line must match a fact.
What misleads on the draft
Checked against the facts, four elements of the draft mislead buyers:
Draft page, NMT Sprint (for 1 February 2027) · shown above
- “
15,50012,400, −20%”: 15,500 was charged for one week; the lowest price of the 30 days before 1 February is 12,400, so the real reduction is 0%. - The 23:59:59 countdown: it restarts for every visitor, so nothing ends. That's false urgency.
- “Only 3 places left!”: 41 of 120 places are sold, so 79 are left.
- The pre-ticked Club add-on: the box is ticked for the buyer, a paid extra they didn't choose.
The small grey “paid in full at checkout” under “from 1,550 a week” and the 2.5% fee on the last screen hide the total too.
Two lines pass. The list of what the Sprint includes is plain information. The maths 16-pack comparison is honest: two 8-packs really cost 2 × 5,600 = 11,200 every day, and the label says what is compared.
An audit isn't a purge of everything persuasive; it removes what's false and keeps what's true.
- Do“Out: the −20%, the clock, ‘3 left’, the pre-ticked box. Stays: what's included, the 16-pack comparison.”
- Don't“Remove everything that sells, just to be safe.”
True information persuades; only false claims have to go.
A one-week launch price is not a reference
A crossed-out price claims the product used to cost more. Klasna tests every such claim against the lowest price of the previous 30 days, the EU rule for announced reductions that Klasna applies to lessons too.
On 1 February the previous 30 days run back into early January. NMT Sprint sold at 15,500 for one week, 11–17 January, and at 12,400 since 18 January. The lowest price in the window is 12,400, the price on the page. So the real reduction is (12,400 − 12,400) ÷ 12,400 = 0%.
The “−20%” is therefore not a smaller discount than advertised; it's no discount at all. Both the crossed-out 15,500 and the percentage come off the page.
That 15,500 was a mistake in its own right: Leo's guess that exam families pay anything put the launch above the 13,000 ceiling, and only four families bought. A price set that wrong can't later be recycled as proof of a bargain.
- Do“NMT Sprint: 12,400 UAH” with no crossed-out number.
- Don't“
15,50012,400, −20%”15,500 lasted a week; the 30-day lowest is 12,400, so the reduction is 0%.
What a click-through parent really pays
The draft's checkout stacks two problems on one screen: a box ticked for the buyer and a fee that appears only at the end. That's drip pricing and a pre-ticked paid extra together.
Draft page, NMT Sprint (for 1 February 2027) · shown above
Follow a parent who clicks straight through:
- order: 12,400 + Club for 3 months, 3 × 450 = 1,350 → 13,750;
- with the 2.5% “service fee” on the whole order: 13,750 × 1.025 = 14,093.75;
- above the headline: 14,093.75 − 12,400 = 1,693.75, or 1,693.75 ÷ 12,400 = 13.66% more than the price the parent compared.
Even with the box unticked, the fee alone makes the total 12,710, 310 above the headline.
Nazar's defence, “it's all on the screen”, misses the point: it's on the last screen. Families compare offers by the first number they see. To measure how far a page misleads, compare that first number with what a parent pays by accepting every default.
- Do“Headline 12,400; click-through total 14,093.75: 13.66% more. Fix the checkout.”
- Don't“The fee and the add-on are on the screen, so it’s transparent.”
On the last screen, after the family compared 12,400.
Fixing the checkout and the EU line
The fixes for the bottom half of the page all follow one rule: the first number is the number paid.
- No fee at checkout. Either absorb the 2.5% payment fee at 12,400 or build it into one shown price; never add it on the last screen.
- No pre-ticked extras. The Club add-on becomes an empty box with its price next to it. In the EU, a pre-ticked box isn't consent to a paid extra.
- Leaving as easily as buying. “To cancel the Club add-on, write to support” goes; cancelling happens in the account, in about as many steps as adding it.
- EU prices with VAT. In the EU, consumer prices are shown including VAT and other taxes, not “VAT added at checkout”. Whether VAT is due on live online lessons sold from Ukraine is a question for a tax adviser before selling into a country; whatever the answer, the euro price shown is the price paid, with the charging currency stated.
These are dated guardrails, not legal advice.
- Do“☐ Add Klasna Club for 3 months, 1,350 UAH” (unticked).
- Don't“EU families: VAT added at checkout where applicable.”
EU consumer prices are shown with VAT; a price that grows at checkout misleads.
Making it right for those who overpaid
Removing the fake “was” price fixes the page. It leaves one group: the four families who bought in the first week at 15,500 and will now see 12,400.
The November depositors are already covered: the price-ladder promise says each pays its step's price or 12,400, whichever is lower. These four had no such promise. Leo's view, “they agreed to the price, not our problem”, may be right legally. But they paid more for the same Sprint because Klasna guessed wrong, and a parent who finds out tells the others.
The cost of making it right is small and easy to count: 15,500 − 12,400 = 3,100 each; 4 × 3,100 = 12,400 UAH, the price of one Sprint, against 41 places already sold.
And it removes the last reason for a “was” price: 12,400 becomes the price, full stop, with nothing to explain later. When a price was set wrong, refunding the difference to those who overpaid is usually the cheapest way to keep your word.
- Do“We're refunding the 3,100 difference to the four families who bought at launch.”
- Don't“They agreed to 15,500; if they notice, we'll deal with it then.”
Waiting to be caught costs more trust than the 12,400 refund.
A comparison is not a reduction
Two kinds of “save” look alike on a page and follow different logic.
- An announced reduction says a product's price went down: “
15,50012,400”. It must be measured from the lowest price of the previous 30 days. - A comparison sets two things on sale today side by side: “16 lessons for 10,720, 480 less than two 8-lesson packages”. Both prices exist every day, so the saving is true at the moment the buyer reads it.
The maths line checks out: an 8-lesson maths package costs 5,600 (700 a lesson), two cost 11,200, and the 16-pack costs 10,720, a real 480 less. The label names exactly what is compared.
Keep two conditions for an honest comparison: both prices must be ones families actually pay today, and the label must say what is compared with what. A comparison against a package nobody buys, or an unlabelled “save 480”, slides back into a fake reference.
- Do“16 lessons: 10,720 UAH, 480 less than two 8-lesson packages.”
- Don't“Save 480!” with nothing to say against what.
An unlabelled saving hides what it's measured from.
Honest still sells
Leo's worry: without the discount, the clock and “3 places”, what's left to sell with? Everything that's true:
- What the Sprint includes: 16 one-to-one lessons, 4 full mock exams with AI scoring and a tutor's written review, a weekly progress note.
- A real comparison: private maths tutors in Klasna's October scan charge 9,600–12,800 for 16 lessons, with no mock exams.
- A real deadline: sales close on 28 February.
- Real scarcity: 79 of 120 places, counted live.
So the headline becomes: “12,400 UAH for 8 weeks, paid once. Sales close on 28 February. 79 of 120 places left.” It gives the total and how it's paid, a reason to decide soon, and nothing a parent could later catch out.
How it fits together: audit each claim against its fact, measure “was” prices from the 30-day low, put the full total first, and fix what a wrong price did. The next module: when a discount actually buys Klasna something, and when it only gives money away.
- Do“12,400 UAH for 8 weeks, paid once. Sales close on 28 February. 79 of 120 places left.”
- Don't“From 1,550 UAH a week! Hurry, places are running out!”
Hides the total and implies scarcity with no number behind it.
Ready to practise?
Answer the lesson's exercises and earn 250 points the first time you finish it.
Start the exercises