P1 registration in Singapore is carried out in phases, and places at popular schools can sometimes go to ballot.
Here's how school balloting works: When applications exceed available vacancies in each registration phase, schools use the following "home-school distance" categories to prioritise admitting students that live nearer to the school:
Within 1 km
Between 1 and 2 km
Beyond 2 km
The Ministry of Education has stated that priority admission to a school will be given to children in this order:
Singapore Citizens (SC) living within 1km of the school.
SCs living between 1km and 2km of the school.
SCs living outside 2km of the school.
Permanent Residents (PR) living within 1km of the school.
PRs living between 1km and 2km of the school.
PRs living outside 2km of the school.
Below, we have updated our example scenario, to illustrate how registration works. This corresponds to information available on the Ministry of Education website. Do refer to their website for a fuller explanation.
Let's say a school has 70 places available in a phase.
There are 85 Singapore Citizen applicants and 10 Permanent Resident applicants.
The school considers applicants in this order:
Singapore Citizens living within 1km
Singapore Citizens living between 1km and 2km
Singapore Citizens living outside 2km
Permanent Residents (in order of proximity)
First, if there are 60 Singapore Citizens living within 1km, they will all be admitted.
This leaves 10 places.
Next, if there are 20 Singapore Citizens living between 1km and 2km, they will have to ballot, since there are only 10 places left.
The 10 children who succeed in the ballot will get a place.
The remaining Singapore Citizens living between 1km and 2km will not get a place in this phase. Singapore Citizens living outside 2km and all Permanent Residents will also not get a place, because all places have already been filled.
To help you plan ahead, KiasuParents has analysed actual registration data from 2023 to 2025, and put together a balloting risk indicator for each primary school.
Correction note (28 May 2026): An earlier version of this article featured examples that did not accurately reflect the priority order for P1 balloting. We have updated this to reflect MOE’s stated order of priority admission, where Singapore Citizens are considered by home-school distance before Permanent Residents are considered.
Key takeaways
P1 registration is carried out in phases (Phase 1 to Phase 3), prioritising children who have stronger ties with the school, as well as those living nearby.
In KiasuParents' school balloting analysis, the risk value goes from 0.00 to 1.00.
A risk value close to 1 means a school has a high chance of requiring balloting, even for those who live nearby. A value of 0 means no balloting in the last 3 years.
Not familiar with the process? Here's what you need to know: Phases 1 to 2C Supplementary are for Singapore Citizen and Permanent Resident children, while Phase 3 is for international students.
Phase 1
For children who have a sibling currently studying in the primary school.
Phase 2A
For a child studying in the MOE Kindergarten in the primary school, or:
Whose parent or sibling is a former student of the primary school
Whose parent is a member of the School Advisory or Management Committee
Whose parent is a staff member of the primary school
Phase 2B
For children whose parent:
Has joined the primary school as a parent volunteer not later than July 1 (in the year before P1 registration), and has given at least 40 hours of voluntary service to the school (by June 30 of the year of P1 registration)
Is a member endorsed by the church or clan connected with the primary school
Is endorsed as an active community leader
Phase 2C
For children who are not yet registered in a primary school.
Phase 2C Supplementary
For children who are still unregistered after Phase 2C.
2026 P1 registration risk, and how it is calculated by KiasuParents
In our analysis below, the balloting risk for each phase is shown.
This risk estimate is based on actual P1 registration data for the last three years (2023, 2024, and 2025).
The balloting risk value goes from 0.00 to 1.00.
It is calculated based on the type of "home-school distance" balloting the school had to undertake for each phase, averaged across three years, then rated on a scale of 0 to 1 relative to the most competitive school.
How to read this:
A value close to 1 means the school has a very strong chance of requiring balloting if one's home is <1km from the school.
A value of 0 means no balloting in the last 3 years, and generally safe to apply.
The colour coding shows which "home-school distance" group was affected by balloting:
Balloting at <1km
Balloting at 1–2km
Balloting at >2km
No balloting recorded
Note: Data is based on best-effort estimation with approximately 5% risk of inaccuracy. Cells marked with a dash in the Phase 2C(S) column indicate schools where all places were taken up by Phase 2C across all 3 years.
If the search or filters aren’t responding, try refreshing the page once. If it still doesn’t work, please get in touch with us to let us know.
Filter by area
Filter by risk level
Risk scores go from 0 (no balloting history) to 1 (balloting at <1km in all 3 years).
Filter by phase
179 schools
School
Area
2A
2B
2C
2C(S)
Anderson Primary
Ang Mo Kio
0
0
0.72
–
Ang Mo Kio Primary
Ang Mo Kio
0
0
0
0
CHIJ St Nicholas Girls'
Ang Mo Kio
0.67
1
1
–
Jing Shan Primary
Ang Mo Kio
0.78
0
0.42
0.67
Mayflower Primary
Ang Mo Kio
0
0
0
0
Teck Ghee Primary
Ang Mo Kio
0
0
0
0.45
Bedok Green Primary
Bedok
0
0
0
0
CHIJ (Katong) Primary
Bedok
0
0
0
0.38
Fengshan Primary
Bedok
0.19
0
0.44
0.95
Opera Estate Primary
Bedok
0
0
0.22
0.9
Red Swastika
Bedok
0.67
0.75
1
–
St Anthony's Canossian Primary
Bedok
0
0
0
0
St Stephen's
Bedok
0
0
0
0
Telok Kurau Primary
Bedok
0
0
0
0
Temasek Primary
Bedok
0.83
0
0.94
–
Yu Neng Primary
Bedok
0.22
0
1
–
Ai Tong
Bishan
0.44
1
1
–
Catholic High
Bishan
0.72
1
1
–
Kuo Chuan Presbyterian Primary
Bishan
0.22
0.75
0.94
–
Bukit View Primary
Bukit Batok
0
0
0
0.31
Dazhong Primary
Bukit Batok
0.17
0
0.33
0.88
Keming Primary
Bukit Batok
0
0
1
–
Lianhua Primary
Bukit Batok
0
0
0
0
Princess Elizabeth Primary
Bukit Batok
1
0.56
1
–
St Anthony's Primary
Bukit Batok
0
0.25
0.89
–
Alexandra Primary
Bukit Merah
0
0
0.83
–
Blangah Rise Primary
Bukit Merah
0
0
0
0
Cantonment Primary
Bukit Merah
0
0
0
0
CHIJ (Kellock)
Bukit Merah
0
0
0
0
Gan Eng Seng Primary
Bukit Merah
0
0
0
0
Radin Mas Primary
Bukit Merah
0
0
0.94
–
Zhangde Primary
Bukit Merah
0
0
0.11
0.86
Beacon Primary
Bukit Panjang
0
0
0
0
Bukit Panjang Primary
Bukit Panjang
0
0.28
0.94
–
CHIJ Our Lady Queen of Peace
Bukit Panjang
0
0
0
0
Greenridge Primary
Bukit Panjang
0
0
0
0
West Spring Primary
Bukit Panjang
0.25
0
0.61
0.67
West View Primary
Bukit Panjang
0
0
0
0
Zhenghua Primary
Bukit Panjang
0.17
0
0
0.52
Bukit Timah Primary
Bukit Timah
0
0
0.22
0.9
Henry Park Primary
Bukit Timah
0
0.67
1
–
Methodist Girls' School (Primary)
Bukit Timah
0
1
0.89
–
Nanyang Primary
Bukit Timah
0.67
1
1
–
Pei Hwa Presbyterian Primary
Bukit Timah
0.83
0.89
1
–
Raffles Girls' Primary
Bukit Timah
0
0
0.67
–
Anglo-Chinese School (Junior)
Central
0
1
0.83
–
River Valley Primary
Central
0
0
0.56
0.67
St Margaret's Primary
Central
0
0
0.31
0.71
Chua Chu Kang Primary
Choa Chu Kang
0
0
1
–
Concord Primary
Choa Chu Kang
0
0
0.17
0.86
De La Salle
Choa Chu Kang
0
0
0
0.57
South View Primary
Choa Chu Kang
0.83
0.92
1
–
Teck Whye Primary
Choa Chu Kang
0
0
0
0
Unity Primary
Choa Chu Kang
0
0
0
0
Yew Tee Primary
Choa Chu Kang
0
0
0
0
Clementi Primary
Clementi
0
0
0
0
Nan Hua Primary
Clementi
0.78
1
0.94
–
Pei Tong Primary
Clementi
0
0
0
0
Qifa Primary
Clementi
0
0
0.61
–
Canossa Catholic Primary
Geylang
0
0
0.25
0.57
Geylang Methodist School
Geylang
0
0
0.06
0.57
Haig Girls'
Geylang
0
0
0.17
0.57
Kong Hwa
Geylang
0
1
1
–
Maha Bodhi
Geylang
0
0.5
0.89
–
CHIJ Our Lady of the Nativity
Hougang
0
0
0.56
–
Holy Innocents' Primary
Hougang
0.44
1
1
–
Hougang Primary
Hougang
0
0
0.97
–
Montfort Junior
Hougang
0
0
0
0
Paya Lebar Methodist Girls'
Hougang
0
0.22
0.89
–
Punggol Primary
Hougang
0.17
0
0.97
–
Xinghua Primary
Hougang
0
0
0
0
Xinmin Primary
Hougang
0.22
0
1
–
Yio Chu Kang Primary
Hougang
0
0
0
0.14
Fuhua Primary
Jurong East
0
0
0
0
Jurong Primary
Jurong East
0
0
0
0.24
Yuhua Primary
Jurong East
0
0
0
0
Boon Lay Garden Primary
Jurong West
0
0
0
0
Corporation Primary
Jurong West
0
0
0
0
Frontier Primary
Jurong West
0.83
0.25
0.94
–
Jurong West Primary
Jurong West
0.39
0
0.33
0.95
Lakeside Primary
Jurong West
0
0
0
0.76
Rulang Primary
Jurong West
0.72
1
1
–
Shuqun Primary
Jurong West
0.67
0
1
–
West Grove Primary
Jurong West
0
0
0
0
Westwood Primary
Jurong West
0.28
0
1
–
Xingnan Primary
Jurong West
0
0
0
0
Bendemeer Primary
Kallang
0
0
0
0
Farrer Park Primary
Kallang
0
0
0
0
Hong Wen
Kallang
0
0
1
–
Ngee Ann Primary
Marine Parade
0
0
0.17
0.52
Tanjong Katong Primary
Marine Parade
0.22
0
0.83
–
Tao Nan
Marine Parade
0.44
1
1
–
Anglo-Chinese School (Primary)
Novena
0
1
0.89
–
Singapore Chinese Girls' Primary
Novena
0.44
0.67
1
–
St Joseph's Institution Junior
Novena
0
0.81
0.72
–
Casuarina Primary
Pasir Ris
0
0
0
0.24
Elias Park Primary
Pasir Ris
0.28
0
1
–
Meridian Primary
Pasir Ris
0
0
0
0
Park View Primary
Pasir Ris
0
0
0
0.12
Pasir Ris Primary
Pasir Ris
0.42
0.31
1
–
White Sands Primary
Pasir Ris
0
0
0.22
0.62
Edgefield Primary
Punggol
0
0
0
0
Greendale Primary
Punggol
0
0
0
0
Horizon Primary
Punggol
0.67
0
1
–
Mee Toh
Punggol
0
0
1
–
Northshore Primary
Punggol
0
0
0.67
0.67
Oasis Primary
Punggol
0
0
0.42
0.9
Punggol Cove Primary
Punggol
0
0
0
0.14
Punggol Green Primary
Punggol
1
0
1
–
Punggol View Primary
Punggol
0
0
0
0.52
Valour Primary
Punggol
0.33
0
1
–
Waterway Primary
Punggol
0.33
0
0.5
0.67
Fairfield Methodist Primary
Queenstown
0.44
1
1
–
New Town Primary
Queenstown
0
0
0
0
Queenstown Primary
Queenstown
0
0
0.33
0.88
Canberra Primary
Sembawang
0
0
0.89
–
Endeavour Primary
Sembawang
0
0
0
0
Northoaks Primary
Sembawang
0
0
0
0
Sembawang Primary
Sembawang
0
0
0.61
0.9
Wellington Primary
Sembawang
0.56
0.25
1
–
Anchor Green Primary
Seng Kang
0
0
0
0
Compassvale Primary
Seng Kang
0
0
1
–
Fern Green Primary
Seng Kang
0
0
0.33
0.62
Fernvale Primary
Seng Kang
0
0
0
0.48
Nan Chiau Primary
Seng Kang
0
1
1
–
North Spring Primary
Seng Kang
0
0
0
0
North Vista Primary
Seng Kang
0
0
0
0
Palm View Primary
Seng Kang
0
0
0
0.24
Rivervale Primary
Seng Kang
0
0
1
–
Seng Kang Primary
Seng Kang
0
0
0
0
Sengkang Green Primary
Seng Kang
1
0
1
–
Springdale Primary
Seng Kang
0
0
0
0.86
CHIJ Our Lady of Good Counsel
Serangoon
0
0
0
0.07
Rosyth
Serangoon
0.78
1
1
–
St Gabriel's Primary
Serangoon
0
0
0
0.62
Yangzheng Primary
Serangoon
0.78
0
0.94
–
Zhonghua Primary
Serangoon
0
0
0
0
Angsana Primary
Tampines
0.67
0
1
–
Changkat Primary
Tampines
0
0
0
0
Chongzheng Primary
Tampines
0
0
0.86
–
East Spring Primary
Tampines
0
0
0
0
Gongshang Primary
Tampines
1
0
1
–
Junyuan Primary
Tampines
0.28
0
0.44
0.95
Poi Ching
Tampines
0
0.28
1
–
St Hilda's Primary
Tampines
0.44
1
1
–
Tampines North Primary
Tampines
0
0
0
0.71
Tampines Primary
Tampines
0
0
0.11
0.86
Yumin Primary
Tampines
0
0
0
0
Pioneer Primary
Tengah
0
0
0
0
Cedar Primary
Toa Payoh
0
0
0
0.19
CHIJ Primary (Toa Payoh)
Toa Payoh
0.22
1
0.94
–
First Toa Payoh Primary
Toa Payoh
0
0
0
0
Kheng Cheng
Toa Payoh
0
0
0.11
0.79
Maris Stella High
Toa Payoh
0
0.89
1
–
Marymount Convent
Toa Payoh
0
0
0
0
Pei Chun Public
Toa Payoh
0.22
1
1
–
St Andrew's Junior
Toa Payoh
0
0
0.89
–
Admiralty Primary
Woodlands
0
0.44
1
–
Evergreen Primary
Woodlands
0
0
0
0.24
Fuchun Primary
Woodlands
0
0
0
0
Greenwood Primary
Woodlands
0
0
0
0.17
Innova Primary
Woodlands
0
0
0
0
Marsiling Primary
Woodlands
0
0
0
0.19
Qihua Primary
Woodlands
0
0
0
0
Riverside Primary
Woodlands
0.75
0
1
–
Si Ling Primary
Woodlands
0
0
0
0
Woodgrove Primary
Woodlands
0
0
0
0.26
Woodlands Primary
Woodlands
0
0
0
0.29
Woodlands Ring Primary
Woodlands
0
0
0
0
Ahmad Ibrahim Primary
Yishun
0
0
0
0
Chongfu Primary
Yishun
0.22
1
1
–
Huamin Primary
Yishun
0.94
0
1
–
Jiemin Primary
Yishun
0
0
0
0
Naval Base Primary
Yishun
0.89
0
0.78
–
North View Primary
Yishun
0.42
0
1
–
Northland Primary
Yishun
0.22
0.58
1
–
Peiying Primary
Yishun
0
0
0
0.69
Xishan Primary
Yishun
0
0
0
0.81
Yishun Primary
Yishun
0
0
0
0.4
Balloting at <1kmBalloting at 1–2kmBalloting at >2kmNo balloting recorded
Risk values range from 0.00 (no balloting) to 1.00 (balloting required in <1km every year).
Based on actual P1 registration data for 2023, 2024, and 2025, averaged and normalised.
– in 2C(S) means all places were filled by Phase 2C across all 3 years.
Data has approximately 5% risk of inaccuracy.
Source: KiasuParents, based on MOE data. Updated 2026.