Exploitatiesaldo wonen
Terug naar Geschiktheid
De empirische geschiktheid voor wonen is geen score maar een bedrag: het exploitatiesaldo van woningontwikkeling op die plek, in euro, per cel en per ontwikkelpakket. Deze pagina beschrijft waaruit dat saldo is opgebouwd, met de nadruk op de twee posten die de plek zelf beprijzen, de grondproductiekosten en de bodemdalingkosten.
Wat een ontwikkelpakket is en welke pakketten er per variant zijn staat op Uitwerking wonen. Hoe het saldo vervolgens in de allocatie wordt gebruikt staat op Geschiktheid. De gerealiseerde kosten van de gealloceerde nieuwbouw zijn een aparte indicator, Kosten woningbouw.
Het saldo op een rij
Residuele waarde = Opbrengsten
- Bouwkosten - Bijkomende kosten - Winst en risico
- Grondproductiekosten - Bodemdalingkosten - Piekbuibergingkosten
Exploitatiesaldo = Residuele waarde - Verwervingskosten - Sloopkosten
| Post | Wat het is | Waar het vandaan komt |
|---|---|---|
| Opbrengsten | de marktwaarde van het pakket, na aftrek van de btw die de ontwikkelaar afdraagt | hedonische prijsanalyse op NVM-transacties |
| Bouwkosten | de bouwsom van het vastgoed | CBS 83673NED, met een verhouding per woningtype |
| Bijkomende kosten | honoraria, leges, rente tijdens de bouw, onvoorzien | opslag op de bouwsom, EIB 2026 |
| Winst en risico | de vergoeding van de ontwikkelaar | fractie over de vastgoedinvestering |
| Grondproductiekosten | bouw- en woonrijp maken, bovenwijkse voorzieningen, planproces | regressie op grondexploitaties door Fakton, 2019 |
| Bodemdalingkosten | meerkosten van bouwen op een zakkende ondergrond | kengetallen Deltares en Sweco, 2026 |
| Piekbuibergingkosten | aanleg van de bergingsmaatregelen van het pakket | kentallen uit drie bronnen; standaard uit |
| Verwervingskosten | het opkopen van het bestaande vastgoed en van de grond | hedonische waarde, WOZ-brondata, grondprijs per klasse |
| Sloopkosten | het slopen van de bestaande bebouwing | kental per bouwtype plus asbesttoeslag |
Elke post is euro per cel voor een gegeven ontwikkelpakket, en elke post draagt hetzelfde beschikbaarheidsmasker (#597). Op een cel die voor deze subsector niet beschikbaar is staan dus alle posten op nul en niet enkele. Dat is nodig om een telling over de zeefpoort te kunnen doen: zonder die afspraak krijgt zo’n cel een saldo van precies min de posten die niet gemaskeerd zijn, en telt elke meting de sectorbeschikbaarheid mee als saldo-uitval.
De structuur is die van een residuele grondwaardeberekening. Wie die vorm gebruikt moet aan de kostenkant alles opvoeren wat tussen de aanneemsom en de verkoopprijs zit, anders komt dat verschil als grondwaarde in het residu terecht. Tot september 2026 ontbraken de btw, de bijkomende kosten en de winst- en risicovergoeding, en lag de grondquote daardoor boven de zestig procent, terwijl een residuele grondwaarde in Nederland zelden boven een derde van de verkoopprijs uitkomt. Sinds #672 staan die drie erin, zonder schakelaar eromheen: wie een post wil uitzetten zet zijn parameter op nul. De btw is een tarief en geen aanname, en de opslag voor bijkomende kosten is gemeten aan bijna 65.000 woningen in Woningbouwimpuls-projecten.
Dit saldo is dat van de ontwikkelaar en niet dat van de samenleving. Posten die bij een ander terechtkomen staan er expliciet buiten, ook als ze wel worden berekend: het beheer en onderhoud van de openbare ruimte valt bij de gemeente en staat als losse regel in de indicator.
Opbrengsten
De verwachte opbrengst is de waarde van de woningen in het pakket maal het aantal woningen per hectare, geschat met het Hedonisch woningprijsmodel op NVM-transacties. Die waarde is de marktwaarde, dus de prijs die de koper betaalt. Wat de ontwikkelaar daarvan overhoudt is die prijs gedeeld door 1,21, want een nieuwbouwwoning wordt vrij op naam verkocht en de ontwikkelaar draagt de btw af. De hedonische schatting rust op transacties van bestaande koopwoningen en daar zit geen btw op, dus de correctie hoort op de opbrengst en niet als opslag op de kosten.
De opbrengsten per pakket worden gerekend met de natuur- en waterfracties van het basisjaar; de correctie per zichtjaar staat onder Dynamische groennabijheid op Geschiktheid.
Bouwkosten
Het bouwkostenkental heeft twee lagen: een niveau uit de officiele statistiek en een verhouding uit de bouwkostenkentallen.
Het niveau komt uit CBS-tabel 83673NED, Bouwvergunningen kerncijfers nieuwbouwwoningen, kolom gemiddelde bouwkosten per vierkante meter. Die tabel splitst naar landsdeel en naar huurwoningen tegen koopwoningen, en verder niet. De perioden zijn voortschrijdende jaargemiddelden, dus de sleutel 2023VJ12 dekt januari tot en met december 2023. Het model leest de kolom van Model_StartYear; er gaat geen prijsindex overheen, en staat Model_StartYear op een jaar zonder kolom, dan faalt de configuratie hard.
Het kental is de bouwsom en niet het totaal van de bouwkosten. CBS definieert het als de materiaal- en arbeidskosten van het bouwwerk, exclusief btw. Honoraria, leges, rente en onvoorzien zitten er niet in; die staan sinds #672 apart als bijkomende kosten.
De verhouding tussen woningtypen kan niet uit die tabel komen. De vergunningenstatistiek legt van een bouwwerk gemeente, soort bouwwerk, bestemming, aard van de werkzaamheden, opdrachtgever, bouwkosten, inhoud, oppervlakte en bouwtijd vast, en geen woningtype. De verhouding komt daarom uit gemeentelijke kengetallenlijsten voor de bouwlegestoets, die openbaar bekendgemaakt worden, jaarlijks verschijnen, in euro per vierkante meter bruto vloeroppervlak zijn en teruggaan op het Kengetallenkompas Bouwkosten van IGG Bouweconomie. Genormeerd op de rijtjeswoning is de mediaan over vijf lijsten:
| woningtype | index |
|---|---|
| rijtjeswoning | 1,00 |
| twee onder een kap | 1,15 |
| vrijstaand | 1,12 |
| appartement | 1,30 |
Die lijsten leveren alleen de verhouding en niet het niveau. Het zijn normbedragen voor de heffingsmaatstaf van leges volgens NEN 2699, bedoeld om een opgegeven aanneemsom te toetsen, en geen marktwaarnemingen. Dezelfde werkverdeling als bij de sloopkosten.
Waarom de verhouding wordt genormaliseerd
De CBS-as huur tegen koop draagt het woningtype al indirect mee, want huurnieuwbouw is grotendeels gestapeld: de gemiddelde oppervlakte per nieuwbouwwoning is 105 vierkante meter bij huur en 184 bij koop. Het grootste deel van het verschil tussen de twee CBS-kolommen is dus type-mix en geen huursectoreffect. Een type-opslag daar ongeschaald bovenop zou dat twee keer tellen.
De index wordt daarom gedeeld door het mixgewogen gemiddelde van diezelfde index binnen de huursector. Daarmee blijft het gewogen gemiddelde per landsdeel en huursector per constructie gelijk aan het CBS-cijfer, en gaat precies het mix-deel uit de huur/koop-spreiding. De mix is gemeten: het aandeel appartementen per huursector volgt uit de oppervlaktes in 83673NED samen met het gemiddelde gebruiksoppervlak per woningtype uit 82550NED, en de verdeling binnen eengezins uit de nieuwbouwtelling naar woningtype in 86084NED.
De resulterende opslagfactoren:
| woningtype | vrije sector | sociale huur |
|---|---|---|
| rijtjeswoning | 0,914 | 0,789 |
| twee onder een kap | 1,051 | 0,907 |
| vrijstaand | 1,023 | 0,883 |
| appartement | 1,188 | 1,025 |
Het huursectoreffect dat na de correctie overblijft is 0,965 bij hetzelfde woningtype. Dat is geen invoer maar een uitkomst van de som, en de Groningse kengetallenlijst meet er los van 0,964 voor geschakelde sociale huur tegen een seriematige rijtjeswoning.
Bouwhoogte
Binnen het gestapelde segment loopt de prijs per vierkante meter bruto vloeroppervlak niet op met de bouwhoogte, in elk geval niet in het bereik van de ontwikkelpakketten, die maximaal zeven bouwlagen halen. De kengetallenlijsten geven voor het appartementenblok een vlakke tot licht dalende reeks met een minimum rond vier tot zes lagen: een klein gestapeld gebouw is per vierkante meter juist duur door een ongunstige verhouding van gevel en dak tot vloeroppervlak. De steile stijging hoort bij de gebouwfamilie woontoren, die pas bij zes lagen begint en tot zestig lagen doorloopt.
De hoogte-as bestaat wel, als Classifications/Modellering/BouwlaagK achter de schakelaar ModelParameters/Wonen/BouwlaagOpslagInBouwkosten, maar die schakelaar staat uit. Aanzetten maakt de meergezinspakketten van twee en drie lagen 2,5 procent duurder en laat de zevenlaagse ongemoeid, wat tegen de bedoeling in werkt. Het hele hoogte-effect dat wel is onderbouwd, de sprong van grondgebonden naar gestapeld, zit in de woningtype-as.
Let bij die as op dubbeltelling met de vormfactor: het sterk oplopende deel van de literatuur is per vierkante meter gebruiksoppervlak en zit al in VormfactorHoogbouw.
Wat het kental niet kan
De keuze van het ontwikkelpakket blijft een rangschikking op FSI. De bouwkosten per hectare zijn kental maal FSI maal tienduizend en de opbrengsten per hectare zijn FSI maal tienduizend maal de prijs per vierkante meter bruto vloeroppervlak, dus de marge per hectare is tienduizend maal FSI maal het verschil tussen die twee prijzen. Beide zijden zijn recht evenredig met de FSI, terwijl de marge per vierkante meter maar een factor 1,15 varieert. Bovendien loopt de keuze binnen een subsector, en dat is de combinatie van woningtype-groep en huursector, zodat binnen meergezins elk pakket een appartement is en een woningtype-as daar per constructie niets verzet. Wat de gekozen dichtheid feitelijk bepaalt is de dichtheidszeef.
Parameters: ModelParameters/Wonen/Bouwkosten en ModelParameters/Wonen/Bouwkosten_Woningtype. Toegepast in Templates/VariantData_T/Geschiktheden/Bouwkosten.dms. Meetharnas: Diagnose/Bouwkosten673.
Grondproductiekosten
Dit is de post die het bouw- en woonrijp maken van de grond dekt, plus de bovenwijkse voorzieningen en het planproces. Het is de grondexploitatie en niet de vastgoedexploitatie: de verwerving van wat er al staat zit er niet in, want die staat verderop als aparte post, en de bijkomende kosten en de winst en risico van de vastgoedkant evenmin.
Van alle posten in het saldo is dit de slechtst gedocumenteerde. Dat is de reden dat deze paragraaf lang is: veel van wat hieronder staat is niet uit een rapport overgenomen maar uit de aangeleverde bestanden zelf afgeleid.
De bron
De post rust op drie regressies die in december 2019 in opdracht van PBL door Fakton zijn geschat op grondexploitaties van woningbouwprojecten. Er is geen begeleidend rapport en geen methodeverantwoording. Wat er is, zijn drie csv-bestanden met per variabele de coefficient, de standaardfout, de t-waarde en de p-waarde:
%RSo_DataDir%/Vastgoed/BouwWoonrijpSchattingDec19.csv
%RSo_DataDir%/Vastgoed/BovenwijksSchattingDec19.csv
%RSo_DataDir%/Vastgoed/PlanProcesSchattingDec19.csv
Die drie bestanden zijn de volledige documentatie. Het aantal projecten, de verklaarde variantie, het prijspeil en de definitie van de afhankelijke variabele staan er niet in. Dat het prijspeil 2017 is, is een aanname die in de configuratie staat en die niet op de bron is terug te voeren; datzelfde geldt voor de noemer per component, zie verderop.
De drie componenten en hun coefficienten
De drie bestanden zijn drie componenten van dezelfde grondexploitatie, apart geschat en in het model opgeteld: het bouw- en woonrijp maken, de bovenwijkse voorzieningen en het planproces.
| Variabele | BouwWoonrijp | Bovenwijks | PlanProces |
|---|---|---|---|
| Intercept | 12,609 (p 0,000) | 4,049 (p 0,000) | 12,967 (p 0,000) |
| OmvangPlangebied, log | 0,886 (p 0,000) | -0,252 (p 0,001) | |
| Kaveldichtheid2018 | 0,024 (p 0,015) | 0,024 (p 0,004) | |
| Reistijd5kInw | -0,052 (p 0,007) | ||
| AndersBouwen | 0,798 (p 0,010) | 0,388 (p 0,107) | |
| BerekeningssystematiekOnbekend | 0,219 (p 0,437) | -0,702 (p 0,352) | 0,121 (p 0,583) |
| BronFakton | 0,059 (p 0,835) | -0,139 (p 0,858) | -0,604 (p 0,009) |
| BoekwaardeOpgevoerd | -0,526 (p 0,038) | -0,145 (p 0,829) | -0,077 (p 0,696) |
| BoekwaardeOpgevoerdOnbekend | 0,824 (p 0,203) | -0,795 (p 0,643) | 0,400 (p 0,427) |
| OnvoorzienVerdeeld | 0,098 (p 0,719) | 0,991 (p 0,174) | 0,596 (p 0,006) |
| Vermenging | -0,149 (p 0,712) | -1,185 (p 0,322) | -0,722 (p 0,022) |
De bovenste vijf regels zijn locatievariabelen: die verschillen per cel en maken de kaart. De onderste zes zijn controlevariabelen: die beschrijven niet de locatie maar de brongegevens, dus hoe de exploitatie van een project in de schattingsset was opgesteld. In de toepassing krijgen ze een vaste waarde.
De rekenregel
De schattingen zijn semi-logaritmisch. Per component:
kosten_component = exp( som van coefficient maal variabele )
grondproductie = ( BouwWoonrijp + Bovenwijks + PlanProces ) maal prijsindex
per cel = grondproductie maal het aantal hectare per cel
Een coefficient is daarmee een relatief effect en geen bedrag. De dummy AndersBouwen met coefficient 0,798 vermenigvuldigt de component BouwWoonrijp met exp(0,798), dus met 2,22; dezelfde dummy met 0,388 vermenigvuldigt PlanProces met 1,47. Het niveau van een component volgt uit het intercept: exp(12,609) is circa 299.000 euro per hectare, oftewel 30 euro per vierkante meter, wat voor bouw- en woonrijp maken een plausibele orde is.
Het resultaat is euro per hectare terrein. In de geschiktheid wordt het met het aantal hectare per cel vermenigvuldigd, dus met 0,0625 bij een cel van 25 bij 25 meter.
Welke lagen de kaart maken
| Variabele | Wat het is | Laag |
|---|---|---|
| Kaveldichtheid2018 | aantal kadastrale kavels per hectare binnen een kilometer | Omgeving/Kaveldichtheid2018.tif, Basiskaart Kadaster 2017, raster van 100 meter |
| Reistijd5kInw | reistijd naar 5.000 inwoners | Omgeving/Reistijd5kInw.tif, raster van 100 meter |
| OmvangPlangebied | omvang van het plangebied in hectare, logaritmisch | geen kaart, zie hieronder |
| AndersBouwen | dummy: moet hier anders gebouwd worden vanwege draagkracht of kwel | expert-judgementkaart uit 2019, raster van 100 meter |
| de zes controlevariabelen | eigenschappen van de brongegevens | geen kaart, vaste waarde |
Drie dingen om bij deze lijst op te letten.
De reistijd staat in de bron in seconden, maar wordt in minuten aan de formule gevoerd. De coefficient van -0,052 is alleen als effect per minuut te lezen; met seconden liep de exponent naar min 55 en viel de hele component PlanProces weg, tot een mediaan van 22 eurocent per hectare binnen bebouwd gebied. Zie #505.
OmvangPlangebied is geen waargenomen plangebied. Het model kent geen plangebieden, alleen cellen, en heeft daarom de minimale clusteromvang uit het geclusterd alloceren ingevuld: 0,4 hectare binnen een woonkern volgens de BRT en 2 hectare erbuiten. Dat is het kleinste samenhangende gebied dat het model daadwerkelijk ontwikkelt. Eerder stond hier het celoppervlak zelf, 0,0625 hectare, en dat is geen plangebied maar een gridcel. Let op de richting: PlanProces heeft schaalvoordelen, dus een kleiner plangebied maakt de kosten per hectare hoger. Omdat de ingevulde waarde een ondergrens is, is de uitkomst voor die component een bovengrens.
AndersBouwen is een landsdekkende expert-judgementkaart uit het voorjaar van 2019, gemaakt door WUR en aangeleverd via stichting CAS. De dummy staat aan waar de totale zetting boven een halve meter uitkomt, of de kwel onder de min 2 ligt, of in Flevoland de top van het pleistoceen dieper dan 10 meter zit of de veenlaag dikker is dan 180 centimeter. Dit is het enige bodemeffect in de grondproductiekosten. Zodra de bodemdalingpost aanstaat wordt deze dummy op nul gezet, zie de volgende paragraaf.
Alle drie de kaarten liggen op een raster van 100 meter. De grondproductiekosten varieren dus op 100 meter, terwijl de allocatie op 25 meter beslist.
De controlevariabelen
De zes controlevariabelen zijn dummy’s over de schattingsset: is de berekeningssystematiek bekend, komt de exploitatie van het adviesbureau zelf, is er een boekwaarde opgevoerd, is de post onvoorzien verdeeld, is er sprake van functiemenging. Ze horen bij een project in de steekproef en niet bij een locatie in Nederland, dus in de toepassing moet er een waarde voor gekozen worden. Die keuze is: BoekwaardeOpgevoerd op 1, de overige op 0, en BronFakton op 0 of 1 afhankelijk van de gekozen onzekerheidsband.
Een waarde kiezen voor deze variabelen is kiezen op welk soort project je extrapoleert. Dat is geen neutrale handeling: BronFakton heeft in PlanProces een coefficient van -0,604, dus de keuze tussen 0 en 1 scheelt daar een factor 1,8.
Anders dan de locatievariabelen ontsnappen de controlevariabelen aan de significantietoets hieronder: zij en het intercept worden altijd op hun geschatte waarde toegepast.
De significantiedrempel
Coefficienten van locatievariabelen met een p-waarde boven ModelParameters/Werken/Grondproductie_significatie_threshold worden op nul gezet. Die drempel staat op 0,11 en niet op de gebruikelijke 0,05.
Bij 0,11 valt geen enkele locatievariabele af. De hoogste p-waarde is die van AndersBouwen in PlanProces, 0,107, en die haalt de drempel net. Zou de drempel op 0,10 staan, dan verdwijnt die term en daarmee een derde van het bodemeffect in de opzet zonder aparte bodemdalingpost. De drempelwaarde is dus geen technische formaliteit maar een inhoudelijke keuze.
De noemercorrectie bij Bovenwijks
De drie componenten worden opgeteld als euro per hectare. Voor Bovenwijks kan dat niet kloppen, en dat is aan de schatting zelf af te lezen.
Twee aanwijzingen. De elasticiteit: OmvangPlangebied heeft daar coefficient 0,886, dus bijna 1. Op een noemer per hectare zou dat betekenen dat de totale kosten met het oppervlak tot de macht 1,886 stijgen, wat onmogelijk is; op een totaalbedrag is 0,886 juist precies wat je verwacht, namelijk kosten die ongeveer evenredig met het oppervlak lopen. En het niveau: exp(4,049) is 57, wat als totaalbedrag in duizenden euro voor een plan van een hectare een normaal kengetal voor bovenwijkse voorzieningen is, en als euro per hectare onzin.
De andere twee componenten wijzen juist wel op een noemer per hectare. BouwWoonrijp heeft helemaal geen omvangterm, wat alleen bij een noemer per hectare kan. PlanProces heeft er een negatieve, wat schaalvoordelen zijn en dus ook per hectare.
De correctie leest Bovenwijks daarom als een totaalbedrag in duizenden euro per plangebied en deelt dat door de omvang van het plangebied. Schakelaar: ModelParameters/Wonen/Grondproductie_BovenwijksAlsTotaalInDuizendEuro, standaard aan. Zonder correctie komt de component op enkele tientallen euro per hectare uit, wat geen kostenpost is; met correctie op enkele tienduizenden.
Dit is een gemotiveerde reconstructie en geen gedocumenteerd gegeven. Wie de schattingen ooit alsnog gedocumenteerd krijgt, moet dit als eerste nalopen.
De onzekerheidsband
Van elke component worden zes varianten doorgerekend, uit twee onzekerheidsdimensies:
- de statistische onzekerheid, als coefficient min de standaardfout, de coefficient zelf, of coefficient plus de standaardfout (Low, Nominaal, High)
- de keuze voor de onzekere controlevariabele BronFakton, in de stand die de kosten verlaagt of de stand die ze verhoogt (Low, High)
Welke van de zes in het saldo landt staat in ModelParameters/Wonen/grondproductie_kosten_Variant en is standaard Nominaal_high: de geschatte coefficienten zelf, met de duurste stand van de controlevariabele. De overige vijf blijven berekenbaar en zijn bedoeld voor een gevoeligheidsanalyse. Per combinatie staan gemiddelde, standaarddeviatie, minimum, maximum en de percentielen 20, 50 en 80 klaar, apart voor binnen en buiten bebouwd gebied.
Cellen zonder data
Een cel waarvoor de invoer ontbreekt krijgt niet nul maar de hoogste geschatte kosten van het hele domein (#595). Dat is een bewuste conservatieve keuze: een locatie zonder onderbouwing moet niet als goedkoop bouwbaar in de allocatie belanden.
Voor de allocatie is dat onschadelijk, want die cellen liggen buiten het gebied waar gebouwd kan worden. Voor het lezen van de kaart niet: het overgrote deel van de cellen van het volledige rekenmasker is op die manier gevuld, en elke statistiek over dat volledige masker is daardoor betekenisloos. Meet binnen bebouwd gebied of binnen het compacted domain.
Prijspeil
De schatting staat op prijspeil 2017 en gaat met de inputprijsindex bouwkosten nieuwbouwwoningen naar het basisjaar van het model, PrijsIndex_Bouwkosten_2017_naar_<jaar>. Voor 2023 is die factor 1,29. De reeks komt uit CBS 83887NED en is vanaf 2024 geketend aan de opvolger 85728NED.
Wat je van deze post moet weten
Een korte lijst voor wie een uitkomst interpreteert.
De post kent geen regionale as. Er zit geen provincie, geen landsdeel en geen stedelijkheidsklasse in de schatting. De ruimtelijke variatie komt volledig uit de kaveldichtheid, de reistijd, de plangebiedomvang binnen of buiten een woonkern, en de bodemdummy.
De post kent geen woningtype en geen dichtheid. Anders dan de bouwkosten en de bodemdalingkosten verschilt hij niet per ontwikkelpakket: het is een eigenschap van de plek. Twee pakketten op dezelfde cel dragen dezelfde grondproductiekosten per hectare.
De component Bovenwijks blijft de zwakste. Ook na de noemercorrectie rust hij op een intercept en een omvangterm, zonder enige locatievariabele.
De schatting is uit 2019 en beschrijft een praktijk van voor de bouwkostenstijging, met een indexatie als enige brug. Ordegrootte ter illustratie, gemeten in de NL2120-toepassing in augustus 2026 als mediaan binnen woonkernen: ruim een miljoen euro per hectare na indexatie, gedragen door BouwWoonrijp en PlanProces. Dat getal hoort bij die run en die parameterstand, niet bij de methode.
Er staan twee dode variabelen in de configuratie: AfstandLocatus en BouwenMetMaatregelen zijn wel als locatievariabele gedeclareerd, maar komen in geen enkel schattingsbestand voor en hebben dus geen coefficient en geen effect.
Waar het staat: Templates/VariantData_T/Geschiktheden/Grondproductiekosten.dms, met de dimensies in C.dms en de rekensjablonen in T.dms. De module staat aan de variantkant en niet in de basisdata, omdat de bodemdummy per variant aan of uit kan staan.
Bodemdalingkosten
Deze post beprijst wat het extra kost om te bouwen op een ondergrond die zakt: ophogen, funderen, of een inrichting kiezen die met de slappe bodem kan leven. Hij vervangt de dummy AndersBouwen in de grondproductiekosten, die dat effect tot #505 in zijn eentje droeg.
De kengetallen, de aannamelijst en de meting staan op Kosten woningbouw; hieronder staat wat je nodig hebt om de geschiktheid te lezen.
Wat er wordt gerekend
Het rapport waarop de post rust onderscheidt zes inrichtingsalternatieven: integraal ophogen, partieel ophogen, ophogen met een vaste 1,20 meter zand, ophogen met licht materiaal, alles funderen, en drijvend bouwen. Per cel en per ontwikkelpakket worden de aanlegkosten van alle zes uitgerekend, en het goedkoopste toegestane alternatief wint. Er wordt nooit over alternatieven gemiddeld.
De post in het saldo is niet dat bedrag maar het verschil met een referentie: integraal ophogen op een locatie zonder bodemdalingsopgave, dus met de minimale ophoging van 0,20 meter en zonder heipalen. Daardoor vallen de posten die overal gelden, zoals verharding, riolering en het inrichten van groen, tegen elkaar weg, en houd je over wat de bodem werkelijk extra kost. Op alle aanlegkosten ligt de opslag van 19 procent die het rapport hanteert, en het verschil is op nul begrensd.
Dat de post per ontwikkelpakket verschilt komt doordat de hoeveelheden uit het pakket komen. De rekenkern krijgt de grondgebruikverdeling van het pakket binnen als zes oppervlakken per hectare terrein: de voetafdruk van het gebouw, de tuin, de straat, het park, de overige openbare ruimte en het water. Een dicht bebouwd pakket heeft meer voetafdruk en dus meer heipalen; een ruim pakket meer tuin, en dus meer ophoging of juist meer besparing bij partieel ophogen. Die verdeling staat in de ontwikkelpakkettentabel, zie Uitwerking wonen.
Welke lagen de kaart maken
| Laag | Wat het is | Raster |
|---|---|---|
| Ophoogdikte | benodigde ophoogdikte zand voor integraal ophogen, 0,20 tot 6,00 meter | 100 meter |
| Heipaallengte | benodigde paallengte, in de levering afgekapt op de klasse boven 14 meter | 100 meter |
| AfgraafdiepteDrijvend | af te graven diepte voor aquatisch bouwen | 250 meter |
| DikteEPS | dikte van de EPS-laag bij een leeflaag van 30 centimeter | niet landsdekkend |
| Overstromingsdiepte | waterdiepte ter plaatse, dezelfde kaart die de zeef leest | 25 meter |
De eerste vier zijn in augustus 2026 door Deltares geleverd bij het landelijk afwegingskader bodemdalingbestendige nieuwbouw. Het zijn geen kostenkaarten maar hoeveelheden: de kengetallen uit bijlage E van dat rapport zijn formules in precies deze grootheden, en RSopen rekent de kosten er zelf mee uit op de grondgebruikfracties van het eigen ontwikkelpakket. Waar de EPS-kaart niets zegt is het alternatief met licht ophoogmateriaal niet beschikbaar.
De vijfde laag zit erbij sinds #681. De benodigde ophoging is het maximum van wat de bodemdaling vraagt en wat nodig is om boven het water uit te komen, en niet de som: wie tot de diepste van de twee ophoogt voldoet aan allebei. De waterkant is begrensd op wat de bouwwijze van het pakket aankan, met dezelfde keuzeregel die de zeef gebruikt, zodat de kosten van een maatregel aan dezelfde voorwaarde hangen als de baten in de overstromingsschade.
Alleen aanleg
In het saldo zit alleen de aanleg. Beheer en onderhoud van de openbare ruimte over honderd jaar wordt wel berekend, maar valt bij de gemeente en niet bij de ontwikkelaar, en staat daarom als aparte regel in de indicator. Dat onderscheid is hier meer dan boekhouding: de virtuele ontwikkelaar kiest op aanlegkosten, en wat hij daar bespaart komt bij de gemeente terug.
De schakelaar
Of een variant met deze kengetallen rekent staat in de kolom BodemdalingkostenInSaldo van de variantentabel. Die ene kolom schakelt twee dingen tegelijk, en dat is een eis en geen gemak: aan betekent deze post in het saldo en de dummy AndersBouwen in de grondproductiekosten op nul. Staan ze allebei aan, dan wordt de bodem twee keer beprijsd; staan ze allebei uit, dan verdwijnt het bodemeffect helemaal. In de NL2120-toepassing staat de kolom in alle vier de varianten aan, wat een projectkeuze is en geen modeleigenschap; runs van voor die keuze zijn op dit punt niet vergelijkbaar.
Daarnaast is met #505 elke slappe-bodemrestrictie in de zeef schakelbaar geworden. In de NL2120-toepassing staan ze alle drie uit, zodat de slappe bodem via de prijs meeweegt en niet via een verbod. Zet ze niet tegelijk met deze post aan, want dan wordt dezelfde bodem zowel weggezeefd als beprijsd.
Weegt de post door in de allocatie?
Ja, maar als tweederangs term, en dat is te meten zonder een tweede allocatie te draaien. De post gaat lineair het saldo in, dus het saldo zonder die post is exact het saldo plus de post, en beide standen komen uit dezelfde doorrekening. Omdat de allocator de hoogste saldi kiest telt niet de hoogte van de post maar of hij de rangorde verandert; ControleBodemdaling in Suitability_Wonen_perOP_T telt daarom de overlap tussen de bovenste cellen van beide standen.
Als illustratie, gemeten in de NL2120-toepassing voor NbSGenuanceerd, zichtjaar 2040 en een grondgebonden pakket in de middenklasse: van de bovenste twee procent van de kandidaatcellen zit 93,1 procent in beide standen. De post verzet dus ongeveer een op de vijftien toplocaties. Die getallen horen bij die run en zijn een illustratie van de methode.
Die redenering geldt voor elke post die lineair in het saldo gaat: het tegenfeitelijke saldo is gratis, en de vraag of een post de allocatie verzet is een overlaptelling in plaats van een tweede run.
Verwervingskosten
De verwervingskosten zijn wat er moet worden opgekocht voordat er gebouwd kan worden, en vallen uiteen in drie delen: de woningen, het niet-woonvastgoed en de grond.
Voor woningen komt de waarde uit dezelfde hedonische waardeschatting die de opbrengsten levert, per woningtype.
Sinds #787 draagt ook onbebouwde grond een prijs. Daarvoor was die gratis, terwijl woningen hun grond wel betaalden via de WOZ-waarde. De prijs staat per bodemgebruiksklasse in ModelParameters/Wonen/Grondwaarde en geldt alleen waar geen woning staat, zodat de grond onder een woning niet twee keer wordt gerekend. Verwacht er niet te veel van: de sprong van gebruikswaarde naar residuele waarde is een factor tien tot twintig, dus deze post haalt de zwakste marge weg en verzet de rangorde nauwelijks.
Niet-woningen
Anders dan bij woningen is er voor niet-woonvastgoed geen hedonisch prijsmodel. De prijs per vierkante meter komt uit de WOZ-brondata van het CBS, per buurt en per bodemgebruiksklasse, teruggevallen op wijk en gemeente waar de buurt ontbreekt. De bodemgebruiksklasse van de cel kiest welke reeks geldt.
Twee bewerkingen zijn nodig voordat die reeks bruikbaar is.
De brondata gaat alleen over woningen. De drie csv-bestanden tellen landelijk 7,84 miljoen objecten, gelijk aan de woningvoorraad, terwijl alle WOZ-objecten samen er circa 8,8 miljoen zijn. De bodemgebruiksgroep zegt dus waar een woning staat, niet wat voor object het is: een woning op een bedrijfsterrein in Amsterdam staat er op 3.937 euro per vierkante meter, wat de Amsterdamse woningprijs is.
Een enkele omrekenfactor volstaat niet. Die zou een distributiehal beprijzen als een winkel, en juist grote panden bepalen of een locatie voor transformatie afvalt. De prijs staat daarom op de samenstelling van het vloeroppervlak in de cel: het hal-aandeel maal de ene verhouding, de rest maal de andere. Dat geeft circa 605 euro per vierkante meter in een cel met alleen hallen en circa 1.404 in een cel zonder. De ruimtelijke component kan dat onderscheid niet leveren, want de WOZ-woningprijs bij hallen en bij overige utiliteit verschilt landelijk maar twee procent.
Wat een hal is, volgt niet uit het gebruiksdoel. Industrie, logistiek en utiliteit-combi als hal-set nemen levert 54 procent precisie en laat een kwart van alle hallen buiten beschouwing: industriefunctie is voor bijna de helft kleine bedrijfsruimte, terwijl bouwmarkten en sporthallen buiten die set vallen. Het model gebruikt daarom een fysieke maat: een verblijfsobject groter dan 1.000 vierkante meter waarvan het vloeroppervlak onder anderhalf maal de voetafdruk van zijn pand blijft, dus groot en in feite eenlaags. Landelijk voldoet 224 van de 550 miljoen vierkante meter niet-woonoppervlak daaraan. Per gebruiksdoel is dat aandeel gemeten en als gewicht opgenomen.
Het vloeroppervlak zelf komt uit dezelfde bron als de sloopkosten, zodat hetzelfde gebouw voor verwerven en voor slopen op dezelfde maat en dezelfde samenstelling staat.
Op Niet_Woningen/Calc staat een IntegrityCheck die het landelijke totaal tussen 250 en 900 miljard euro houdt. Prijs en oppervlak zitten aan elkaar vast: een wijziging bovenstrooms die het vloeroppervlak verzet, verzet dit totaal evenredig zonder dat er in de kostencode iets verandert. De check maakt zo’n verschuiving hard in plaats van stil.
Parameters: ModelParameters/Wonen/Verwervingskosten. Zie ook Ontkoppelde bestanden: de weggeschreven kaarten hebben geen fingerprint en moeten met de hand ververst worden.
Funderingsschade
Optioneel wordt funderingsschade meegenomen, maar slechts aan een kant. Staat FunderingschadeWordtHersteld aan, dan draagt de zittende eigenaar de herstelkosten en verandert het exploitatiesaldo niet: de post Herstelkosten wordt wel berekend en komt in geen enkele optelling terug. Staat de schakelaar uit, dan daalt de woningwaarde met het minimum van de schade en de woningwaarde, en dalen daarmee de verwervingskosten. Alleen die tweede tak stuurt de allocatie. Zie Funderingsschade en #680.
Sloopkosten
Het sloopkental is opgebouwd uit een basisbedrag per bouwtype plus een asbesttoeslag voor panden met een bouwjaar voor 1994, het jaar van het Nederlandse asbestverbod. Alle bedragen staan op prijspeil 2017 en gaan met de bouwkostenindex naar het zichtjaar.
| component | prijspeil 2017 | prijspeil 2023 |
|---|---|---|
| basis, hal | 43 | 55 |
| basis, overige utiliteit | 101 | 130 |
| asbesttoeslag | 20 | 26 |
| rijtjeswoning en appartement | 48 | 62 |
| twee onder een kap | 88 | 114 |
| vrijstaand | 125 | 161 |
Het niveau is geijkt op de marktstudies die het Economisch Instituut voor de Bouw voor brancheorganisatie VERAS maakt. Die geven zowel de omzet naar activiteit en marktsector als het gesloopte vloeroppervlak uit de BAG, en dus samen een kental per vierkante meter. Over 2023: sloopwerk 800 miljoen euro, waarvan 73 procent totaalsloop, waarvan 64 procent gebouwen, tegen circa 3,6 miljoen vierkante meter gesloopt. Dat geeft 104 euro per vierkante meter. Dezelfde som over 2018 geeft 113 euro op prijspeil 2023.
In dat bedrag zit slopen, materiaalscheiding, afvoer, terreinwerk en de overhead en marge van de sloper. Asbestverwijdering en bodemsanering zitten er niet in, want dat zijn in dezelfde bron aparte activiteiten met eigen omzet. Vandaar de asbesttoeslag als losse component.
Offerteprijzen uit de markt liggen ongeveer een factor twee lager, rond de 30 tot 55 euro per vierkante meter. Dat verschil is verklaarbaar: offertes gelden een eenvoudige, bereikbare, vrijstaande situatie zonder vergunningen, bemaling, tijdelijke voorzieningen en stedelijke beperkingen.
Parameters: ModelParameters/Wonen/Sloopkosten.
Piekbuibergingkosten
Een nieuwe wijk legt de bergingsmaatregelen aan die bij haar inrichting horen: groene en blauwe daken, halfverharding, holle wegen, wadi’s en doorlatend groen. De aanlegkosten daarvan kunnen sinds #798 als eigen post in het saldo meedoen, op dezelfde oppervlakken en met dezelfde variantfracties als de bergingsindicator. Ook hier alleen de aanleg: het onderhoud valt bij de beheerder.
De post staat achter ModelParameters/Piekbuiberging/KostenInExploitatiesaldo en staat in de NL2120-toepassing uit. De reden is de omvang: de bergingsinrichting is per hectare van dezelfde orde als het exploitatiesaldo zelf, en het verschil tussen de varianten zit vooral in de halfverharding. Aanzetten laat de bergingsambitie dus niet alleen bepalen hoe er wordt gebouwd maar ook waar. Zie Piekbuiberging.
Deze post draagt de opslagen voor bijkomende kosten en voor winst en risico niet, want die zijn gedefinieerd op de bouwsom van de woningen en dit is terreininrichting.
De ondergrens onder het saldo
Een locatie waarvan het saldo onder MinimumExploitatieSaldo ligt wordt restrictief verklaard. De toets luidt: saldo kleiner dan de drempel betekent wegzeven. Een hogere waarde is dus strenger en niet ruimer, en dat is bij het instellen al een keer misgegaan.
De drempel staat per variant in de variantentabel. In de NL2120-toepassing staat hij op min een miljoen euro per cel, zodat alleen een locatie afvalt die meer dan een miljoen verlies draait. Dat is een projectkeuze en geen modeleigenschap, en ze hangt samen met de posten die #672 heeft toegevoegd: sinds het saldo een echte residuele grondwaarde is ligt de verdeling veel lager dan daarvoor, en zou een drempel op nul een groot deel van het aanbod wegnemen.
Waar het in de configuratie staat
| Onderdeel | Plaats |
|---|---|
| het saldo zelf | Templates/Suitabilities/Suitability_Wonen_perOP_T.dms |
| bouwkosten | Templates/VariantData_T/Geschiktheden/Bouwkosten.dms |
| grondproductiekosten | Templates/VariantData_T/Geschiktheden/Grondproductiekosten.dms |
| bodemdalingkosten, invoer | BaseData/Suitabilities/Bodemdalingkosten.dms |
| bodemdalingkosten, rekenkern | Templates/Suitabilities/Bodemdalingkosten_T.dms |
| bodemdalingkosten, per pakket | Templates/VariantData_T/Geschiktheden/Bodemdalingkosten.dms |
| piekbuibergingkosten | Templates/VariantData_T/Geschiktheden/Piekbuibergingkosten.dms |
| parameters en kentallen | ModelParameters/Wonen.dms |
| schakelaars per variant | VariantParameters/VariantK.dms |
De kostenmodules staan aan de variantkant en niet in de basisdata, omdat de keuze tussen de bodemdummy en de bodemdalingkengetallen per variant kan verschillen.