Methodology
How we turn raw URA, HDB and SLA data into the scores, trends and calculators you see across the site. Transparent by design — every formula is published, every data source is linked.
Core principles
- Authoritative data only. Every number comes from a Singapore government source — URA, HDB, SLA, ACRA, CPF Board, MAS, IRAS. No scraping of listings, no web-crawled estimates.
- Median over average. Price-per-square-foot analyses use the median; averages get skewed by GCB trophy sales and sub-sale outliers.
- Sample-size gates. Any period-over-period comparison requires a minimum of 3 transactions per window. Sparse months show as "—", not noise.
- Published formulas. Every score, every calculator output is explained below or on its own explainer page.
Price-per-square-foot (PSF)
PSF = transaction price ÷ strata area in sq ft, computed from raw URA caveat records. We use median PSF for district, project, and bedroom-mix comparisons. Month-over-month and year-over-year deltas require ≥ 3 transactions in each bucket.
Gross rental yield
Gross yield = (median monthly rent × 12) ÷ median purchase price × 100%. Numerator and denominator are matched on the same granularity: per flat-type for HDB, per bedroom-count for condos, per district for overview pages. Mismatched granularity produces misleading yields; we reject those joins at query time.
Property scores
Five composite scores are recomputed weekly. Each is attempted for every active condo, but a score is only published where the evidence supports it — roughly one in four developments carries no ShiokNest Score, and about six in ten carry no profitability score, because we withhold rather than estimate:
- ShiokNest Score — a weighted composite of the four sub-scores below plus a market-trend factor: investment 25%, profitability 25%, walkability 20%, en-bloc 15%, market trend 15%. Weights published on the score page.
- Investment Score — 7 weighted factors: price momentum (last 12 months against the prior 12), gross yield, transaction liquidity, MRT distance, lease balance, district strength, en-bloc potential.
- En-Bloc Score — collective-sale likelihood from building age (30 points), lease remaining (25), unit count (20) and market segment (15). A fifth factor, plot-ratio uplift (10), needs plot-ratio inputs we do not currently hold, so it is excluded and the remaining factors are rescaled. Verdicts are High, Moderate or Low. No score is published for a development with no strata electorate — a single owner, or a conservation area with no strata scheme.
- Walkability Score — Haversine distance to 7 amenity categories, scored in distance tiers out to 1,500m: MRT (25 points), schools (20), hawker centres (15), malls (15), parks (10), supermarkets (10), clinics (5).
- Profitability Score — matched buy→sell caveat pairs for the same inferred unit: half the score is the share of pairs sold at a profit, half is the median annualised return (capped at 15%). Withheld below 3 matched pairs.
Where an input is missing, the affected factor is dropped and the remaining weights are rescaled, so a score computed from fewer factors is not directly comparable with one measured in full. Rankings and "top" lists on this site are restricted to fully-measured properties.
HDB town scores
HDB towns are scored separately from private developments, because the unit of analysis is the town rather than the building. Three scores, over the 27 towns HDB currently names:
- Town Investment Score — 6 weighted factors: price momentum (20), rental yield (20), transaction liquidity (15), affordability (15), lease freshness (15) and volume trend (15). Momentum compares the last 12 months of resale prices against the 12 months before them.
- Town Walkability Score — the same 7-category amenity model as the private score above, measured from the town's block centroid rather than from a single address. A town-level reading is therefore a summary of a wide area, not a statement about any one block.
- Town Lifestyle Score — the town's reading on the same five lifestyle categories used for districts, published with its sample size.
The same withholding rule applies: a factor with no data is dropped and the rest rescaled, and a town with nothing to compute from is published with no score rather than a zero. Tengah is the current example — its flats completed between 2023 and 2025, so it has no resale history at all and carries a walkability score only.
Calculator formulas
All calculators ship with current government-published rates: BSD/ABSD/SSD from IRAS, TDSR/MSR limits and SORA history from MAS, CPF housing withdrawal rules from the CPF Board. Rates are configured in one place (CALC_DEFAULTS) and audited when policy changes. Lease-decay valuations use Bala's Table (SLA).
Data freshness
- URA private caveats — refreshed weekly (5-year rolling window).
- HDB resale and rental — refreshed weekly from data.gov.sg.
- HDB Resale Price Index — quarterly on publication.
- Commercial rental index (Office + Retail) — quarterly.
- ACRA business registry — monthly refresh for the business map.
Known limits
Private caveats lag sale completion by 2–6 weeks; new-launch monthly data lags by about 6 weeks. We publish the as-of date on every chart. For the full set of sources, see the Data Sources page.