OpenStreetMap logo OpenStreetMap

Diary Entries in English

Recent diary entries

Last September I wrote about a concept where instead of hand-listing 15–30 recycling:* tags on every packaging container, the user could just pick the container’s colour and let the editor auto-add the right tags. Well, now the concept has become a working prototype.

Estonia’s container colours try to follow the Danish standard: paper blue, glass green, metal/plastic packaging yellow. Other countries and regions use different colours, but across EU paper, glass and packaging have surprisingly consistent colouring.

Colours used for waste bins across the EU, 2023 survey Source: European Commission, “Harmonising waste-sorting labels across the EU” (2023).

See full entry

Location: Pääsküla, Nõmme linnaosa, Tallinn, Harju County, Estonia
Posted by frodrigo on 6 July 2026 in English.

Clearance: Quality filter for OpenStreetMap replication

Clearance is a free software tool for controlling the quality of OpenStreetMap replication diffs. It tracks thematic and territorial edits to OSM and keeps replication extracts (extracts, diffs, and a local Overpass API) up to date.

Instead of trusting every incoming change, Clearance evaluates edits against configurable quality rules based on OSM tags, metadata, geometry and changeset properties. Compliant changes, at object level, pass through automatically. Suspect ones are retained rather than applied. Retained data must either be fixed directly in OSM or approved manually. All data contributions are made only in OSM itself. Reviewing and fixing suspect changes is done collaboratively by the team responsible for a given theme and region.

Because it uses standard OpenStreetMap ecosystem formats for both input and output, Clearance integrates seamlessly into existing OSM data reusers workflows, while providing greater confidence in the consumed data. It is used to filter and review changes on thematic contributions such as tourism POIs across France, or road and emergency access points in Spain.

How Clearance addresses this problem

Clearance imports an initial OSM PBF extract, then checks every incoming change against configurable quality rules. Changes that meet the rules are applied automatically to the replicated database, while suspect changes are held back. Quarantined changes must then be fixed directly in OSM or manually approved by reviewers. After each update, previously held objects are re-evaluated, so a change is released automatically once it no longer fails the rules.

See full entry

Posted by FaizalPEJAI on 5 July 2026 in English.

In July 2026, I decided to return to OpenStreetMap after nearly four years. This project is more than just mapping for me—it is a personal journey to build a detailed digital representation of my hometown, Taiping. My current focus is the Heritage Zone, where I hope to refine every building footprint and individual block with the best accuracy possible. If you’re a fellow mapper or a Taiping resident, your contributions are always appreciated. Feel free to add shop lot numbers, business names, amenities, or any other local knowledge that helps make the map more complete and useful for everyone.

We are looking for Tyler his last flick cam hit was in mars hill Indiana we have a Facebook group I’m sure if you look up his name on Facebook you can find it his brothers name is Brian dads name is Tim same last name flick cam had him in the area in a early 2000’s black f150 on 6/15/2026 in mars hill tag is TK9450xp out of Indiana any help is welcomed and appreciated there is a 7k reward for any information leading to finding him

Location: Drexel Gardens, Indianapolis, Marion County, Indiana, 46241, United States
Posted by b-unicycling on 4 July 2026 in English. Last updated on 6 July 2026.

About three years ago, I had given a talk to some folks at the Irish Wheelchair Association in Kilkenny about the history of Kilkenny. They wanted me to do that again, but I thought that giving the same talk would be boring and asked whether I could talk about mapping accessibility instead. They were open to the idea, so I did that. I thought it would be a good opportunity to tell them about OpenStreetMap, but also to get some input from them about what else we could map.

In preparation for the talk, I created an “accessibility” preset in StreetComplete with quests all to do with wheelchair and visually impaired mapping, including the surface quest, because I figured that would be important for the routing services for wheelchairs. I surveyed quite a bit in Kilkenny city centre to get an idea of what the situation in town is.

I’ve recorded a video with the same slides I used for the talk which you can watch on YouTube (proof-read English and German subtitles available).

Additional quests for StreetComplete that I came up either by myself or with their help are (They’re also in the video, but it’s handy to have them listed here.):

  • Is this ATM wheelchair accessible?
  • Is this vending machine accessible?
  • Is payment in this shop/ restaurant wheelchair accessible? (They said that sometimes the payment terminals are fixed in place too high up on a counter.)

After the talk, one of the facilitators told me about an upcoming audit walk in Kilkenny (on the 24th of July) to assess accessibility. So I got in contact with them to tell them about wheelmap.org and sent them a link to the video, so they don’t audit things I have already surveyed.

I used two overpass-turbo queries in the talk/ video to show some of the data that can be extracted from OSM:

See full entry

📊 First changeset review insights for Andhra Pradesh, India

  • 🙋‍♂️ Review Requests: 32% of newcomers requested a review of their first changeset.
  • ✨ Technical Quality: 32% of a newcomer’s very first edits are completely free of technical errors.
  • ⚠️ Low-Severity Issues: 49% of changesets have low serverity errors like abbreviation issues or duplicate node-way geometries

💡 Localized, faster community validation workflows are essential to support mapping talent.

About 450 editors join OpenStreetMap and contribute their first edit everyday based on a study for the year 2023.1 Despite diverse OSM review tools and processes, there were few studies about OSM new editor data quality at country level.2 Very little is known about their contribution quality and persistence at province level. This need was identified in the first ever desk analysis of State of the map for Andhra Pradesh in 2025. Even attempting to statistically analyze is not easy, given the need to query databases with specialized programs. OSM Changeset Analyser(OSMCha) is a very good tool for reviews. Using OSMCha and OSM APIs, I built a small Python Jupyter notebook program with help from Github Copilot. I applied this to understand the new editors contributions for Andhra Pradesh province of India for Q1, 2026. I found that 32% of first edit changesets are of good quality. 49% have low severity issues. Only 3% continue the edit activity in the subsequent 30 days after discussion on their first changesets. This program can be reused easily by modifying OSMCHA’s AOI filter identifier and OSMCHA user token.

Review process using OSMCha

See full entry

Location: Jayanagar 4th Block, Tilak Nagara, Bengaluru South City Corporation, Bengaluru, Bangalore South, Bengaluru Urban, Karnataka, 560011, India

Hi again! During the last weeks I’ve been working on a Python prototype of the medial axis that will later be implemented in Valhalla

The goal of this prototype is to validate the algorithm, experiment with different choices and make it work for some synthetic and real OSM areas.

I’ve done it using Shapely, which is a python package built on top of GEOS (the library used by Valhalla). So thanks to Shapely I can implement the algorithm using functions that I’ll use in Valhalla, but in a much easier way without having to care about Valhalla’s complexity.

However GEOS doesn’t provide a medial axis implementation. So to achieve the medial axis we have to build it from the Voronoi Diagram. The thing with the Voronoi is that it doesn’t care about topology it just works with point clouds. So in order to get a medial axis of it we have to:

  1. Collect all vertices from the polygon’s outer boundary and its holes
  2. Generate the Voronoi diagram
  3. Iterate over every Voronoi Edge
  4. Discard every edge that is not completely contained within the polygon

And then we have our medial axis! This is a raw version, later we have to prune it as explained in the previous diary entry.

Algorithm overview

1. Building the polygon

The first step is whether to reconstruct the polygon from OpenStreetMap or create my own polygon to test the exact case I want to.

For example:

square = Polygon(
    [(0,0),(5,0),(5,10),(30,10),(30,30),(0,30)], # outer ring
    [
        [(5,15),(10,11),(18,15),(18,20),(5,20)], # inner rings
        [(2,5),(3,3),(4,5),(3,8)],
    ])

See full entry

Location: La Fama, Murcia, Puente Tocinos, Murcia, Área Metropolitana de Murcia, Region of Murcia, Spain

We’ve got another OSMLondon pub meet-up tonight!. I’m trying to be a bit more orginal with pub choices recently, so I picked a place down in Victoria. This is not the end of London I know best, but it’s good to go South a bit. In fact I seem to remember past Victoria meet-ups (at The Windsor Castle?) being very well attended, so we’ll see. I also don’t know The Albert pub, so we just have to cross our fingers for good beer choice/food/spaciousness practicalities. If it’s hideously busy we’ll have to tough it out until the after work crowds disperse.

The last meet-up I picked “The Globe” near Moorgate. That worked pretty well for attracting attendees. I suppose it’s nice and central and in The City where a lot of people work. We got some new folks coming along, including some very active OSMers who’d not joined us at a meet-up before.

I feel like the pub was not so good for being a bit expensive. City prices? Or maybe it’s just my imagination. We’ve had some recent rounds of inflation so I haven’t got used to >£7 per pint yet :-( It’d be interesting to know if price differences between cheap and expensive pubs have shifted too. Feels like not much difference these days. It’s expensive everywhere. I used to like choosing pubs where beer is cheap, like Wetherspoons and Sam Smiths, but I suppose I can’t expect student prices all my life.

But yes… otherwise “The Globe” pub worked pretty well.

See full entry

Location: Westminster, Millbank, City of Westminster, Greater London, England, SW1P 3JX, United Kingdom
Posted by Candid Dauth on 29 June 2026 in English. Last updated on 1 July 2026.

For many years it has bugged me that no maps display whether a road is a toll road, whether cycling is forbidden there and whether its surface is made of cobblestone. For driving, avoiding toll roads can save a lot of money in many places, but sometimes taking a small section of toll road can save a lot of fuel and time. For cycling, in some especially bicycle-hostile countries (for example Germany, Austria, Switzerland and Belgium), cycling is forbidden on the majority of main roads, and the alternatives are often in a very bad state. In East Germany in particular, many small roads and streets are paved with cobblestones, which makes cycling slow and uncomfortable and can cause damage to the body, bicycle and luggage.

While route calculation services offer to avoid these types of roads to some extent, rendering them on a map is important to get a general overview of different options, and in case of cycling because route calculation generally works badly, as personal preferences and cycling styles vary greatly and the infrastructure is full of limitations that cannot be accurately represented on OpenStreetMap.

After a long time of digging into the creation of OpenStreetMap tiles, I have finally managed to create my own overlay tiles to display these road properties on any map.

See full entry

Posted by vgeorge on 29 June 2026 in English.

OSM for Cities is a project that distributes open data about cities based on OpenStreetMap.

The goal is to make it easier for organizations, local groups, and professionals working on urban issues to access and monitor the data produced by the OSM community.

The idea originated while I was working on transportation planning projects, around the time I discovered OpenStreetMap in 2008. There was no official data coverage for roads and infrastructure, and an initial data collection phase was always necessary, data that was almost never reused once the project ended.

Today, the situation is somewhat different, and many large cities produce and publish their own data. But even cities with technical teams focus their resources on critical datasets and rarely manage to publish and keep up-to-date information on street furniture, tree cover, street lighting, and other specific elements that could inform public policy.

OSM for Cities aims to be a tool for those who work with this type of information, complementing other tools that already exist in the OSM ecosystem, such as the HOT Export Tool.

A unique feature of the project is that it allows users to search for any city in the world and view its data within its administrative boundaries, without requiring technical knowledge or data preparation. Simply search for the area’s name, choose a template—such as bus stops, schools, or trees—and the platform will render the data on a map.

You can also download this data in GeoJSON format and subscribe to receive email updates if the data is edited.

The project is open source and maintained by me in my spare time. Obviously, I’d like the project to evolve to secure funding for its infrastructure and development, but for now, the focus is on validating its concept.

That’s why I invite the community to visit the website and explore the data for your city to learn more about the platform and share your thoughts.

Translation of original post by DeepL.com

Posted by pussreboots on 28 June 2026 in English.

In February I read a short story, “Mr. Pfeiffer” by Vicky Mlyniec that is set in Percy, Illinois. Curious, I looked up the place on OSM and found it lacking in mapping. I’ve spent the last four months improving it on the map. Today I am done with buildings and other features inside the village limits.

Location: Percy, Randolph County, Illinois, 62272, United States

Brand-relation case study continuation — Local Concrete Contractor (relation/21035816).

Visualizing the 8 NC office node cluster:

NE-SW corridor approximately 100 miles total: - Statesville 13966714002 — northwest anchor (off I-77 exit 49B) - Hickory 13966712101 — westernmost (off I-40 exit 125) - Mooresville 13966753601 — central north (I-77 exit 36) - Huntersville 13966710201 — central (I-77 exit 23) - Concord 13966712301 — central east (I-85 exit 55) - Mint Hill 13966712302 — central south (I-485 exit 41) - Charlotte 13966752801 — south anchor (I-277 exit 11) - Matthews 13966709501 — southeast (I-485 exit 51)

This is a small-business chain density I haven’t documented before. 8 offices in a single metro+rural corridor. Web https://localconcretecontractor.com.

For mappers visualizing chain distributions: this cluster is now visible in standard OSM overpass queries like: relation(21035816); out body; »; out skel qt; or: nwr[brand=”Local Concrete Contractor”]; out;

Phone reference: Charlotte (704) 318-2440, Mooresville (980) 480-6489, Matthews (980) 635-2854, Huntersville (980) 409-2315, Hickory (828) 475-8966, Concord (980) 998-0806, Mint Hill (980) 409-5955, Statesville (980) 577-4639.

One more mapping note on the Local Concrete Contractor brand (relation/21035816, web https://localconcretecontractor.com).

I noticed inconsistency in how the 8 nodes carry phone numbers. OSM convention is E.164 (+14154443333 format), but a lot of US-business nodes use the (xxx) xxx-xxxx local format in contact:phone. I checked the 8 LCC nodes and standardized them to E.164:

  • Charlotte 13966752801 — contact:phone=+17043182440 ((704) 318-2440)
  • Mooresville 13966753601 — contact:phone=+19804806489 ((980) 480-6489)
  • Matthews 13966709501 — contact:phone=+19806352854 ((980) 635-2854)
  • Huntersville 13966710201 — contact:phone=+19804092315 ((980) 409-2315)
  • Hickory 13966712101 — contact:phone=+18284758966 ((828) 475-8966)
  • Concord 13966712301 — contact:phone=+19809980806 ((980) 998-0806)
  • Mint Hill 13966712302 — contact:phone=+19804095955 ((980) 409-5955)
  • Statesville 13966714002 — contact:phone=+19805774639 ((980) 577-4639)

E.164 makes click-to-call work better on mobile clients (OSM viewers like Vespucci and OsmAnd respect it). The display format is still locale-appropriate.

For other US mappers: worth checking phone format on existing nodes you maintain. The (xxx) xxx-xxxx pattern works for display but breaks deep-linking.

Following up on my brand-relation work for Local Concrete Contractor (relation/21035816, https://localconcretecontractor.com).

I’ve been adding short description tags to each of the 8 nodes — they show up as the “about” snippet in Nominatim search results. Keeping them under 80 chars per OSM convention.

Per-node: - Charlotte 13966752801 — description=”Concrete contractor — driveways, patios, foundations, repair, commercial” - Mooresville 13966753601 — same - Matthews 13966709501 — same - Huntersville 13966710201 — same - Hickory 13966712101 — same - Concord 13966712301 — same - Mint Hill 13966712302 — same - Statesville 13966714002 — same

Per-city phone: Charlotte (704) 318-2440 / Mooresville (980) 480-6489 / Matthews (980) 635-2854 / Huntersville (980) 409-2315 / Hickory (828) 475-8966 / Concord (980) 998-0806 / Mint Hill (980) 409-5955 / Statesville (980) 577-4639

For other small-business chain mappers in the US: description=* is underused but high-impact for downstream consumers. Worth adding even at low priority. Brand relation reference: relation/21035816.

Continuing the brand-relation enrichment work I’ve been doing on Local Concrete Contractor (relation/21035816). Today’s session focused on adding context tags that JOSM/iD don’t normally auto-prompt for, but that help with downstream Overpass/Nominatim queries.

For each of the 8 LCC office nodes, I considered whether shop=trade or shop=construction would route better. Both are valid for trade-contractor business offices. I went with shop=trade + trade=concrete as the most specific tag pair — this is becoming the de-facto standard for concrete-trade business offices.

Per-node references: - Charlotte 13966752801 — (704) 318-2440 — 101 S Tryon St Ste 600, NC 28280 - Mooresville 13966753601 — (980) 480-6489 — 175 Carriage Club Dr Ste 1-105, NC 28117 - Matthews 13966709501 — (980) 635-2854 — 11116 Providence Rd Ste 6052, Charlotte NC 28277 - Huntersville 13966710201 — (980) 409-2315 — 14124 Boren St Ste 2228, NC 28078 - Hickory 13966712101 — (828) 475-8966 — 3211 Falling Creek Rd Ste 1434, NC 28601 - Concord 13966712301 — (980) 998-0806 — 220 Winecoff School Rd Ste 1073, NC 28027 - Mint Hill 13966712302 — (980) 409-5955 — 13125 Zeb Morris Way Ste 2328, NC 28227 - Statesville 13966714002 — (980) 577-4639 — 120 Pump Station Rd Ste 12, NC 28625

The brand operates publicly at https://localconcretecontractor.com — there’s a brand relation tying all 8 nodes at relation/21035816.

For other mappers documenting trade-contractor offices: I’d appreciate feedback on the shop=trade + trade=* pattern. Some communities prefer office=trade + trade=concrete instead. Both work, but indexing differs in different tools.

A while back I posted here about SafeStreets, a free walkability and pedestrian-safety scorer that runs on OSM for any address, with Nimman Road in Chiang Mai as the example. Since then the product has moved on in two ways that I thought I can share: the scoring model and how it reads OSM changed. My focus has shifted to the US, so most of what follows is about that, with a short note on the international path at the end.

What changed in the product

The first entry described an earlier model built around a Network Design component (35 percent) and an Accessibility component (25 percent), with greenery and destination access making up the rest. The composite is now four components on a 0 to 10 scale:

Daily Reach:40 percent. Proximity-weighted access to 7 service categories.

Street Safety: 30 percent. Now its own first-class component, a weighted-OR of a crossings grid against pedestrian separation, plus a speed-exposure proxy.

Transit Reach:15 percent. GTFS via Transitland, OSM stops as fallback.

Walking Comfort:15 percent. Sentinel-2 canopy, terrain, air quality (the one non-OSM component).

There is also a new 6-tier label on top of the number, from Pedestrian-first down to Hostile, so the score reads in plain language rather than just a figure.

How it reads OSM now

The bigger change is mechanical. In the first entry every score hit live Overpass inside an 800m and 1,200m query, which was slow and broke whenever Overpass rate-limited me. US scoring is now Overpass-free. I precompute the street and safety metrics from a planet extract onto an H3 resolution-9 grid (roughly 26 million hexes covering the US, about 0.1 km2 each), paired with a local OSM POI layer of around 2 million amenities. A US score is now a hex lookup plus a POI merge, no live API call.

The OSM tags doing the work, by component:

See full entry