OpenStreetMap User's Diaries
Cleaning up Golf Courses in the United States
Written 2025-10-30… Published 2026-11-03
About three years ago, during my day-to-day mapping activities, I came across a golf course that had some obvious errors. I didn’t think much of it at the time. Just a fairway that was drawn right across the top of a green. But the more golf courses I looked at, the more frequently I encountered this error.
I soon learned about a golf cour
Written 2025-10-30… Published 2026-11-03
About three years ago, during my day-to-day mapping activities, I came across a golf course that had some obvious errors. I didn’t think much of it at the time. Just a fairway that was drawn right across the top of a green. But the more golf courses I looked at, the more frequently I encountered this error.
I soon learned about a golf course simulator video game that was built on OpenStreetMap data and was attracting a large influx of simulator enthusiasts who weren’t seasoned OSM mappers. Along with that came various tools to aid in converting OSM data into these simulators, as well as tutorial videos that made some very bad assumptions about how golf courses should be mapped. These factors set the stage for some very bad mapping practices to spread around the world.
My understanding is that attempts were made to correct these bad habits at the source, but the tutorial author wasn’t interested in revising or removing his video. Combine that with YouTube’s bad decision to hide down votes on videos, and you’re left with de facto training material that is widely disliked but that new golf course mappers have no way of knowing is a poor source of truth.
So this is where I come on the scene and try to make the map better.
I’m a big fan of the broken windows theory. I’ve seen it play out in my own town. A minimally maintained but abandoned pizza parlor near me stood for years waiting for a new occupant to lease it. You’d see prospective tenants touring it every once in a while, but no takers. Eventually, someone tagged the building with graffiti. It wasn’t cleaned up in a timely manner, and things spiraled downward from there: more graffiti, broken windows, stolen copper, garbage left behind by homeless people, and eventually, the building was razed.
I saw similarities with golf courses. This broken “style” of drawing a fairway, intersecting the green, crossing over it, and then intersecting the green again on the way out to the rest of the fairway was becoming commonplace. I fixed one, then another, and another. I thought about contacting the original mappers and educating them, but these were often edits made years ago, and the mappers were probably no longer active.
This is when I came up with my “Broken Greens Theory.” Any green that was “broken” could lead to more greens being “broken” when someone stumbled upon it and thought, “Oh, so that’s how you map a fairway and a green together.”
Any corrections would need to be made soon after the error was introduced, while the edits were still fresh, the mapper was possibly still active, and the damage was limited in scope. At the same time, existing errors would have to be fixed as well, or we’d never reach a point where people weren’t learning bad practices from the existing maps.
I’ve learned a lot over the last three years working on this project, from editing techniques in JOSM (even though I was already well-versed in its use) to spatial database queries. One of the neatest things I learned was about the Dimensionally Extended 9-Intersection Model and how it could be used to query for specific ways that fairways intersected with greens.
I figured out how to construct PostGIS SQL queries to identify all of these intersections and was shocked to find well over 20,000 of them in the United States. I put together tools to group these intersections and feed them, course by course, into JOSM to be manually edited and saved back out.
At the start of the year, I set a goal of fixing this one specific type of golf course error by the end of the year. As I progressed through the year, the number of remaining fixes dropped, and it looked like I was on track. Then I started noticing some intersections on nearby holes, close to ones I was already working on, that hadn’t been caught. Uh oh.
My query only caught intersections where the fairway line crossed into the green and then back out. It wasn’t catching cases where the fairway shared a node with the green, followed the green for one or more nodes, and then crossed into and back out of the green. I was disheartened to revise my query and discover that several thousand more pairs with this slightly different intersection pattern had been overlooked.
I doubled down on my efforts and increased my daily goal. A few months later, I discovered yet another type of mapping error. Some fairways shared every single point as they went around the outside of the green, where a green’s fringe would normally exist.
So I repeated my routine: fixing the query, being disheartened by the discovery of thousands more errors, and redoubling my efforts to get the job done by the end of the year.
Along with all of these edits, when my wrists could no longer take the repetitive strain for the day, I would work on developing more tools to download daily map diffs for the entire globe.
Things are different in the diff world, no pun intended. You can’t simply load diffs for the United States into the database and query them. But I wrote some code to process the XML stream and handle the unusual way that changes are grouped together. I developed tools that would examine changes to golf courses in the target area of the United States, load only those changes into my database along with nearby data, test the new edits for errors, and generate a “report” of edits that warranted further investigation by hand.
Since the start of the year, I’ve identified about 300 cases of people making “bad” edits that were significant enough that I felt reaching out and working with the mapper to correct their behavior would benefit the community.
The first thing I discovered is that changeset comments are almost useless. I’m guessing that over 90% of them are completely ignored. It’s unclear whether they were even read in the first place. I’d love to see someone put together a study on the effectiveness of changeset comments, especially when directed at newer or “drive-by” mappers.
I started requesting blocks for some of these repeat offenders from the Data Working Group and had some success getting their attention through that method. However, some mappers were combative and felt that OSM needed to bend to their will. They were challenging conversations, to say the least.
Over time, I’ve learned that messaging a mapper directly has a much better ROI, but still nowhere near 100% effective. I believe they see the unread message count and are more likely to click on it than to check for changeset comments in an email inbox that they probably use only for spam.
As the year went on, I started seeing fewer and fewer of these fairway/green intersections. Possible explanations include there being fewer courses left to map from scratch, or perhaps it’s the weather, as the season changes and people spend less time mapping. It will be interesting to see how the numbers change over the next year.
With these two approaches to tackling the problem (fixing existing issues and finding new ones), I’ve finally finished fixing every single fairway/green intersection in the United States.
I estimate that I’ve fixed over 30,000 fairways over the past few years. I consider that a big success, and I hope that ongoing maintenance will be quick and manageable.
Written 2025-10-30… Published 2026-11-03
About three years ago, during my day-to-day mapping activities, I came across a golf course that had some obvious errors. I didn’t think much of it at the time. Just a fairway that was drawn right across the top of a green. But the more golf courses I looked at, the more frequently I encountered this error.
I soon learned about a golf cour
Written 2025-10-30… Published 2026-11-03
About three years ago, during my day-to-day mapping activities, I came across a golf course that had some obvious errors. I didn’t think much of it at the time. Just a fairway that was drawn right across the top of a green. But the more golf courses I looked at, the more frequently I encountered this error.
I soon learned about a golf course simulator video game that was built on OpenStreetMap data and was attracting a large influx of simulator enthusiasts who weren’t seasoned OSM mappers. Along with that came various tools to aid in converting OSM data into these simulators, as well as tutorial videos that made some very bad assumptions about how golf courses should be mapped. These factors set the stage for some very bad mapping practices to spread around the world.
My understanding is that attempts were made to correct these bad habits at the source, but the tutorial author wasn’t interested in revising or removing his video. Combine that with YouTube’s bad decision to hide down votes on videos, and you’re left with de facto training material that is widely disliked but that new golf course mappers have no way of knowing is a poor source of truth.
So this is where I come on the scene and try to make the map better.
I’m a big fan of the broken windows theory. I’ve seen it play out in my own town. A minimally maintained but abandoned pizza parlor near me stood for years waiting for a new occupant to lease it. You’d see prospective tenants touring it every once in a while, but no takers. Eventually, someone tagged the building with graffiti. It wasn’t cleaned up in a timely manner, and things spiraled downward from there: more graffiti, broken windows, stolen copper, garbage left behind by homeless people, and eventually, the building was razed.
I saw similarities with golf courses. This broken “style” of drawing a fairway, intersecting the green, crossing over it, and then intersecting the green again on the way out to the rest of the fairway was becoming commonplace. I fixed one, then another, and another. I thought about contacting the original mappers and educating them, but these were often edits made years ago, and the mappers were probably no longer active.
This is when I came up with my “Broken Greens Theory.” Any green that was “broken” could lead to more greens being “broken” when someone stumbled upon it and thought, “Oh, so that’s how you map a fairway and a green together.”
Any corrections would need to be made soon after the error was introduced, while the edits were still fresh, the mapper was possibly still active, and the damage was limited in scope. At the same time, existing errors would have to be fixed as well, or we’d never reach a point where people weren’t learning bad practices from the existing maps.
I’ve learned a lot over the last three years working on this project, from editing techniques in JOSM (even though I was already well-versed in its use) to spatial database queries. One of the neatest things I learned was about the Dimensionally Extended 9-Intersection Model and how it could be used to query for specific ways that fairways intersected with greens.
I figured out how to construct PostGIS SQL queries to identify all of these intersections and was shocked to find well over 20,000 of them in the United States. I put together tools to group these intersections and feed them, course by course, into JOSM to be manually edited and saved back out.
At the start of the year, I set a goal of fixing this one specific type of golf course error by the end of the year. As I progressed through the year, the number of remaining fixes dropped, and it looked like I was on track. Then I started noticing some intersections on nearby holes, close to ones I was already working on, that hadn’t been caught. Uh oh.
My query only caught intersections where the fairway line crossed into the green and then back out. It wasn’t catching cases where the fairway shared a node with the green, followed the green for one or more nodes, and then crossed into and back out of the green. I was disheartened to revise my query and discover that several thousand more pairs with this slightly different intersection pattern had been overlooked.
I doubled down on my efforts and increased my daily goal. A few months later, I discovered yet another type of mapping error. Some fairways shared every single point as they went around the outside of the green, where a green’s fringe would normally exist.
So I repeated my routine: fixing the query, being disheartened by the discovery of thousands more errors, and redoubling my efforts to get the job done by the end of the year.
Along with all of these edits, when my wrists could no longer take the repetitive strain for the day, I would work on developing more tools to download daily map diffs for the entire globe.
Things are different in the diff world, no pun intended. You can’t simply load diffs for the United States into the database and query them. But I wrote some code to process the XML stream and handle the unusual way that changes are grouped together. I developed tools that would examine changes to golf courses in the target area of the United States, load only those changes into my database along with nearby data, test the new edits for errors, and generate a “report” of edits that warranted further investigation by hand.
Since the start of the year, I’ve identified about 300 cases of people making “bad” edits that were significant enough that I felt reaching out and working with the mapper to correct their behavior would benefit the community.
The first thing I discovered is that changeset comments are almost useless. I’m guessing that over 90% of them are completely ignored. It’s unclear whether they were even read in the first place. I’d love to see someone put together a study on the effectiveness of changeset comments, especially when directed at newer or “drive-by” mappers.
I started requesting blocks for some of these repeat offenders from the Data Working Group and had some success getting their attention through that method. However, some mappers were combative and felt that OSM needed to bend to their will. They were challenging conversations, to say the least.
Over time, I’ve learned that messaging a mapper directly has a much better ROI, but still nowhere near 100% effective. I believe they see the unread message count and are more likely to click on it than to check for changeset comments in an email inbox that they probably use only for spam.
As the year went on, I started seeing fewer and fewer of these fairway/green intersections. Possible explanations include there being fewer courses left to map from scratch, or perhaps it’s the weather, as the season changes and people spend less time mapping. It will be interesting to see how the numbers change over the next year.
With these two approaches to tackling the problem (fixing existing issues and finding new ones), I’ve finally finished fixing every single fairway/green intersection in the United States.
I estimate that I’ve fixed over 30,000 fairways over the past few years. I consider that a big success, and I hope that ongoing maintenance will be quick and manageable.
OpenStreetMap Blogs



Photo by 









