UK Quarterly Project 2026 Q4: Building Traces

Today is 1st October, so it’s the start of a new UK Quarterly Project. This quarter the project we voted for was Building Traces. See the Wiki page for details, and please use this thread for any discussions.

3 Likes

Obviously the cadastral parcels layer is very good for splitting buildings correctly, has anyone made a UPRN layer for use in JOSM? There are some terraces near me where the entire terrace is one parcel, and UPRNs could help determine the number of times it needs to be split.

I don’t know of a layer that does raw UPRNs, but the postcode layer there was recent thread about seems to have multiple copies of the postcode on some apartment buildings so that may be of use if there are no licence issues?

2 Likes

It’s not quite what you asked for, but I’ve got a UPRN viewing tool that you could compare with your JOSM Screen. It also allows you to download a small area as GeoJSON which you could then load in JOSM, although it’s not in an OSM-friendly format.

1 Like

This can be the case if it’s council owned housing, for example.

2 Likes

It’s the NSUL data from the ONS geospatial portal, so no licence issues.

3 Likes

I use Robert’s UPRN viewing tool a lot, flipping between browser and JOSM is not an issue for me. Since Robert added the postcode to every UPRN completing addresses, without the house number, has become much easier.

I strongly recomend it for building outlines.

Some while back I started to develop a JOSM plugin to help with adding UPRNs. The code isn’t complete yet, but here’s a copy that you can use:

https://osm.gregorywilliams.me.uk/gb-uprn-merge.jar

Place this into your JOSM plugins directory (for me that’s ~/.josm/plugins/).
With the plugin loaded you’ll have two extra tools menu items, Download UPRNs and Merge UPRN. The former downloads the relevant rectangle(s) of UPRN points for the area you’re currently viewing in JOSM. These are visualised as:

  • White square - Single UPRN at this location, but not tagged on a way.
  • Orange square - Multiple UPRNs at this location (therefore treated as ambiguous by the plugin)
  • Green square - Single UPRN at this location, tagged on a way. This also shows a magenta line linking the square to the centre of the way that it’s tagged on.

With one or multiple ways selected, choosing Merge UPRN will add the ref:GB:uprn tags to those ways if:

  • They surround only a single UPRN
  • The way isn’t already tagged with ref:GB:UPRN

Obviously, only merge UPRNs if you’re confident that they’re the correct ones.

The plugin still needs a bit of polish, but I haven’t had the time recently to complete that. The downloaded data is currently a few months old – from June 2026, sourced from OS OpenData UPRN.

After a bit of screwing around in QGIS I was able to get it to display this crime against cartography by overlaying the OSMF Shortbread building layer (green) on top of the Postcode layer:

Apart from being a bit of an assault on the senses[1] I think it does highlight gaps in building coverage quite well even if it can only be seen at higher zooms.

I’d like to do a similar bodge in JOSM but I’ve not even managed to get the style shown on OSM.org to display. Has anyone had any luck getting the vector.openstreetmap.org tiles into JOSM?


  1. Sorry to anyone involved in creating the background layer. It didn’t deserve to be abused like this. ↩︎

2 Likes

Be warned that JOSM can only apply very basic styling to vector tiles. You need to create a style.json file and point it to that (Imagery layer > Add MVT > point to the style.json proceeding with file:// in place of https:// if the file is stored locally).

The style.josn file should include the rendering and the link to the vector tiles server. Look at my postcode example JSON if you want to understand the basics.

Note: I need to do more testing but I think JOSM cannot load vector tiles that are GZ compressed. Someone please shout if I am wrong. I also don’t think you can point to a mbtiles file in the style.json. It has to be to a regular z/x/y (or is it z/y/x) folder structure.

I should probably start a new thread for this but I tried using a local copy of svwd03style.json and also tried the copy of colorful that vector.openstreetmap.org is serving with both just showing a black screen.

Once I’d checked that something written by someone who knew what they were doing worked I was going to basically delete all the symbology that wasn’t the buildings and do a quick colour change.

Somewhat related - the equivalent documentation for Vespucci. When I last looked at that it didn’t fit my use case (for something else) but it’s possible it might fit here.

1 Like

I have one at UPRN Map. It’s not really production ready, but should be usable. It’s running on minimal resources, so I might need to adjust things if there is any significant usage.

I’ve disabled the refresh feature for the moment, as this queries overpass, and I don’t want to inadvertently create a vector to overburden overpass. I’ll see if I can add this back in safely at a later date.

1 Like

@SomeoneElse this is super helpful. Have you seen anything similar for JOSM? I ask because I am struggling with a new layer I am trying to create (postcode polygons). I am hoping it is user error on my part as it seems like taylorsmock (who did the initial MVT stuff in JOSM) may not be active anymore. If it’s not user error, then hopefully a different JOSM contributor can step in.

Once I have these two layers working, I plan to create a ticket for ID to see if I can get basic vector tile styling working there.

I’ve been trying to keep building=terrace cleaned up so as to only be for an actual terrace row, and not for individual houses (building=house, house=terraced for that). So if anyone wants to do some building splitting then finding building=terrace nearby should give you good candidates for that.

3 Likes

I did Tooting Common parkrun on Saturday and noticed afterwards that a lot of buildings need realignment, interpolation ways need to be checked and merged and gaps in building coverage filled. I’ll do something about that in the week.

That’s a nasty little nuance between terrace and terraced I’d not noticed. I went to check and fix some of my mapping to find you’d already fixed it.

Thank you.

2 Likes

I’ve been doing more residential boundaries as a novice mapper as I exhaust local streetcomplete tasks (mapping with iD, bing ariel images, preference for aligning with nearby mapped properties). I’ll try digesting the tips for the wiki linked in the OP, but if there are any additional related beginner guides to go on that page that would be great.