Tagging of sois as service roads

Hello there

So far, I have been tagging Sois as service roads. With sois, I mean in this context the “real” sois, not the roads that have soi in their name and are otherwise like other streets, possibly even with multiple lanes.

I mean those sois that are so narrow that mainly only pedestrians and motorbikes are going through there; the only cars entering these sois, if it is at all possible, will be the cars of those who have their house there, effectively using it as a driveway to their garage.

Here an example of such a soi:

These sois are definitely not the typical residential road as they are somewhere between a footpath and a street. That should definitely reflect in the rendering as cars will normally not want to go into these streets. I used the service tag mainly because these sois are like alleys / driveways.
But I also tagged “larger” sois as service roads. These do not really fall into the category of alleys anymore (or well, that is the question here) but I felt the need to differ between a “main” residential road of a residential area (which is not an unclassified) and all the small dead-end-streets between the houses branching of that road.

Here is a fine example of this kind of setup:

Now, while reading the forum, I had the feeling that most agree that (those) sois should be tagged as residential generally. I’d like to put that to discussion.


If you write “that should reflect in the rendering” you are close to “tagging for the renderer”.

A road where people have their house to live in is clearly a residential road as of the wiki definition of “highway=residential”:
"residential - street or road generally used only by people that live on that road "

In case it’s too small to drive there by car tagging as “highway=service, service=alley” sounds reasonable.
Please consider using the width/lanes attribute with your tagging. This allows the renderer to create a map which better reflects the actual size (and quite often also the importance) of the road.
Also don’t forget to place access restrictions for the routing applications. so if it’s too narrow for a car (usually less than 3m) place car=no.

With the recent improvements on the map Style (read about CarthoCSS and watch SotmUS presentation) we’re close to seeing improvements in this area.

By using lanes and width tagging a bigger part of “more important residentials” can be tagged appropriately.


highway=living_street could be appropriate here. Such a soi has many purposes, and its use by motorized vehicles is just of minor importance, isn’t it? Of course, the Western definition of living_street does not apply anywhere in Thailand, but the meaning is close enough.

I usually think of alleys as gaps between or behind buildings, not those providing primary access to many properties. For those too-small-for-cars sois I usually use highway=path. Do you think the alley combination is better? I’m aware there’s some controversy over highway=path, but since such sois aren’t dedicated primarily to foot or bicycle traffic, it seems like a neutral compromise.

Hmm, to summarize:

highway=living street
I am really not sure about the living-street tagging as the defintion of a living street is quite fixed, is it not? Only because in Thailand there is no such a thing as a living street according to the european definition, … or actually exactly because it doesn’t exist the tag shouldn’t be redefined to reflect another meaning for Thailand.
At least in Germany, living streets are always clearly signposted as such and special driving rules apply. In Thailand, sois are neither signposted nor clear rules apply there. How much pedestrians use the full width of the road or kids play on the street is very much dependent on the… traffic situation of the road, there are no clear rules in my experience.

For me, a path always meant “no cars”, mainly because for other undefined paths where cars might go, there is the highway=track tag.
In Thailand, there are slim sois, where cars can still go (into a garage?) and there are these kind of paths which are really exclusively for pedestrians, bicycles and the occasional moped but definitely not for cars. I mean these paths which are often on stilts, like these one here: https://maps.google.co.th/maps?q=Thammasat+Rangsit+Sport+Center,+Thammasat-Stadion,+Khlong+Nung,+Pathum+Thani+12120&hl=de&ll=14.063393,100.600769&spn=0.000835,0.001725&sll=13.914578,100.76262&sspn=0.855766,1.766052&geocode=FaGl1gAdehH_BQ&hnear=Thammasat+Rangsit+Sport+Center&t=h&z=19 (regrettably no street view available, see also the OSM version of that area, I mapped it recently)

I agree that those kind of paths should best be tagged as paths, but I wouldn’t call them sois anymore anyway.

lanes and road with
Yeah, I fear this is the way to go to differ between different importance in the same road “class”. Out of the reasons explained below, I am somehow quite reluctant to use these tags. It is good to hear though that the stylesheets are being improved to reflect the tagging in the rendering.

By the way: How to tag a road with with the lanes-tag with no visible lane again? (But not a one-way road)

The difficulty with the width tag though is that it is hard to survey. From the satellite imagery, it is often quite unprecise. From survey, it is mostly too much of an effort (I mean, how would you do it?'). The problem with these tags that enable very precise data to be entered (it could be 3.35 meters) is that once entered by another mapper, it is hard to find out how precise the value entered actually was - If it was a precise measurement or just some rough estimate.
Because of these two problems, I yearn for a tag with which I can say: “This road is even one step down in the importance hierarchy below a residential road”. Because this is something I can see at first glance in a survey and perhaps on second glance from satellite imagery, as opposed to the road width in meters.

So for the first example I gave, for these really slim sois between buildings with no sidewalk whatsoever I find the service=alley tag quite fitting and convenient. For the second type, I am not sure now. I know the proper way would be to use width and lanes, but I might just end up using just highway=residential because I don’t feel confident to declare the width of that road.

@westnordost: Hope I don’t sound “old” now… When I was young we measured the distance by counting 1-Meter steps. If you walk in a right angle across a road the distance you traveled from one side to the other is the width. Accuracy is within a few decimeters. Good enough for our purposes I guess. Can also be done on busier roads when crossing at a pedestrian crossing.

Using technology, a regular measuring tape is fine. Or just use a longer string. More high-tech is a laser rangefinder.

Guessing the width by counting the lanes does also work. Lanes are in average 3m. But this is something a renderer can do as well, so map either lanes (by counting) or width.

I agree with not redefining the meaning of existing tags. This will it much more difficult to use software working with the data. Imagine a routing app developed in Europe. It will not have special interpretation of Thailand tagging scheme.