15 May 2026
Total P1 vacancies dropped from 40,008 in 2025 to 38,548 in 2026. That is 1,460 fewer places across the same 179 schools, a −3.6% cut.
Reason for the cut? MOE has essentially scaled vacancies to match the demographics. Yup, low TFR, lower birth rate, fewer children registering this year. There is a −3.1% drop in the underlying birth cohort.
The cut isn’t spread evenly, though: 61 schools reduced vacancies, only 12 added.
Biggest gain: Maris Stella High (+60), which is also going co-ed from 2027. The extra class likely positions the school for the bigger mixed intake to come.
We also analyzed by area, in which Punggol & Sengkang have the biggest cuts.
| School | Area | 2025 | 2026 | Change |
|---|---|---|---|---|
| Maris Stella High | Toa Payoh | 270 | 330 | +60 |
| Bukit View | Bukit Batok | 280 | 320 | +40 |
| Chongzheng | Tampines | 240 | 280 | +40 |
| Gongshang | Tampines | 240 | 280 | +40 |
| Tampines | Tampines | 280 | 320 | +40 |
| Jiemin | Yishun | 190 | 220 | +30 |
| Pioneer | Jurong West | 350 | 380 | +30 |
| Ahmad Ibrahim | Yishun | 220 | 240 | +20 |
| Peiying | Yishun | 200 | 220 | +20 |
| Bendemeer | Kallang | 180 | 190 | +10 |
| Farrer Park | Kallang | 180 | 190 | +10 |
| Kong Hwa | Geylang | 270 | 280 | +10 |
| School | Area | 2025 | 2026 | Change |
|---|---|---|---|---|
| Clementi | Clementi | 320 | 240 | -80 |
| Fernvale | Sengkang | 280 | 240 | -40 |
| Jurong | Jurong East | 220 | 180 | -40 |
| Lianhua | Bukit Batok | 320 | 280 | -40 |
| Pei Tong | Clementi | 320 | 280 | -40 |
| Tampines North | Tampines | 320 | 280 | -40 |
| Yumin | Tampines | 280 | 240 | -40 |
| Anchor Green | Sengkang | 240 | 210 | -30 |
| Bedok Green | Bedok | 240 | 210 | -30 |
| Boon Lay Garden | Jurong West | 180 | 150 | -30 |
| Bukit Panjang | Bukit Panjang | 240 | 210 | -30 |
| CHIJ (Kellock) | Bukit Merah | 180 | 150 | -30 |
| Cantonment | Bukit Merah | 150 | 120 | -30 |
| Compassvale | Sengkang | 240 | 210 | -30 |
| Corporation | Jurong West | 180 | 150 | -30 |
| De La Salle | Choa Chu Kang | 240 | 210 | -30 |
| Edgefield | Punggol | 240 | 210 | -30 |
| Endeavour | Sembawang | 240 | 210 | -30 |
| First Toa Payoh | Toa Payoh | 180 | 150 | -30 |
| Frontier | Jurong West | 210 | 180 | -30 |
| Gan Eng Seng | Bukit Merah | 150 | 120 | -30 |
| Greendale | Punggol | 210 | 180 | -30 |
| Horizon | Punggol | 240 | 210 | -30 |
| Jurong West | Jurong West | 180 | 150 | -30 |
| Maha Bodhi | Geylang | 330 | 300 | -30 |
| Nanyang | Bukit Timah | 390 | 360 | -30 |
| New Town | Queenstown | 210 | 180 | -30 |
| North Spring | Sengkang | 180 | 150 | -30 |
| North Vista | Sengkang | 240 | 210 | -30 |
| Northoaks | Sembawang | 240 | 210 | -30 |
| Oasis | Punggol | 240 | 210 | -30 |
| Palm View | Sengkang | 240 | 210 | -30 |
| Pasir Ris | Pasir Ris | 180 | 150 | -30 |
| Paya Lebar Methodist Girls’ | Hougang | 270 | 240 | -30 |
| Punggol Green | Punggol | 240 | 210 | -30 |
| Punggol View | Punggol | 240 | 210 | -30 |
| Red Swastika | Bedok | 240 | 210 | -30 |
| Rulang | Jurong West | 270 | 240 | -30 |
| Seng Kang | Sengkang | 180 | 150 | -30 |
| Si Ling | Woodlands | 150 | 120 | -30 |
| Springdale | Sengkang | 240 | 210 | -30 |
| St. Anthony’s Canossian | Bedok | 210 | 180 | -30 |
| St. Stephen’s | Bedok | 240 | 210 | -30 |
| Tao Nan | Marine Parade | 360 | 330 | -30 |
| Teck Whye | Choa Chu Kang | 210 | 180 | -30 |
| Unity | Choa Chu Kang | 210 | 180 | -30 |
| Valour | Punggol | 240 | 210 | -30 |
| West Grove | Jurong West | 210 | 180 | -30 |
| Westwood | Jurong West | 240 | 210 | -30 |
| White Sands | Pasir Ris | 180 | 150 | -30 |
| Yew Tee | Choa Chu Kang | 210 | 180 | -30 |
| Yishun | Yishun | 220 | 190 | -30 |
| Yuhua | Jurong East | 240 | 210 | -30 |
| Rivervale | Sengkang | 200 | 180 | -20 |
| Shuqun | Jurong West | 200 | 180 | -20 |
| Xishan | Yishun | 240 | 220 | -20 |
| Casuarina | Pasir Ris | 160 | 150 | -10 |
| Fuhua | Jurong East | 220 | 210 | -10 |
| Hougang | Hougang | 190 | 180 | -10 |
| Park View | Pasir Ris | 190 | 180 | -10 |
| Punggol | Hougang | 190 | 180 | -10 |
Aggregated across all schools in each area. Sorted by net change (most cuts first).
| Area | Added | Cut | Net |
|---|---|---|---|
| Sengkang | 0 | -270 | -270 |
| Punggol | 0 | -210 | -210 |
| Jurong West | +30 | -230 | -200 |
| Bedok | 0 | -120 | -120 |
| Choa Chu Kang | 0 | -120 | -120 |
| Clementi | 0 | -120 | -120 |
| Bukit Merah | 0 | -90 | -90 |
| Jurong East | 0 | -80 | -80 |
| Pasir Ris | 0 | -80 | -80 |
| Sembawang | 0 | -60 | -60 |
| Hougang | 0 | -50 | -50 |
| Bukit Panjang | 0 | -30 | -30 |
| Bukit Timah | 0 | -30 | -30 |
| Marine Parade | 0 | -30 | -30 |
| Queenstown | 0 | -30 | -30 |
| Woodlands | 0 | -30 | -30 |
| Geylang | +10 | -30 | -20 |
| Ang Mo Kio | 0 | 0 | 0 |
| Bishan | 0 | 0 | 0 |
| Bukit Batok | +40 | -40 | 0 |
| Central | 0 | 0 | 0 |
| Novena | 0 | 0 | 0 |
| Serangoon | 0 | 0 | 0 |
| Kallang | +20 | 0 | +20 |
| Yishun | +70 | -50 | +20 |
| Toa Payoh | +60 | -30 | +30 |
| Tampines | +120 | -80 | +40 |
| Total | +350 | -1,810 | -1,460 |
Sengkang and Punggol take the biggest hits. Together they account for almost a third of all places cut. Tampines is the only area with a meaningfully positive net, on the back of three schools adding a class each.
For the full vacancy list by school, see P1 Registration 2026.