Platform specifics
Two price bases, marked clearly and ignored constantly
These are the reasons a Funda dataset needs its own handling rather than a shared retail schema.
k.k. and v.o.n. are different numbers for the same house
A Dutch asking price carries one of two markers.
- k.k. — kosten koper, the buyer pays transfer tax and associated costs on top of the asking
price.
- v.o.n. — vrij op naam, those costs are included in the price the seller quotes.
The difference is several per cent of the purchase price. So a v.o.n. listing and a k.k. listing at the same
headline number represent different total outlays for the buyer.
price_basis is mandatory on every record. We do not normalise between them, because the
adjustment depends on the transfer tax rate applicable to that buyer and property — which varies by buyer
circumstance and is not on the listing.
It correlates with property type, which makes it worse
New-build is commonly quoted v.o.n. and existing stock commonly k.k. So a dataset that ignores the basis does not
introduce random noise — it introduces a bias that tracks the new-build share, which is exactly the thing
a market analysis is often trying to measure.
Coverage is unusually complete, and the gap is specific
Funda's position in the Dutch market gives it close to comprehensive coverage of agent-listed property, which is
unusual among the portals we cover.
That has a practical consequence worth stating plainly: a Funda-based supply figure is much closer to the real
agent-listed market than a comparable figure in Spain or Italy, where the same property appears several times
under different agencies.
What it does not cover
Private sales that do not go through an agent. That share is small in the Netherlands but it is not zero, and a
supply figure should say what it excludes rather than implying completeness.
We state coverage_note in the deliverable rather than letting near-complete be read as complete. The
distinction matters more the closer coverage gets to total, because that is when people stop qualifying it.
Duplication
Much lower than in agent-mandate markets. We still cluster, because low is not zero, and
cluster_confidence travels as it does everywhere.
VvE charges, energy labels and asking prices
VvE service charge
Dutch apartments sit in an owners' association (VvE) with a monthly service charge. As with the Swedish
monthly fee and the UK service charge, it is outside the asking price and varies substantially.
Captured as its own field where stated. We do not compute a total cost figure, for the same reason as
everywhere else: capitalising a monthly charge needs a horizon and a rate that belong with you.
Energy label
Dutch properties carry an energy label. We record it with the scheme, and unlike the French DPE it does not
currently function as a letting gate — so it is an attribute here, not a gating field.
Asking, not transaction
price_type is a constant asking. Dutch transaction data exists through separate official
sources with different coverage and lag.
What we never collect
Agent individual details, seller identity or any personal data. Agency name is a commercial entity.