NilaMap
How NilaMap works

We show what the data says — and, just as plainly, what it cannot.

NilaMap turns Malaysia's official transacted property records into per-place prices, trends and liquidity. This page explains exactly how.

NAPIC/JPPH · Jan 2021 – Mar 2026 · official transacted records
From a sale to a shown figure
1
A sale transacts
A buyer and seller complete a purchase.
2
Stamped & registered
Up to ~12 months to official records.
3
NAPIC/JPPH publishes
The transaction enters the dataset.
4
We derive medians
Per-place median psf + ± range.
5
Caveats applied
Incomplete quarter hatched; shown.

The source

Every figure on NilaMap derives from official transacted records published by NAPIC/JPPH — the Valuation and Property Services Department under Malaysia's Ministry of Finance. These are completed sales, stamped and registered, not listings.

We do not use asking prices, agent listings, developer promotions, or survey estimates. If a number cannot be traced to a registered transaction, it does not appear.

Why this matters Asking prices reflect hope; transacted prices reflect what a buyer actually paid. We only publish the latter.

What we derive

For each place we compute a median transacted price per square foot — not a mean. A median resists distortion from a single unusually large or small sale, which matters in thinly-traded buildings.

Figures are grouped at monthly granularity and reported by quarter. Quantum (the total transacted price) and built-up size bands are derived the same way, from the same records.

An example place, as we show it — Bandar Setia Alam
RM 529 psf ± RM 61
+0.8% QoQ Q1 2025 · derived

Registration lag & incomplete quarters

A sale takes up to ~12 months to stamp, register and reach the published dataset. So the most recent quarter is always incomplete — more transactions for it will still arrive.

We never draw that quarter as a trend. It is hatched, muted and asterisked, and excluded from any change calculation — so a half-counted quarter is never mistaken for a movement.

RM 530 Q2·24 RM 534 Q3·24 RM 529 Q4·24 RM 533 Q1·25 RM 533* Q2·25 RM 511* Q3·25 RM 540* Q4·25 RM 551* Q1·26
Caveat The final 4 bars are still-registering quarters — shown for context, never counted as a trend.

Uncertainty & thin markets

Every median carries an explicit ± range. It widens when a place transacts rarely, when sales scatter, or when the sample is small. A confident-looking single number would be dishonest where the data is thin.

Where liquidity is very low, we say so in words — "Thin" — and treat the median as indicative, not a quote.

Rule Visual confidence must match data confidence. The big figure is kept moderate, and its range travels with it everywhere.

The map precision grammar

On the price map, shape encodes confidence, so meaning survives without colour. The map is a schematic data canvas — stepped price bands, not interpolated heat, and never a satellite mock.

How to read this map Verified building Township / area Sparse data Heatmap psf mixes built-up (strata) & land (landed) — compare like with like.
Solid square — a verified individual building. Hollow circle — a township or area aggregate. Dashed square — sparse or unverified data.

What this is not

NilaMap is a decision layer for context and negotiation — not an appraisal. We state these limits on the product itself, not only here.

Caveat Not a unit-exact valuation. A place median is not the value of any specific unit, floor or facing.
Caveat Not a prediction. We report what transacted; we do not forecast what a price will be.
Caveat Not "AI-powered" magic. These are transparent, reproducible statistics on official records — nothing hidden in a black box.

Coverage & cadence

GEOGRAPHY
Kuala Lumpur & Selangor, where transaction volume allows.
UPDATED
Quarterly, as NAPIC/JPPH releases new records.
INCLUSION
A place appears only with enough transactions to derive an honest median.

Glossary

Median psf The middle transacted price per square foot for a place — half of sales above, half below. Resistant to outliers.
Quantum The total transacted price of a unit (psf × built-up area), reported as a place median.
Uncertainty range (±) How far the true level may sit from the median, given sample size and spread. Wider means less certain.
Liquidity How actively a place trades, read from transaction counts. Thin liquidity widens the range.
Registration lag The ~12 months between a sale completing and appearing in official records.
Incomplete quarter The most recent quarter, still accumulating registrations — hatched and excluded from trends.
Derived analytics Statistics computed from official records — not a valuation, appraisal or prediction.