Skip to main content

Methodology

Methodology of the Berlin data atlas: resolution, timeliness, editorial rules and what is deliberately not included.

What this is about

navigator.berlin collects 56 public Berlin geodata sets and shows the values that apply to each address. Served statically, without cookies, without login, without trackers.

The idea: make data readable without condensing it into a “residential score”. Neighbourhood statistics stay neighbourhood statistics. What applies at an address appears in the inspector. Where something does not apply, we say so.

Data architecture

In the build step we fetch every layer from its source, reproject to EPSG:4326, simplify the geometry with mapshaper and write the hash plus the data update date into the manifest. At runtime a point-in-polygon lookup returns the applicable values per address. No database, no API call to the server.

  1. Source · Berlin Geoportal · OSM · DWD
  2. fetch · WFS-Pull · Overpass-Query
  3. reproject · EPSG:3035 → EPSG:4326
  4. simplify · mapshaper visvalingam · keep-shapes
  5. hash · SHA-256
  6. manifest · MANIFEST.json
  7. build · SvelteKit · prerender
  8. edge · CDN · Hetzner
Build pipeline: all steps deterministic, idempotent, documented in the source repo.

Aggregation levels

Not every value is address-exact. Noise and air come from planning-area-level statistics (LOR planning area, 542 polygons). Standard land values attach to the city block. Anyone who reads a noise value in the inspector sees the mean for the whole planning area, not their own bedroom.

Address-exact
Point geocode + point layers (Stolpersteine, daycare centres, public transport stops)
LOR planning area (542)
Noise, air, bioclimate, green space provision, environmental justice, residential areas 2024
Bezirk (12) and locality (96)
Administrative master data
Block aggregate
Standard land values, climate PET, Milieuschutz, school catchment areas
Point OSM
Cycling network, bicycle streets, public transport stations, Stolpersteine, drinking fountains

Map display

The map shows at most two value maps at the same time, with fixed roles: the first fills the area, the second appears as graduated square symbols, one square per planning area, whose size shows the level. A third value layer automatically replaces the oldest. In the legend you can swap the roles with a click; the setting is carried over into shared links.

Each score dimension has its own colour (Quiet & air blue, Mobility violet, Local amenities ochre, Tenant protection teal, Culture berry; green belongs to the overall score and Green & heat). Within each colour: light = low level, dark = high level. The shape language separates meanings: squares stand for aggregated area values, round markers and pins for specific places. Area layers such as Milieuschutz or cold air corridors only say “this applies here”, sit underneath as areas and do not count towards the two-map limit.

The size gradation of the symbols carries the information even with red-green colour vision deficiency, where hues can converge. We measured the distinguishability of the colour combinations with simulated colour vision deficiency, not estimated it.

What “Kiez” means here

In everyday speech a Kiez is a felt neighbourhood, defined by its residents, without a fixed boundary. On navigator.berlin, “Kiez” instead means an official unit: the LOR Bezirksregion (lifeworld-oriented spaces, LOR-BZR, as of 2021), 143 in total.

We use the LOR Bezirksregion because only it has a clear, statistically backed boundary that all data hangs on. Your felt Kiez can be smaller or span several Bezirksregionen. The values on a Kiez page apply to the LOR-BZR, not to a single street.

Aggregate indices

The environment & infrastructure score combines five dimensions per planning area: Quiet & air, Green & heat, Mobility, Local amenities (daycare centres, schools, hospitals, playgrounds) and Tenant protection (Milieuschutz areas). Each dimension stays separately available in the inspector and as its own map layer. Five times 20 percent weight. An overall layer aggregates them as a mean.

The score only measures quantities with an unambiguous better direction for residents. It does not rate social structure: a Kiez with low social status does not live “worse”. Affordability also stays out: contested and without reliable address-level data.

There is no single “Berlin score”. Aggregation to one number would stigmatise and obscure individual priorities. Someone looking for a place for a family weights differently from someone sensitive to heat.

Full methodology: Kiez score

MSS 2025 as neutral context

The Monitoring Soziale Stadtentwicklung (social urban development monitoring) of the Senate Department for Urban Development, Building and Housing provides an overall index per planning area, made up of status (income, employment, education) and dynamics (change). Since the score reorganisation it no longer feeds into the score. We show it as a neutral context layer, only the aggregate value, not the individual indicators such as unemployment rate or rate of welfare receipt. Individual values would be sharper and more stigmatising at address level.

Low status does not mean “bad Kiez”. The level reflects structural differences, not housing quality. Choropleth colours are kept neutral, no red-green. Source: SenStadt MSS 2025, licence dl-de/zero-2-0.

Election data

Bundestag, Berlin House of Representatives (Abgeordnetenhaus) and District Assembly (BVV) elections since 2011 with aggregates at four levels: polling district, Kiez (LOR Bezirksregion), Bezirk and Berlin overall. Sources are the Federal Election Commissioner (Bundeswahlleiterin, BTW) and the Statistics Office Berlin-Brandenburg (Amt für Statistik Berlin-Brandenburg, AGH + BVV). Values describe vote shares, not an assessment.

We document special cases transparently: postal-vote groups as the smallest map level (Kiez value as an estimate), repeat elections 2023 with a reference to the original election, coverage gaps before 2017 without polling district geometry.

Full methodology: Election data · All elections individually

Cool places

The Cool places layer shows places to cool down in hot weather. The cool score from 1 to 5 follows type and construction: 5 very cold (ice rink), 4 air-conditioned or by the water, 3 cool solid building such as a library or museum, below that less cool. Geometry and base tags come from OpenStreetMap (ODbL 1.0, attribution), supplemented by an editorial navigator.berlin enrichment: cool score, air conditioning and summer availability.

Air conditioning is rarely verifiable: only 29 of 659 places have a verified AC status, the rest are marked probable or unknown. The AC note is an indication, not a promise. An offer, not a substitute for authorities, no legal right of access.

Sources and licences

Coverage strategy

If a layer delivers no value for an address, we state the reason.

no-coverage
Dataset not available for this address.
outdated
Geodataset older than 5 years.
seasonal
Layer active only in season (drinking fountains May to October).
coverage-out-of-scope
Address outside the spatial scope.
out-of-concept
Layer conceptually not applicable (rent index layer in a commercial location).

What we leave out

  • Cookies, trackers, user accounts

    No browser identification. Bookmarks live in LocalStorage.

  • Rent prices

    We state no €/m². The official value comes from mietspiegel.berlin.de.

  • Personal data

    No profile, no behavioural analysis, no login requirement.

  • Algorithmically generated layer texts

    We write layer descriptions by hand. No LLM output for personal biographies.

  • City-wide single score

    There is one overall value per Kiez, but no single number for the whole of Berlin. Personal priorities weight things differently anyway.

  • Advertising, partner tracking, A/B tests

    No commercial model.

Editorial responsibility

We show Stolpersteine as memorial markers. We neither count nor rate them. Personal biographies belong to the primary source stolpersteine-berlin.de.

navigator.berlin states no rent price and gives no legal advice. The statutory rent index by residential area (Wohnlagen-Mietspiegel) comes from mietspiegel.berlin.de.

Aggregated values are neighbourhood means, not properties of a flat. We deliberately forgo a “Berlin score” and show no Bezirk rankings.

We write layer texts by hand. No layer content is summarised by LLM, no personal biography generated.

Data status

Sorted alphabetically by layer name, not a ranking by recency.

Data status table of all active layers
LayerBundleLast updatedLicence
Air pollution 2023C · Environment2024-01dl-de/zero
BezirkeA · Boundaries2024-01dl-de/zero
Bicycle streetsF · Mobility2024-06dl-de/zero
Bus stopsF · Mobility2026-05ODbL
CinemasJ · Culture2026-06ODbL
ClubsJ · Culture2026-06ODbL
Cold air flow corridor (2022)C · Environment2024-06dl-de/zero
Cold air influence zone (2022)C · Environment2024-06dl-de/zero
Community culture centresJ · Culture2026-06ODbL
Cool placesC · Environment2026-08ODbL
Cycling networkF · Mobility2025-07dl-de/zero
Daycare centresE · Social infrastructure2024-12dl-de/zero
Drinking fountainsC · Environment2026-05ODbL
Environmental justice 2023C · Environment2024-01dl-de/zero
GalleriesJ · Culture2026-06ODbL
Green space provision 2023C · Environment2024-01dl-de/zero
Green spacesC · Environment2026-04dl-de/zero
GroceriesE · Social infrastructure2026-06ODbL
Hospitals in the Berlin hospital planE · Social infrastructure2023-03dl-de/zero
Kiez score · cultureG · Kiez score2026-06dl-de/zero
Kiez score · green & heatG · Kiez score2026-06dl-de/zero
Kiez score · local amenitiesG · Kiez score2026-06dl-de/zero
Kiez score · mobilityG · Kiez score2026-06dl-de/zero
Kiez score · overallG · Kiez score2026-06dl-de/zero
Kiez score · quiet & airG · Kiez score2026-06dl-de/zero
Kiez score · recorded crimeG · Kiez score2026-06dl-de/zero
Kiez score · tenant protectionG · Kiez score2026-06dl-de/zero
LibrariesJ · Culture2026-06ODbL
LocalitiesA · Boundaries2024-01dl-de/zero
Milieuschutz: rent preservationB · Housing data2025-01dl-de/zero
Milieuschutz: urban planningB · Housing data2025-01dl-de/zero
MuseumsJ · Culture2026-06ODbL
Noise pollution 2023C · Environment2024-01dl-de/zero
Other hospitalsE · Social infrastructure2023-03dl-de/zero
Perceived temperature 2022C · Environment2024-06dl-de/zero
PharmacyE · Social infrastructure2026-06ODbL
PlaygroundsE · Social infrastructure2026-04dl-de/zero
Population density 2024I · Demographics2024-12CC BY
Post officeE · Social infrastructure2026-06ODbL
PostcodesA · Boundaries2024-01dl-de/zero
Public artJ · Culture2026-06ODbL
Rent index: residential area 2024B · Housing data2024-06dl-de/by
S-Bahn networkF · Mobility2026-05ODbL
S-Bahn stationsF · Mobility2026-05ODbL
School catchment areasE · Social infrastructure2025-01dl-de/zero
SchoolsE · Social infrastructure2025-01dl-de/zero
Social status index (MSS 2025)B · Housing data2024-12dl-de/zero
Sports facilitiesE · Social infrastructure2025-07dl-de/zero
Standard land values (EUR/m²)B · Housing data2026-01dl-de/by
Swimming poolsE · Social infrastructure2026-04dl-de/zero
Theatres & stagesJ · Culture2026-06ODbL
Thermal stress 2023C · Environment2024-01dl-de/zero
Tram networkF · Mobility2026-05ODbL
Tram stopsF · Mobility2026-05ODbL
U-Bahn networkF · Mobility2026-05ODbL
U-Bahn stationsF · Mobility2026-05ODbL

Sources and licences

Most layers are under dl-de/zero-2-0 or dl-de/by-2-0. OSM-based layers (Stolpersteine, public transport, drinking fountains, cycling) are under ODbL 1.0 with attribution to OpenStreetMap contributors.

Full list on the licences page

Feedback

Methodology correction, data error or layer suggestion: by email.

hey@navigator.berlin

deen