It appears that many ways have been tagged with “destination=*” although they are not oneway streets. This means that it is not clear if the destination is reached by following the way forward or backward.
Using overpass I found almost 3000 instances of this worldwide. Definitely more than I can fix on my own! The following overpass query finds such bugs in your area (zoom to your area first):
[out:json][timeout:25]; way["destination"]["highway"][!"oneway"][!"junction"][!"waterway"]({{bbox}}); out geom;
I’ve excluded “junction” ways (to ignore roundabouts) and “waterway” ways (because their destination tag, if any, is not an issue).
Some ideas for fixing tagging mistakes:
If the way is connected to a oneway way with the same destination, coming from a junction, then you can probably delete the “destination” tag from the non-oneway street. The oneway way already provides all relevant destination information for drivers crossing the junction.
Otherwise check where the way goes. Typically, “destination” can be replaced either with “destination:backward” or “destination:forward”.
If “destination:ref” exists, it typically should be changed to “destination:ref:forward” or “destination:ref:backward”. Other subtags might have to be changed, too: “destination:colour”, “destination:symbol” etc.
“destination=yes” might be corrected to “motor_vehicle=destination”, “vehicle=destination” or similar. (“access=destination” is unlikely to be appropriate, see Tag:access=destination - OpenStreetMap Wiki .)
Please let me know if you find strange examples that need to be treated differently.
Thanks, I suppose that any man-made objects are not so relevant and the search can focus on highways. I’ll edit the overpass query in my original post.
One more observation: iD appears to ask users to enter a destination tag, but does not offer to set the forward or backward modifier. Maybe iD should highlight the error and prompt users to fix it appropriately.
I would treat the Overpass result as a review queue rather than an automatic cleanup. A two-way way can still carry a destination if the sign applies to one approach, especially near a junction or a lane split, so I would check the sign and the way’s direction before removing anything. It may be clearer to split the way at the decision point and put the destination on the affected segment; if the value applies only in one direction, use the directional form consistently with the surrounding mapping. For large batches, I’d make small changesets with an explicit comment and sample the edited ways afterward so a valid local sign pattern is not erased worldwide.