Primary schools
How far each school's Primary 1 places reached in MOE's 2025 exercise, in MOE's own words — and the homes within 1 and 2 km.
62 of 179 schools balloted even for citizens living within 1 km in Phase 2C of the 2025 exercise. A past exercise, not a place.
Everyone else — no connection needed. 2025 exercise.
- Every citizen got a place
- Within 2 km got places
- Ballot at 1–2 km
- Only within 1 km
- Ballot even within 1 km
| School | Phase 2C, 2025 | Applicants per place | Homes within 1 km |
|---|---|---|---|
| Princess Elizabeth Primary School | Ballot even within 1 km | 5.66 | 222 |
| Nan Hua Primary School | Ballot even within 1 km | 4.05 | 118 |
| South View Primary School | Ballot even within 1 km | 3.78 | 263 |
| Northland Primary School | Ballot even within 1 km | 3.46 | 298 |
| Chongfu School | Ballot even within 1 km | 3.45 | 163 |
| Nan Chiau Primary School | Ballot even within 1 km | 3.16 | 272 |
| St. Hilda's Primary School | Ballot even within 1 km | 3.16 | 247 |
| Rosyth School | Ballot even within 1 km | 3.14 | 225 |
| Angsana Primary School | Ballot even within 1 km | 2.83 | 139 |
| Gongshang Primary School | Ballot even within 1 km | 2.66 | 257 |
| Wellington Primary School | Ballot even within 1 km | 2.60 | 191 |
| Maha Bodhi School | Ballot even within 1 km | 2.55 | 139 |
| Hong Wen School | Ballot even within 1 km | 2.47 | 257 |
| Rulang Primary School | Ballot even within 1 km | 2.45 | 203 |
| Holy Innocents' Primary School | Ballot even within 1 km | 2.44 | 212 |
| Kong Hwa School | Ballot even within 1 km | 2.41 | 245 |
| Red Swastika School | Ballot even within 1 km | 2.27 | 189 |
| Poi Ching School | Ballot even within 1 km | 2.14 | 235 |
| Pei Chun Public School | Ballot even within 1 km | 2.09 | 194 |
| Yangzheng Primary School | Ballot even within 1 km | 2.09 | 199 |
| Temasek Primary School | Ballot even within 1 km | 2.06 | 115 |
| Pei Hwa Presbyterian Primary School | Ballot even within 1 km | 2.05 | 83 |
| Radin Mas Primary School | Ballot even within 1 km | 2.04 | 115 |
| Punggol Green Primary School | Ballot even within 1 km | 2.03 | 292 |
| Maris Stella High School (Primary) | Ballot even within 1 km | 2.00 | 145 |
| Chua Chu Kang Primary School | Ballot even within 1 km | 1.97 | 254 |
| Shuqun Primary School | Ballot even within 1 km | 1.93 | 206 |
| Kuo Chuan Presbyterian Primary School | Ballot even within 1 km | 1.92 | 137 |
| Ai Tong School | Ballot even within 1 km | 1.88 | 82 |
| North View Primary School | Ballot even within 1 km | 1.82 | 189 |
| Catholic High School (Primary) | Ballot even within 1 km | 1.80 | 144 |
| Tao Nan School | Ballot even within 1 km | 1.80 | 222 |
| Sengkang Green Primary School | Ballot even within 1 km | 1.75 | 148 |
| Elias Park Primary School | Ballot even within 1 km | 1.74 | 151 |
| CHIJ St. Nicholas Girls' School (Primary) | Ballot even within 1 km | 1.73 | 123 |
| Methodist Girls' School (Primary) | Ballot even within 1 km | 1.73 | 38 |
| Waterway Primary School | Ballot even within 1 km | 1.70 | 151 |
| Admiralty Primary School | Ballot even within 1 km | 1.67 | 304 |
| Fairfield Methodist School (Primary) | Ballot even within 1 km | 1.67 | 34 |
| Frontier Primary School | Ballot even within 1 km | 1.65 | 202 |
| Xinmin Primary School | Ballot even within 1 km | 1.64 | 293 |
| Keming Primary School | Ballot even within 1 km | 1.62 | 132 |
| Horizon Primary School | Ballot even within 1 km | 1.58 | 296 |
| CHIJ Primary (Toa Payoh) | Ballot even within 1 km | 1.57 | 139 |
| Anglo-Chinese School (Junior) | Ballot even within 1 km | 1.56 | 141 |
| Valour Primary School | Ballot even within 1 km | 1.54 | 196 |
| Nanyang Primary School | Ballot even within 1 km | 1.50 | 75 |
| Northshore Primary School | Ballot even within 1 km | 1.49 | 46 |
| Henry Park Primary School | Ballot even within 1 km | 1.48 | 70 |
| Huamin Primary School | Ballot even within 1 km | 1.48 | 277 |
| Riverside Primary School | Ballot even within 1 km | 1.46 | 191 |
| Anglo-Chinese School (Primary) | Ballot even within 1 km | 1.45 | 160 |
| Pasir Ris Primary School | Ballot even within 1 km | 1.44 | 194 |
| Sembawang Primary School | Ballot even within 1 km | 1.43 | 180 |
| Westwood Primary School | Ballot even within 1 km | 1.43 | 284 |
| Singapore Chinese Girls' Primary School | Ballot even within 1 km | 1.41 | 116 |
| Yu Neng Primary School | Ballot even within 1 km | 1.36 | 186 |
| Mee Toh School | Ballot even within 1 km | 1.29 | 348 |
| St Andrew's Junior School | Ballot even within 1 km | 1.24 | 189 |
| Canberra Primary School | Ballot even within 1 km | 1.21 | 179 |
| Compassvale Primary School | Ballot even within 1 km | 1.17 | 335 |
| Rivervale Primary School | Ballot even within 1 km | 1.16 | 366 |
| Punggol Primary School | Only within 1 km | 1.27 | 309 |
| Hougang Primary School | Only within 1 km | 1.17 | 268 |
| Tanjong Katong Primary School | Ballot at 1–2 km | 1.57 | 221 |
| St. Joseph's Institution Junior | Ballot at 1–2 km | 1.47 | 203 |
| St. Anthony's Primary School | Ballot at 1–2 km | 1.46 | 124 |
| Anderson Primary School | Ballot at 1–2 km | 1.40 | 76 |
| Fengshan Primary School | Ballot at 1–2 km | 1.35 | 216 |
| Bukit Panjang Primary School | Ballot at 1–2 km | 1.28 | 184 |
| Paya Lebar Methodist Girls' School (Primary) | Ballot at 1–2 km | 1.24 | 167 |
| Alexandra Primary School | Ballot at 1–2 km | 1.09 | 185 |
| Raffles Girls' Primary School | Within 2 km got places | 1.24 | 72 |
| CHIJ Our Lady of the Nativity | Within 2 km got places | 1.13 | 217 |
| Qifa Primary School | Within 2 km got places | 1.13 | 57 |
| Jurong West Primary School | Every citizen got a place · PR ballot | 1.31 | 289 |
| Ngee Ann Primary School | Every citizen got a place · PR ballot | 1.17 | 138 |
| Concord Primary School | Every citizen got a place · PR ballot | 1.12 | 160 |
| St. Margaret's School (Primary) | Every citizen got a place | 1.11 | 103 |
| Queenstown Primary School | Every citizen got a place · PR ballot | 1.10 | 114 |
| Junyuan Primary School | Every citizen got a place · PR ballot | 1.07 | 211 |
| Kheng Cheng School | Every citizen got a place · PR ballot | 1.07 | 174 |
| Naval Base Primary School | Every citizen got a place · PR ballot | 1.07 | 233 |
| Chongzheng Primary School | Every citizen got a place · PR ballot | 1.02 | 309 |
| Geylang Methodist School (Primary) | Every citizen got a place | 1.00 | 238 |
| River Valley Primary School | Every citizen got a place | 1.00 | 176 |
| Woodlands Primary School | Every citizen got a place | 0.97 | 301 |
| Marsiling Primary School | Every citizen got a place | 0.95 | 179 |
| Dazhong Primary School | Every citizen got a place | 0.90 | 185 |
| Woodgrove Primary School | Every citizen got a place | 0.89 | 231 |
| Haig Girls' School | Every citizen got a place | 0.85 | 324 |
| St. Gabriel's Primary School | Every citizen got a place | 0.85 | 135 |
| Zhangde Primary School | Every citizen got a place | 0.85 | 210 |
| Jing Shan Primary School | Every citizen got a place | 0.83 | 180 |
| Greenwood Primary School | Every citizen got a place | 0.82 | 209 |
| Zhenghua Primary School | Every citizen got a place | 0.81 | 272 |
| De La Salle School | Every citizen got a place | 0.80 | 157 |
| Opera Estate Primary School | Every citizen got a place | 0.80 | 103 |
| White Sands Primary School | Every citizen got a place | 0.77 | 272 |
| Lakeside Primary School | Every citizen got a place | 0.75 | 113 |
| Innova Primary School | Every citizen got a place | 0.73 | 154 |
| Punggol View Primary School | Every citizen got a place | 0.73 | 283 |
| Springdale Primary School | Every citizen got a place | 0.72 | 237 |
| Evergreen Primary School | Every citizen got a place | 0.68 | 250 |
| CHIJ Our Lady Queen of Peace | Every citizen got a place | 0.67 | 51 |
| CHIJ (Katong) Primary | Every citizen got a place | 0.66 | 249 |
| Tampines Primary School | Every citizen got a place | 0.64 | 237 |
| West Spring Primary School | Every citizen got a place | 0.63 | 176 |
| Pioneer Primary School | Every citizen got a place | 0.58 | 114 |
| Canossa Catholic Primary School | Every citizen got a place | 0.57 | 130 |
| Fern Green Primary School | Every citizen got a place | 0.56 | 143 |
| Oasis Primary School | Every citizen got a place | 0.56 | 248 |
| Teck Ghee Primary School | Every citizen got a place | 0.55 | 222 |
| West View Primary School | Every citizen got a place | 0.52 | 182 |
| Palm View Primary School | Every citizen got a place | 0.51 | 296 |
| Fuchun Primary School | Every citizen got a place | 0.50 | 186 |
| Peiying Primary School | Every citizen got a place | 0.50 | 148 |
| Woodlands Ring Primary School | Every citizen got a place | 0.49 | 291 |
| Xingnan Primary School | Every citizen got a place | 0.48 | 126 |
| Casuarina Primary School | Every citizen got a place | 0.47 | 238 |
| CHIJ Our Lady of Good Counsel | Every citizen got a place | 0.47 | 114 |
| Yew Tee Primary School | Every citizen got a place | 0.47 | 173 |
| Bukit View Primary School | Every citizen got a place | 0.46 | 187 |
| CHIJ (Kellock) | Every citizen got a place | 0.46 | 120 |
| Fernvale Primary School | Every citizen got a place | 0.46 | 152 |
| Qihua Primary School | Every citizen got a place | 0.46 | 178 |
| Xishan Primary School | Every citizen got a place | 0.45 | 259 |
| Telok Kurau Primary School | Every citizen got a place | 0.42 | 201 |
| Yishun Primary School | Every citizen got a place | 0.41 | 261 |
| Jurong Primary School | Every citizen got a place | 0.40 | 143 |
| St. Stephen's School | Every citizen got a place | 0.40 | 169 |
| Cedar Primary School | Every citizen got a place | 0.39 | 92 |
| Endeavour Primary School | Every citizen got a place | 0.39 | 163 |
| Jiemin Primary School | Every citizen got a place | 0.38 | 208 |
| Park View Primary School | Every citizen got a place | 0.38 | 165 |
| Unity Primary School | Every citizen got a place | 0.38 | 135 |
| Clementi Primary School | Every citizen got a place | 0.37 | 150 |
| Beacon Primary School | Every citizen got a place | 0.36 | 198 |
| North Spring Primary School | Every citizen got a place | 0.34 | 288 |
| East Spring Primary School | Every citizen got a place | 0.33 | 202 |
| Xinghua Primary School | Every citizen got a place | 0.32 | 165 |
| Greenridge Primary School | Every citizen got a place | 0.31 | 244 |
| Tampines North Primary School | Every citizen got a place | 0.31 | 245 |
| West Grove Primary School | Every citizen got a place | 0.30 | 323 |
| Ang Mo Kio Primary School | Every citizen got a place | 0.29 | 170 |
| Mayflower Primary School | Every citizen got a place | 0.29 | 149 |
| Marymount Convent School | Every citizen got a place | 0.27 | 65 |
| Boon Lay Garden Primary School | Every citizen got a place | 0.26 | 166 |
| Fuhua Primary School | Every citizen got a place | 0.26 | 98 |
| North Vista Primary School | Every citizen got a place | 0.26 | 313 |
| Cantonment Primary School | Every citizen got a place | 0.25 | 65 |
| Si Ling Primary School | Every citizen got a place | 0.22 | 191 |
| Blangah Rise Primary School | Every citizen got a place | 0.21 | 70 |
| Corporation Primary School | Every citizen got a place | 0.21 | 150 |
| Punggol Cove Primary School | Every citizen got a place | 0.21 | 111 |
| Bendemeer Primary School | Every citizen got a place | 0.20 | 165 |
| Meridian Primary School | Every citizen got a place | 0.20 | 124 |
| St. Anthony's Canossian Primary School | Every citizen got a place | 0.20 | 127 |
| Yio Chu Kang Primary School | Every citizen got a place | 0.20 | 308 |
| Changkat Primary School | Every citizen got a place | 0.19 | 136 |
| Farrer Park Primary School | Every citizen got a place | 0.19 | 167 |
| Greendale Primary School | Every citizen got a place | 0.19 | 314 |
| Ahmad Ibrahim Primary School | Every citizen got a place | 0.17 | 249 |
| Teck Whye Primary School | Every citizen got a place | 0.16 | 164 |
| Anchor Green Primary School | Every citizen got a place | 0.15 | 223 |
| Bedok Green Primary School | Every citizen got a place | 0.15 | 196 |
| Edgefield Primary School | Every citizen got a place | 0.15 | 386 |
| Gan Eng Seng Primary School | Every citizen got a place | 0.15 | 111 |
| Yuhua Primary School | Every citizen got a place | 0.15 | 217 |
| Pei Tong Primary School | Every citizen got a place | 0.14 | 158 |
| New Town Primary School | Every citizen got a place | 0.12 | 91 |
| Lianhua Primary School | Every citizen got a place | 0.11 | 198 |
| Montfort Junior School | Every citizen got a place | 0.09 | 318 |
| Seng Kang Primary School | Every citizen got a place | 0.09 | 369 |
| First Toa Payoh Primary School | Every citizen got a place | 0.07 | 211 |
| Zhonghua Primary School | Every citizen got a place | 0.06 | 196 |
| Northoaks Primary School | Every citizen got a place | 0.05 | 107 |
| Yumin Primary School | Every citizen got a place | 0.05 | 302 |
| Bukit Timah Primary School | — | — | 84 |
Ministry of Education — P1 Registration Exercise: vacancies and balloting data · 2025 exercise · moe.gov.sg · read 2026-09-26
School addresses — MOE School Directory and Information (data.gov.sg), under the Singapore Open Data Licence. · accessed 2026-08-23
Distances and counts are straight-line from the school’s registered point. Homes are those with a filed sale.
How to read this, and what it cannot tell you
The colour is MOE’s sentence, not a ratio. For every phase MOE says who was balloted — “Singapore Citizen children residing between 1km and 2km of the school” means everyone nearer got a place and everyone further did not. That is what each colour reads. The applicants-per-place figure beside it is MOE’s two numbers divided.
- Phase 1: A sibling already at the school.
- Phase 2A: A parent or sibling who studied there, or a parent on staff or the advisory committee.
- Phase 2B: A parent who volunteers, or is a member of a connected church, clan or community group.
- Phase 2C: Everyone not yet registered — no connection needed.
- Phase 2C Supplementary: Those who did not get a place in 2C.
A past exercise, not a place. Vacancies, applicants and the lines they fall at change every year. Nothing here says your child will or will not get a place.
The distance is not MOE’s. MOE measures from the school’s land boundary to the address on the registration; this site measures straight-line from the school’s registered point, so a home near 1 km can fall either side for MOE. Check an actual address with OneMap’s SchoolQuery.
One year so far. MOE publishes only its most recent exercise. This site keeps each year as MOE publishes it, so the history grows from 2025; earlier years are not filled in from anywhere else.