If I tag a structure with shelter_type=picnic_shelter, does it imply there is a picnic table, or do I need to add a separate POI for the picnic table? The wiki is not clear on this.
I think a picnic shelter is a picnic table with a roof on it. That the wiki doesn’t mention it is maybe because it’s obvious? See the picture on the wiki.
Description of shelter_type=picnic_shelter is “A structure on picnic sites to protect from rain.”
There’s no mention on the OSM Wiki that shelter_type=picnic_shelter automatically implies the presence of a picnic table.
It’d be helpfull to add on the Wiki whether shelter_type=picnic_shelter should imply picnic_table=yes or perhaps even bench=yes.
I just want to point out that not all picnic tables with a roof over them are picnic shelters.
On leisure=picnic_table you can see covered picnic table.
I don’t think it’s shelter_type=picnic_shelter because the roof is attached directly to the picnic table and only part of the area around the table is protected from the rain.
Unlike shelter_type=picnic_shelter, where the roof is a separate structure, allowing one to move freely beneath the roof.
If you’re micromapping, and it is somewhat bigger picnic shelter, you can create picnic shelter as an area, and add picnic tables as nodes inside it (with their own property tags, i.e. whether the bench has backrest, what material it’s made of, color etc), add wastebaskets / water source nodes inside etc.
For smaller ones (i.e. just covered single picnic table) - and especially if you’re not that much into micromapping - you can alternatively simply map a node as leisure=picnic_table and add covered=yes, which is what I actually usually prefer (StreetComplete app also will ask for picnic tables if they’re covered or not).
I’ve switched off that quest because I found that if a picnic table is covered, it’s always (so far) tagged as a picnic shelter.
Yeah, the list of quests in StreetComplete is configurable for that very reason, so people can disable things they don’t want to bother solving (for whatever reason). In my country, some (estimated) 15% leisure=picnic_table would be covered=yes, so I keep solving that StreetComplete Quest. YMMV of course!
(just be aware that you’ve disabled more than just picnic shelters)
If there is anything to be learned from OSM, it is that the more obvious the thing is, the bigger the need to explicitly state it in the wiki when drafting the tag. ![]()
Note that that wiki does state other quite obvious things (e.g. that “picnic shelter” is situated in “picnic” sites, and that this “shelter” is a “structure” that “protects from rain”), so failure to mention that far less-obvious assumption[1] might indicate that it was not implicit after all.
In any case, note that some (smaller) percentage of shelter_type=picnic_shelter are additionally tagged with bench=no or picnic_table=no, so for some mappers at least it is not “obvious” that picnic shelter would include those ![]()
TL;DR: My main point was that leisure=picnic_table + covered=yes is often easier and less ambiguous / more robust and certainly cleaner and faster solution then the alternative of using amenity=shelter + shelter_type=picnic_shelter (and then adding yet extra tags and/or separate elements to confirm the existence of a picnic table).
(not that I meant to imply that one has to do it that way, just that some might want to consider that alternative…)
i.e. that it implies existence of the table and a bench ↩︎
I was a bit confused about the two parallel tags for picnic shelter and covered picnic table, but looking at the sample pics in the wiki makes it quite clear that these are different object.
Same here but I started to change it when I happen to pass one on the ground and verify it is a covered picnic table.
I tend to agree on that and it might be better to add bench=* and picnic_table=* to make it clear. Even though as a data consumer I would assume, those exists if those tags are missing.

