NotesExperiment
Only 391 of the 274,741 OSM buildings around Seoul have a facade colour
While building a web 3D game that smashes Seoul's buildings, I counted which tags OpenStreetMap buildings carry, how well their outlines match an existing dataset, and how far their heights differ. 20.4% had a name, 16.2% a height, 0.14% a facade colour.

I am building a web 3D game in which you run through Seoul and smash buildings. The buildings that fall should have the shape of the real ones, so I checked whether the building data I use now (Seoul 3D Atlas, which stores each building as a rotated rectangle) could be replaced with OpenStreetMap (OSM) outlines. This is a record of counting how well the outlines match and how much of the name, height and colour tags I can actually use.
What I counted
The source is Geofabrik's South Korea extract. The replication timestamp in the PBF header is 2026-11-01T21:21:36Z, sequence 4480. Inside a rectangle from longitude 126.735 to 127.205 and latitude 37.40 to 37.72 (about 41 × 36 km, recomputed), I pulled every closed way and multipolygon relation tagged building or building:part. The rectangle is wider than Seoul's administrative boundary.
That gives 274,741 objects, or 275,286 outlines once objects that split into several pieces are counted separately. Every number below counts map objects, not unique buildings. The building values include things like roof and greenhouse. I re-ran the extraction from scratch and got the same counts. The data is © OpenStreetMap contributors under ODbL 1.0, and the terms are on the OSM copyright page.
How many tags are filled in
| Tag | Count | Share (recomputed) |
|---|---|---|
building:levels | 72,120 | 26.3% |
name | 55,982 | 20.4% |
height | 44,378 | 16.2% |
roof:shape | 1,228 | 0.45% |
roof:colour | 974 | 0.35% |
building:material | 460 | 0.17% |
building:colour | 391 | 0.14% |
The cover chart is drawn directly from the figures in this table. To extrude a building you need a height, and only 75,953 objects (27.6%) have a height or building:levels that reads as a number. The other 198,788 (72.4%) have neither (recomputed).
Facade colour appears on 391 objects. The values are 305 hex codes and 86 colour names, all lowercase English such as white and brown. The wiki recommends hex and warns that renderers may read names differently. The American spelling building:color appeared zero times.
Of the 391, 212 ended up linked to an outline in the game data (391 counts map objects and 212 counts linked outline records, so the units differ slightly). Of the roughly 180 colour-tagged outlines that were not linked (392 outlines carry the tag), at least 165 were building:part. I suspect they overlap their parent building and lost out in the one-to-one matching, but I did not check them one by one. The 306 linked outlines with building:material had brick 102, glass 92 and concrete 80 as the top values, plus one written in Korean as '벽돌'.
The same rectangle holds 7,973 natural=tree nodes, 58 of them with a height, counted again from the raw PBF. A rectangle around Yeouido that takes in the 63 Building and the Sibeom apartment complex (latitude 37.517 to 37.525, longitude 126.934 to 126.943) held none. Read that as no one having mapped the trees there, not as a lack of trees.
How well the outlines match
For each OSM outline I took the 8 Atlas boxes whose centres were closest and paired them one-to-one when the IoU (intersection area divided by union area) was at least 0.55. There are 267,080 Atlas boxes.
| Item | Value |
|---|---|
| OSM outlines (still valid after rounding) | 275,277 |
| Linked one-to-one to a box (IoU 0.55 or more) | 245,653 (89.2%) |
| Not linked | 29,624 (10.8%) |
| Median IoU of linked pairs | 0.852 |
| IoU of linked pairs, 25th to 75th percentile | 0.786–0.899 |
| Linked pairs with IoU 0.9 or more | 24.7% |
The IoU distribution was recomputed from the linked outlines and their original boxes, and the median matched the value in my survey notes. One side is a rectangle, so these values include how much the box simplifies the building, and the positional accuracy of the OSM outline itself does not show up separately. Pairs under 0.55 were filtered out up front, so they are not in the distribution.
Of the 29,624 unlinked outlines, 28,980 had no candidate with an IoU of 0.55 or more, and 644 (recomputed) had one but lost out in the one-to-one assignment. In a separate check I overlaid the 29,298 unlinked unique outlines on all the boxes, and 13,326 of them (45.5%) were covered less than 5% even with every box combined. Those are candidates for buildings missing from the Atlas, and the audit script's own comment says this is not proof that a building is missing. The Atlas is a 2026-08-30 snapshot and the OSM data is from 2026-11-01, so edits made in between may be mixed in. I did not separate out how many.
How well the heights match
I compared OSM height with the Atlas height for the same building. Of the 245,353 pairs where the game outline and the OSM outline have identical coordinates (duplicates removed), the sample is the 36,419 whose height is a number between 3 and 600 m and which have no min_height or minimum-level tag, or one that is 0. The wiki's Key:height page defines height as the maximum height from the lowest point where the building meets the ground to the top of the roof, antennas excluded.
| Height difference | Count | Share (recomputed) |
|---|---|---|
| 0.05 m or less | 30,827 | 84.6% |
| 0.05–0.5 m | 2,953 | 8.1% |
| 0.5–1 m | 2,390 | 6.6% |
| 1–5 m | 24 | 0.07% |
| 5–20 m | 21 | 0.06% |
| Over 20 m | 204 | 0.56% |
The median difference is 0 m, the 90th percentile 0.4 m and the 99th 0.94 m, and 99.3% are within 1 m. But the Atlas is itself derived from OSM through OpenFreeMap and OpenMapTiles, so this agreement only shows how alike two datasets with the same roots are. I did not compare against surveyed heights.
Of the 225 buildings that differ by more than 5 m, 212 are taller in OSM and 200 have an Atlas value of exactly 5 m. Across the whole Atlas, 190,789 boxes (71.4%, recomputed) are 5.0 m, which looks like a default for unknown heights. I could not open the Atlas's processing, so I do not assert that. Conrad Seoul is 199 m in OSM against 50 m in its linked Atlas record, and my survey notes say that 50 m record overlaps a part of about 200 m.
What this survey does not tell you
A missing tag means the value is unknown. It does not mean a building without a facade colour is grey, or that the building does not exist. All figures count records, so they differ from unique building counts, and because the rectangle extends past the administrative boundary they cannot be read as Seoul-only shares.
The outline matching is automatic, and I did not verify individual buildings. The height sample comes only from buildings that carry a height (16.2% of all), so the comparison says nothing about the rest. I did not check whether the colour tags match the buildings on site.
There is only one snapshot, so the values change as OSM changes. The latest file on the Geofabrik page is updated continuously, and at the time of writing it was labelled as holding data up to 2026-11-02T21:21:26Z. To get the same numbers you need the file with replication timestamp 2026-11-01T21:21:36Z.