About PrimarySch.com · Singapore P1 Registration Data

An independent data project helping parents navigate Singapore Primary 1 registration. Built by parents, for parents.

PrimarySch.com exists because navigating Singapore Primary 1 (P1) registration is unnecessarily hard. The official MOE portal gives you a list of 182 schools with basic vacancy data, but no way to compare trends over time, see which schools are consistently oversubscribed, or plan across phases. We built this site to make that information usable.

182
Schools tracked
4
Years of data (2023-2026)
6
Phases per school
3,536
Data points published

Who built this

D
Don
Singapore-based parent · P1 registration survivor · data tinkerer
I went through P1 registration for my older child in 2024, and I'm in the middle of it again for the second. The first time, I spent a weekend cutting and pasting MOE data into a spreadsheet to figure out which schools near us had a realistic shot at a Phase 2C place. The second time, I turned that spreadsheet into this site so other parents don't have to do the same work.

This is a personal project, not affiliated with MOE or any school. I update the data annually after MOE publishes final results for each phase. The dataset is available for free at /data/.

Why this site exists

Singapore's P1 registration system is fair in principle — phases prioritize siblings, alumni, parent volunteers, and finally the general public within 1km of the school. But in practice, it's a black box for new parents:

Our goal is to make this information comparable, contextual, and queryable — three things the official portal does not.

What you'll find here

Postal code lookup

Type any 6-digit Singapore postal code. We resolve it via the OneMap Singapore API and show all schools within walking distance, with vacancy for the current registration cycle. This is the most-used tool on the site.

Per-school deep dives

Every one of the 182 Singapore primary schools has its own profile page with: 4-year vacancy trends across all phases, contact details, MRT access, bus services, principal name, and school type. Click any school name anywhere on the site to dive in.

Phase breakdowns

Each phase (1, 2A, 2B, 2C, 2C Supplementary, 3) has a dedicated page with national statistics, top schools, and an editorial analysis of how that phase played out.

Side-by-side comparison

Select up to 6 schools and compare vacancy, location, and demographics. Useful for parents deciding between 2-3 realistic options.

Open data downloads

The entire 4-year dataset is available as JSON and CSV under a CC-BY-4.0 license. Researchers, journalists, and edtech builders can use it freely. Download here →

How we collect data

Vacancy data

Source: Ministry of Education annual P1 Registration announcements. We collate the official PDFs into a structured dataset within 7 days of each phase's results being published. We do not collect data from individual schools' registration portals.

School identity

Source: data.gov.sg's primary schools dataset, refreshed annually. We supplement with school websites for principal names, contact details, and MRT/bus information.

Distances

For specific postal codes (real building addresses), we use the OneMap Singapore API. For sector codes (where no building exists), we use Singapore postal district centroids with a clear "approximate" indicator in the UI.

Read the full methodology: Data Methodology →

Editorial standards

Every data point on this site is sourced. We publish the source and the date last updated. When MOE revises a number (which happens occasionally), we update the dataset and note the change in the version history.

We do not:

If you spot an error, email data@primarysch.com. We respond within 7 days and update within 14.

Frequently asked questions

Is this site affiliated with MOE?

No. PrimarySch.com is independent. We are not endorsed by, partnered with, or financially supported by MOE or any school. For official registration information, always refer to moe.gov.sg.

How accurate is the distance shown?

For specific building postals (about 30% of inputs), we use the OneMap API — accuracy is ±5 meters. For sector codes (about 70% of inputs), we use the district centroid, which can be off by up to 1.5 km. We always show which type of lookup was used.

Why is your data different from MOE's?

It shouldn't be different — we source from MOE. If you spot a discrepancy, please report it. Note that MOE sometimes revises numbers weeks after initial publication.

Can I use your data in my research / article / app?

Yes. The dataset is CC-BY-4.0 licensed. Please cite as: "PrimarySch.com (2026). Singapore P1 Registration Data 2023-2026."

How is this site funded?

Advertising via Google AdSense. We do not accept paid placements from schools, education agents, or tuition centres.

Will you add secondary schools?

Not currently. P1 registration is the most data-scarce phase of Singapore's education system. Secondary school posting is published more comprehensively by MOE. We focus where the data gap is widest.

Do you have an app?

No native app. The site is mobile-first and works offline once cached. We may build a PWA in the future.

Get in touch

Have a correction? A feature idea? A research collaboration?

Contact us Browse the dataset Read methodology

Related