OpenStreetMap logo OpenStreetMap

Removing spam from OpenStreetMap: What is anti-SEO aktion?

Posted by Allison P on 27 March 2025 in English. Last updated on 3 May 2025.

What is anti-SEO aktion?

Maybe you’ve seen one of my changeset comments reading “anti-SEO aktion”. Maybe I even reverted your changes in a changeset with that comment. You might be wondering, what does it mean?

Well, I hope “anti-SEO” is clear enough. OpenStreetMap is not a platform for boosting your online presence. Your OpenStreetMap listing, in all likelihood, does very little to improve your rankings. If the marketing agency you hired is improving their listing here, you ought to find one that used more evidence-based SEO practices.

And what of “aktion”? It’s a play on Antifaschistische Aktion, which was an anti-Nazi resistance effort in Weimar Germany. It’s not a political statement, per se. It’s just a bit of fun with changeset comments.

How do I get involved?

Any experienced mapper probably knows what belongs in OpenStreetMap and what doesn’t. For those who don’t, here are the general steps involved in fixing spam within the U.S. While following all of them isn’t necessary, it’s the best way to turn SEO efforts into a real business listing that improves the map.

  1. Check if the feature was placed onto an existing feature, such as a node being added to a highway or a highway being renamed. If so, revert and you’re done.
  2. Check if the tags used follow OSM schema. If not, revert and you’re done.
  3. Check if the location is correct. If not, revert and you’re done.
  4. Check if description reads like ad copy or doesn’t provide any useful, objective information not already present in the tags. If so, delete the description. 99 percent of the time, there’s probably no need for any sort of description.
  5. Check addr:* tags.
    1. Is addr:street spelled out in full, matching the nearby road? If not, fix it. If it contains a suite number, remove it and put just the number in addr:unit.
    2. Does addr:housenumber contain any sort of unit number? Move it to addr:unit.
    3. Does addr:city match the surroundings?
    4. Is addr:state the two-letter postal abbreviation for the state? If spelled out, improperly lowercase, or abbreviated some other way, fix it.
    5. Is country in use? The tag is sometimes confused with addr:country. I generally avoid this tag because I don’t believe it to be very useful. Either remove it or fix it.
  6. Is name correct? If it’s a title you wouldn’t use casually, it’s probably incorrect.
  7. Is operator correct? It shouldn’t match the name. It probably shouldn’t contain titles or credentials, either.
  8. Is phone correct? In the US, phone numbers are often displayed without the country code and with the area code in parentheses. Make sure the number is in +1-area_code-exchange-local_number format.
  9. Is wikidata correct? Some spammers have taken to adding this tag to features to make them harder for iD users to delete. If this tag is present, verify that the identifier is correct. For example, you might spot the wikidata item for dentist present on a dentist office, which is incorrect.
  10. Ditto for wikipedia.
  11. Is website correct? It should not contain any tracking codes and should lead to a location-specific page. In the case of a chain, you don’t want the website to lead to a corporate homepage. Sometimes, the best you can do is a list of locations in a state. The best way to fix the website is to navigate to it, go into the address bar and hit “select all”, then copy that. This ensures the protocol and www prefix are included. This also avoids any redirects. While on the website, it also helps to check that the business details match up with the OSM feature.
  12. Are there any extraneous tags on the feature? A common one is Category. Remove them, potentially adding that information through an appropriate tag.
  13. Does the feature have any descriptive tags, and are they correct? For example, office=yes gets used generically, and isn’t very useful. Try to find out more about the business to come up with a more appropriate tag, or invent your own. Similarly, recognized keys may be used improperly. This is where iD comes in handy with its presets for things like healthcare and car repair specialties. Check the presets to see if any values can be replaced with more widely used ones. Generic values that add nothing (like healthcare:specialty=dentist when a feature is already tagged with healthcare=dentist) should be removed.
  14. Are payment method tags used correctly? This is another case where iD’s presets are useful. For example, some features may be tagged as accepting “financing” as a payment method, which isn’t recognized. Alternatively, some payment methods could be improperly abbreviated, e.g., amex for american_express.
  15. Is the image tag an actual image of the feature? SEO spammers often use it for a logo, which is not the intended usage. If it’s on an image hosting site or CDN, that’s a red flag. If it’s a photo on Wikimedia Commons, it’s more likely to be an image of the feature.
  16. Is opening_hours properly formatted? There are a lot of nuances to this tag that I can’t properly capture here. The main issues I see on spam listings are three-letter day abbreviations, use of AM and PM, spaces around hyphens, specifying days as being closed rather than leaving them out, and commas instead of semi-colons.
  17. Does the business really physically exist? Some businesses use a virtual address service, such as virtualaddress.com, to receive mail. These do not belong in OSM. A major red flag is the use of a unit number in a building with distinct address numbers.

Finding SEO spam

Section under construction! In the meantime, I welcome all tips you may have.

I have two main techinques for finding spam. The primary one is monitoring new features tagged with description. The second one is subscribing to the RSS feed of U.S. changeset comments.

There is potential to use a large language model here to analyze all changeset comments and look for generic changeset comments like “Updated” (seemingly used by particular spammers), changesets by usernames that sound like business names, or obvious ad copy. I’ve yet to try this out for myself, but it’s on the docket as I try to understand how much spam actually gets added to the platform.

Conclusion

There are many different tagging mistakes made by spammers, and doubtlessly this is far from an exhaustive list. If you’ve noticed any other commonalities between spam listings and/or suggestions for detecting and fixing them, leave a comment.

If you’d like to keep up-to-date with my efforts to remove spam, here’s a filter.

Here’s to wiping spam off the map, wherever it may take hold!

Email icon Bluesky Icon Facebook Icon LinkedIn Icon Mastodon Icon Telegram Icon X Icon

Discussion

Comment from Friendly_Ghost on 28 March 2025 at 11:25

Thank you for helping with the removal of spam on OSM. Here’s an older discussion about the same topic, including methods to detect the SEO spam: https://community.openstreetmap.org/t/seo-spam-edits-mystery/110302

Comment from Le_Sharkoïste on 28 March 2025 at 16:10

What about the description?

One time -out of sheer boredom- I wandered in the last few pages of the description=* tag on Taginfo …and I was met with an absolutely crazy description (which I’ve reverted since then), for a beauty salon that supposedly does pedicures, “medical spa services”, and even “breast enlargement” worded in a less appropriate way (I wish I was making this up)

What irks me is that not only is it a nightmare for screen readers (the emojis don’t help), but it feels copied from somewhere else; and why bother contacting the author about it since they’ve made a whopping 1 changeset in 2+ years

Link (v1): osm.org/node/11013743642/history

Comment from Allison P on 28 March 2025 at 16:48

@Le_Sharkoïste I’ll have to suggest that you don’t look up “yoni steaming”, then.

That safely falls under the wholesale territory of spam. Three separate features, no descriptive tags, node on highway. Just nuked it.

Comment from Glassman on 28 March 2025 at 16:56

The NeisBot account of Pascal Neis seems to be identifying SEO edits. Having a tools that could accurately flag SEO edits that are being done without following the Organized Editing Guidelines would be nice. Then those edits could be reverted until the SEO complies with our requirements. For now, I’d be happy if someone could identify those SEO edits that use a user name similar to the company being added so they could be reverted.

Is there a publication that SEO firms read? We could write an article explaining how we plan to revert any unauthorized SEO edit will just be reverted. I used to know someone who worked for an SEO in Seattle, but that was so long ago that the contact info is lost.

Comment from skquinn on 1 April 2025 at 09:43

Occasionally rubbish/ad copy makes its way into the note=* tag as well. In the past, if something looked spammy enough I would just delete it, especially if there’s no address. Lately I at least try to salvage what I can.

Log in to leave a comment