Admissions
Waitlists and seat capacity
Set seat caps per class section, plan intake targets per admission cycle, and promote waitlisted applicants when a seat frees up.
Admissions guide for day and boarding schools.
Last updated August 29, 2026
Seat capacity is where admissions stops being a pipeline and starts being arithmetic. Schoolyi holds two separate numbers: the physical seat cap on each class section, and the intake target you plan for a specific admission cycle. Offers are blocked against both, so a grade that is physically full cannot be oversold, and a cycle that has already met its planned intake stops issuing offers even when desks remain.
A waitlist is simply an application parked in WAITLISTED status while the grade has no room. Staff set that status manually on the application detail page - it is reachable from Under review, Test completed, Interview completed, Shortlisted, Selected, and Offer rejected. Nothing moves off the waitlist on its own unless you have enabled the auto-promote flag and the offer-expiry cron.
Configure this first
- Capacity per section at /classes - a positive Capacity on at least one active section for the grade and stream, otherwise every offer fails with CAPACITY_NOT_CONFIGURED
- Admission cycle at /admissions/cycles with the academic year the intake belongs to
- Intake targets at /admissions/intake-plan - seatsToFill per section, plus an optional assumedOccupied override when you expect leavers
- Required documents verified on each application, because offer creation refuses unverified applicants
How seats are counted
| Number | Where it comes from | Effect on offers |
|---|---|---|
| Capacity | Class.capacity per active section | Hard ceiling for the grade and stream |
| Occupied | Live roster count, or assumedOccupied when set on the cycle target | Subtracted from capacity when planning |
| Held offers | Offers in PENDING or ACCEPTED on live applications | Reserve a seat until accepted, rejected, or expired |
| Intake target | Sum of seatsToFill across sections | Enforced only when every section in the group has a target |
Handoff
A promotion produces an ordinary pending offer, so from that point the applicant rejoins the normal offer and enrollment path with the same acceptance deadline and the same document requirements as everyone else. Remaining waitlisted families for that grade are emailed a seat-availability update pointing at the public tracking page, which is the only automatic contact the waitlist generates.
Limits
- Waitlist order is first-in, first-out by submission time. Merit rank lives on shortlists and is not applied to the waitlist queue
- A promoted applicant receives a normal pending offer with the usual acceptance deadline; there is no shorter fast-track window
- Category quotas are stored per cycle but do not automatically re-rank or reserve waitlist places
Common questions
Quick answers in plain language.
Why does issuing an offer fail with CAPACITY_NOT_CONFIGURED?+
No active class section for that grade and stream has a positive capacity. Open /classes, set Capacity on at least one section for the grade, then retry from /admissions/offers.
How do I promote the next family off the waitlist?+
Use the Waitlist queue panel on /admissions/offers, /admissions/shortlists, or /admissions/enrollments. It calls POST /api/admissions/waitlist/promote-next, which takes the oldest WAITLISTED application for that grade and stream and creates a pending offer.
Does the waitlist promote automatically when an offer expires?+
Only if you set ADMISSIONS_AUTO_PROMOTE_WAITLIST=true and run offer expiry on a schedule. Expiry itself is POST /api/admissions/cron/expire-offers, called by scripts/run-school-cron.sh when ADMISSIONS_CRON_SECRET is set. Without the cron, nothing expires and nothing promotes.
Do pending offers count against seats?+
Yes. Seat maths counts enrolled students plus every offer in PENDING or ACCEPTED state, so two committees cannot both promise the last desk.
Related searches
School leaders and IT teams often search for: seat capacity planning schools, and admission waitlist software.

