Enrolments and tuition, not enquiries
Rank channels by the tuition they produced rather than the forms they filled.
For Private Schools
Match enrolled students and the tuition they pay across their years to the open days and campaigns that produced the family.
No card required · Nothing to install · Cancel anytime
The blind spot
Enquiry to enrolment takes a full admissions cycle, and a student enrolled once pays tuition for years. Neither fits any attribution window.
Rank channels by the tuition they produced rather than the forms they filled.
Someone who enquired for one intake and started at the next still credits the original campaign.
Only exact matches count automatically; anything weaker is flagged rather than assumed.
Not impressions, not leads, not cost per click. Closed revenue, by the channel that produced it, for a period you choose — with the portion we could not trace shown rather than quietly shared out across your paid channels.
| Channel | Sales | Revenue | Share |
|---|---|---|---|
| Google Ads | 16 | $432,000 | |
| Meta Ads | 13 | $336,000 | |
| Open days | 24 | $648,000 | |
| Direct / Unknown | 37 | $984,000 |
A family that enrols in year seven may pay tuition for six years and enrol a sibling besides. Judging the campaign that produced them on a single year's fee understates it several times over.
Because the match is on the family, every subsequent year and every sibling credits the original channel — which is the only figure a board can sensibly compare against the admissions budget.
Schools invest heavily in open days and rarely connect attendance to enrolment beyond a headcount. Which campaigns filled the room, and which attendees actually enrolled, are both usually unknown.
The registration list is a source file. Uploaded, open days rank on enrolled tuition against paid channels, and the campaigns that filled them can be judged on the same basis.
"We generated 400 leads" invites an argument. "This channel closed $186,400 last quarter, here is the reconciliation" ends one. The teams that can show closed revenue by channel are the teams that get the next increase approved, because they are asking with evidence rather than with conviction.
Killing spend is politically harder than adding it, because someone always owns the channel being cut. A number that reconciles to the sales export takes the argument out of the room — you are not overruling a colleague's judgement, you are reading the same ledger they are.
Platform-reported conversions do not reconcile to revenue, and eventually someone in finance notices. Reporting built from your own closed-sales export starts from the number finance already trusts, which is why it holds up when it is checked.
Because this reconciles exports rather than tracking visitors, it works on months that have already closed. You are not instrumenting now to learn something in ninety days — you can answer for last quarter today, which is usually when the question is being asked.
Which is why there is no attribution window. An enquiry in autumn and an enrolment the following summer still match.
Upload the open-day registration list as a source file and visits become a measurable channel.
Only a parent contact detail, a tuition amount and a date are needed. No student names, no records.
Flat monthly pricing with no per-call, per-minute or per-form fees. The number here is the number on the invoice. Most private schools land on Growth.
A single business getting started
$49/mo
billed monthly
A business scaling ad spend
$199/mo
billed monthly
One business closing at volume
$499/mo
billed monthly
Reporting on many clients at once
$799/mo
billed monthly
Enrolments or tuition: a parent contact email or phone, the amount, and a date.
Upload two exports and see your real revenue by channel in minutes. Three days free, no card.
Start free