Area statistics: what does the area look like?
Aggregated statistics for a kommune or grunnkrets: population by gender, age and education, households, dwellings, commuting and how income and wealth are distributed.
Nøkkelen virker på Placepoint API og på dagens Data API, 35 kall om dagen i 14 dager.
Prøv med et ekte område: Oslo kommune
- Test in under a minute
- One GET call
- JSON
- Norway
- Updated annually
Placepoint API is under development. This endpoint does not respond yet, and we have no date for when it will.
From area to statistics
The call tells you who lives in an area, not just what a single property is. Brokers use it to put a property in context in a sales prospectus without looking up several sources themselves, developers use it to assess the buyer base around a site before they bid, and analysts use it to compare many areas in a loop of calls.
The answer comes with population by gender, age group and education level, households by type, dwellings by type and form of ownership, daytime population and commuting, and the distribution of income and wealth in bands, with averages. Income is alminnelig inntekt (ordinary income) and wealth is net wealth, as defined by Skatteetaten (the Norwegian Tax Administration). The bands are given in thousands of kroner.
The area level is chosen with areaId: a kommunenummer gives broad coverage, a grunnkrets gives finer geographical resolution than the kommune. Both are sums over the 100-metre grid cells in the area, so the figures for a grunnkrets and the figures for the kommune it lies in build on the same source.
Two levels in the same call
AnareaIdwith four digits is a kommunenummer, eight digits is a grunnkrets number. The client needs no separate logic for each level.Distributions, not just averages
Income and wealth come as the number of people per band, so you can see the spread in an area and not just the average.One source for the whole country
All figures come from SSB and Skatteetaten via Geodata's demographic grid, with the same year for all of Norway.
Fields that actually tell you something
One GET call with areaId gives you the statistics for the area. The fields below are the ones that decide what the figures actually measure.
/areas/{country}/{areaId}/statisticscurl -X GET "https://data.placepoint.no/areas/NO/0301/statistics" \
-H "Authorization: Bearer $TOKEN"
svar · 200
{
"area": {
"id": "0301",
"kind": "MUNICIPALITY",
"name": "Oslo",
"municipality": {
"number": "0301",
"name": "Oslo"
}
},
"population": 717710,
"populationByGender": {
"male": 355200,
"female": 362510
},
"populationByAgeGroup": [
{
"label": "0-5",
"count": 44100,
"sharePct": 6.1
},
{
"label": "6-12",
"count": 52300,
"sharePct": 7.3
},
{
"label": "13-15",
"count": 19500,
"sharePct": 2.7
},
{
"label": "16-18",
"count": 20100,
"sharePct": 2.8
},
{
"label": "19-23",
"count": 41600,
"sharePct": 5.8
},
{
"label": "24-34",
"count": 148200,
"sharePct": 20.6
},
{
"label": "35-44",
"count": 118400,
"sharePct": 16.5
},
{
"label": "45-54",
"count": 93300,
"sharePct": 13
},
{
"label": "55-64",
"count": 73200,
"sharePct": 10.2
},
{
"label": "65-74",
"count": 56800,
"sharePct": 7.9
},
{
"label": "75-84",
"count": 35900,
"sharePct": 5
},
{
"label": "85+",
"count": 14310,
"sharePct": 2
}
],
"populationByEducationLevel": [
{
"label": "Ingen eller uoppgitt",
"count": 48200,
"sharePct": 7.9
},
{
"label": "Grunnskole",
"count": 118400,
"sharePct": 19.4
},
{
"label": "Videregående",
"count": 197300,
"sharePct": 32.3
},
{
"label": "Universitet og høyskole, lavere grad",
"count": 161900,
"sharePct": 26.5
},
{
"label": "Universitet og høyskole, høyere grad",
"count": 85200,
"sharePct": 13.9
}
],
"populationHistory": [
{
"year": 2025,
"value": 717710
}
],
"averageAge": 38.4,
"daytimePopulation": 812400,
"commuters": {
"inbound": 137500,
"outbound": 61200
},
"households": {
"count": 371400,
"averageSize": 1.93,
"byComposition": [
{
"label": "Enslig uten barn",
"count": 190100,
"sharePct": 51.2
},
{
"label": "Par uten barn",
"count": 71300,
"sharePct": 19.2
},
{
"label": "Par med små barn",
"count": 48600,
"sharePct": 13.1
}
]
},
"housing": {
"unitCount": 358900,
"cabinCount": 2140,
"byType": [
{
"label": "Blokk",
"count": 259400,
"sharePct": 72.3
},
{
"label": "Enebolig",
"count": 26800,
"sharePct": 7.5
}
],
"byTenure": [
{
"label": "Selveier",
"count": 171200,
"sharePct": 46.1
},
{
"label": "Eier borettslagsbolig",
"count": 93600,
"sharePct": 25.2
},
{
"label": "Leier",
"count": 106600,
"sharePct": 28.7
}
]
},
"employeeCount": 486200,
"employedResidents": 398700,
"averageIncome": {
"amount": "512300.00",
"currency": "NOK"
},
"incomeDistribution": [
{
"label": "0",
"count": 21400,
"sharePct": 3.6
},
{
"label": "0-100",
"count": 38900,
"sharePct": 6.5
},
{
"label": "100-200",
"count": 54100,
"sharePct": 9
},
{
"label": "200-300",
"count": 61800,
"sharePct": 10.3
},
{
"label": "300-400",
"count": 78500,
"sharePct": 13.1
},
{
"label": "400-500",
"count": 84200,
"sharePct": 14.1
},
{
"label": "500-600",
"count": 66300,
"sharePct": 11.1
},
{
"label": "600-700",
"count": 48700,
"sharePct": 8.1
},
{
"label": "700-800",
"count": 34900,
"sharePct": 5.8
},
{
"label": "800-1000",
"count": 41600,
"sharePct": 6.9
},
{
"label": "1000-1500",
"count": 37800,
"sharePct": 6.3
},
{
"label": "1500+",
"count": 30400,
"sharePct": 5.1
}
],
"averageWealth": {
"amount": "1840000.00",
"currency": "NOK"
},
"wealthDistribution": [
{
"label": "0",
"count": 142600,
"sharePct": 23.8
},
{
"label": "0-50",
"count": 61200,
"sharePct": 10.2
},
{
"label": "50-200",
"count": 58900,
"sharePct": 9.8
},
{
"label": "200-400",
"count": 47300,
"sharePct": 7.9
},
{
"label": "400-700",
"count": 49800,
"sharePct": 8.3
},
{
"label": "700-1000",
"count": 38600,
"sharePct": 6.4
},
{
"label": "1000-2000",
"count": 86400,
"sharePct": 14.4
},
{
"label": "2000-3000",
"count": 46100,
"sharePct": 7.7
},
{
"label": "3000-4000",
"count": 25700,
"sharePct": 4.3
},
{
"label": "4000+",
"count": 43000,
"sharePct": 7.2
}
],
"asOfDate": "2025-01-01"
}
area.kind shows the level of detail the figures apply to, and asOfDate shows which year the population figures apply to. incomeDistribution and wealthDistribution give the number of people per band, and averageIncome and averageWealth give the average. The fields for transactions and price level in the schema (transactionsLast12Months, medianPricePerM2, marketActivity, priceHistory) and populationProjection are not in the answer yet.
Test in under a minute
Log in with GitHub
One click, under a minute, no payment card. The key comes back to this page.Call the endpoint
The curl above fills itself in with your key when you are logged in. The call needs a country code and anareaIdin the right format for the level you are asking about.Apply the answer
Put the property in context in a sales prospectus, or loop over severalareaIdvalues to compare the buyer base across areas.
Data and sources
The figures come from SSB and Skatteetaten, compiled on 100-metre grid cells by Geodata and summed by us per kommune and grunnkrets. The grid is updated annually; asOfDate shows the year. Sweden is not included yet.
See also
- Analysis
- The area analysis
- The Demographics report
- The Demographics map layer
- Technical reference
- Placepoint API
Questions and answers
How fresh is the data?
asOfDate shows which year the population figures apply to. The grid is updated once a year after SSB and Skatteetaten have published, not every night.What kind of income and wealth is this?
incomeDistribution and wealthDistribution are in thousands of kroner, and the averages are in kroner.Does it work in Sweden?
areaId returns 404 until we have a source for Swedish areas.Which areaId formats are there?
area.kind in the answer confirms which level the figures apply to.