Mapping gates with access tag for villages in Bangkok

Hello Everyone,

Hope you are doing well!

Our local mappers’ team has identified many villages in Bangkok where any vehicle needs permission/pass from the security gate to enter the residential area or campus. We would like to map those gates at the entry point of the village.
Please find the details here:

  • Our team will use KartaView and Mapillary images with additional field survey data.
  • Based on reality, we will map gates and add access tags on highways and gates.

Please feel free to reach out to us for any concerns or questions.

MapRoulette Challenge:

Thank you & Happy Mapping!

This concept of gated community is quite common in other parts as well.

I did map the gate before, but never mapped the additional details whether the guard requires you to leave ID card or simply lets you pass through after you could give a plausible reason why you wanted to visit.

What kind of tagging are you proposing here?

I also wonder: Is this really a village? I did map them usually as neighborhood as it lack the village head man I thought each village has (often this house has a sign in front of it telling it).

@nitinatsangsit can confirm this. I also think that gated communities should be tagged as place=neighborhood, as most do not have official village status.

I think so. Most of the gated communities would be place=neighbourhood. By the way, it appears that the Grab team will just map the gate and access tag, rather than the place=*.

In Thailand a gated community/housing estate is also called a village. It is of course not to be tagged place=village.
It can either be tagged with place=neighbourhood or as an area landuse=residential. The landuse tag may be preferable because place=neighbourhood is also used for an official municipality community.

Landuse=* and place=* have different purposes. landuse=* as an area is used for rendering (background color) while routers use place=* as a node for directions.

If we need to distinguish between municipality and community place=neighborhood, it would be better to use a different place value.
Another alternative would be to tag the appropriate admin_level.

All I can say is that the landuse tag is commonly used for a housing estate.

There is the municipality community area (ชุมชน chumchon) tagged with place=neighbourhood and there is the housing estate also tagged with place=neighbourhood. If we can distinguish the two why should we not do it. A housing estate can also be within an area of a municipality community. That’s another reason why they should (preferably) not get the same tag (a neighbourhood within a neighbourhood). There is no different place value than place=neighbourhood.

A housing estate has nothing to do with administration. It can have no admin_level.

Thailand Wiki
place=neighbourhood can be applied to any urban area with a name, whether it is an officially recognized village/community or not.

So yes, place=neighbourhood can be used for both. But if we use a different tag for a housing estate it is clear that this is not an official municipality community.

Summary: If you can see the boundary of the housing estate use the landuse tag, if not use the neighbourhood node.

It is indeed and the majority of them are combined with a place tag which is not a recommended practice on an area:

In fact, as you suggested, the recommended way would be to not use any place tag, and instead add name, operator together with landuse=residential:

@nitinatsangsit actually already solved this issue by adding admin_level=10 tag to all municipality communities tagged with place=neighbourhood. If a place=neighbourhood does not have an admin_level=10 tag, it is considered to be a housing estate.

The distinction above should be sufficient, but if it causes confusion:

  • we could change the rule to not have any place=neighbourhood for housing estates: but using landuse as a node when the boundaries are not known is not looking great
  • or there is place=city_block available: not great either
  • or update municipality communities to e.g. place=quarter: this could maybe work

Could we please have more information about how access is determined between private/permissive/no/yes?

As far as I understood the:

Roads inside housing estates should be tagged as:

  • access=private if access is restricted (badge/security/lift gate)
  • access=permissive if access is allowed to the general public (no restrictions) but could be revoked at any time. This could be a common case if the main estate road(s) could be used as a traffic-through.
  • access=no should not be used as it is reserved for highly restrictive places like military facilities
  • access=yes could be used to indicate the roads are actually public residential roads and not part of any private housing estate (where access could be revoked)

Gates should be placed at the entrance of the community e.g. barrier=lift_gate, but I am not really sure if an additional access tag is needed for routers.

For the access tag, it is likely access=privat for these places where there is a gate and you have to swap ID card.
We have mappers who can tell stories about getting in trouble while entering these areas for the purpose of mapping.

@grab: Any feedback from your side regarding my question on how you plan to tag the requirement for showing ID document? We have not mapped this before. But as you brought it up, you might have already a tagging proposal in mind.

For administrative levels and place=* on the place node:
@nitinatsangsit you had invested a lot of thought into administrative levels. Do you have a proposal for the gated communities? In this context I also notice that place=hamlet is not part of the table in the wiki. Should they maybe all be on the same level 11, either formally or informal? Many of these housing projects are significantly larger than what we tag as hamlet. Still, both have in common that they have no special official administrative role.
If you are seeking administrative tasks like confirmation that you live there, you still have to visit the responsible headman of the village nearby.

So I would then propose to treat those housing estates and chumchon the same. And maybe add those 1ß-15 houses hamlets to the same category.

@cmoffroad I proposed the changing of admin_level=10 village in the municipality area here:

@stephankn place=hamlet is used for the distinct settlement with no administrative status. Then admin_level=* should not be used. They are officially recognized as a part of the nearby village. (If its population is higher than 200, it should be registered as an official village.)

For gated communities, some of them have been registered as an official community. In this case, it should be tagged as place=neighbourhood with admin_level=11, otherwise with no admin_level=* tag. Using this tag should be sufficient to distinguish the official community from other kinds of places.

In summary:

  • place=neighbourhood with admin_level=11: an official community
  • place=neighbourhood with no admin_level=*: any unofficial named area within the larger settlement
  • place=hamlet with no admin_level=*: any unofficial named distinct settlement

For gated communities I disagree to exclusively tag them with place=neighbourhood. The only reference in the wiki is to tag them with landuse=residential

“Named residential areas
Most landuse=residential objects in OSM are nameless, simply indicating general areas used for residences. However, housing estates and other specific residential areas are also often given their own landuse=residential area plus the correct name=*. …”

The landuse tag is commonly used for a housing estate. I believe it is the recommended method. Look at a town like Pattaya. There are hundreds of housing estates tagged like this and we want to change them all into a neighbourhood? Even very small estates with just 10 houses? I believe this is wrong.

We don’t need to create new tags or add the table. A simple note should be sufficient e.g.

A housing estate can be tagged with place=neighbourhood or as an area landuse=residential.
The landuse tag is the recommended method.

According to, both can coexist. The place=neighbourhood tag can be added to the landuse area, or it can be mapped as a new node at their center for routing purposes.

By the way, this is an international issue that should be brought to the international OSM community. Because there is the residential=* tag in addition to the landuse=residential tag, but no suitable value for a housing estate (only apartment complex is documented), I think that proposing for new tag specifically for a housing estate should be the solution.

I completely agree that the best setup for renderers and routers is to have both:

  1. a landuse area to denote the boundaries
  2. a node with place=neighbourhood to mark the community’s center and its attributes.

This is consistent with how provinces/districts/towns/villages are tagged.

Alternatively, these are acceptable intermediate solutions currently in use:
a. only a node with place=neighborhood when the boundaries are not known
b. only an area with landuse=residential + place=neighborhood when the center is not known

A landuse=residential area without a place tag should not be recommended as it will lead to confusion: is this a village, a suburb, or a random group of buildings… ?
Adding the extra tag place=neighbourhood removes the confusion and the tag can be easily extracted with other attributes (name, operator) when adding later a node at the “center”.

I have asked the global community site for their expertise on this topic:

Though, I wouldn’t put too much hope on new tag proposals as these are difficult to get approved.

This will of course again create a place=neighbourhood (housing estate) within another place=neighbourhood (municipality community). The only difference is the admin_level (none / 11). The distinction between the two is lost when looking at a map.

The solution, as you said above, should be a sub-tag for landuse=residential.

Yes, Grab team is going to map only the gate and if we have enough information on the access specification (access=private/permissive/no/yes), team will add access tag to it.


Thank you for your question. In cases of leaving ID or taking permission from the gate to enter the premises of the village/neighborhood, we would prefer to add access=permissive.

At present, we are not going to map a new village/neighborhood boundary, we will check the entry point of it and map the gate if it is visible from KartaView/Mapillary image or if it is collected from the ground survey. Adding to it, the access tag will be provided if we are sure about the access category (access=private/permissive/no/yes).

Sorry for the delayed response! We would prefer to add access=private on the submitting/swapping ID card on the security gate or taking permission (for every entry).