Correct Way to Tag a Thai Address with Example

@Johnny_Carlsen asked me if this is the right way to tag a Thai address, but my knowledge is limited, so I’m posting the details here:

Example: Node: 7569069713 | OpenStreetMap

I found that we already have guidelines in the wiki for addresses:

And old topics discussing best practices:

Based on these, here are some potential issues I noticed in the example above:

  1. addr:province, addr:district, and addr:subdistrict should include the terms ตำบล/อำเภอ/จังหวัด (Province/District/Subdistrict)
  2. There is no mention of addr:village in the wiki. How should the village/municipality/SAO be tagged?
  3. Can anyone explain the wiki sentence “depending on the area, either addr:place=* or addr:street=* is used, and both should not be used together”?

Any insights or clarifications would be greatly appreciated!

I have now added province, district and subdistrict.

Please provide feedback, as this is what I’ll be using as a template for thousands of house numbers in the future.

Addresses - OpenStreetMap Wiki states that " Tags such as addr:country=, addr:city= are often redundant as features inside administrative boundaries (when mapped) “inherit” their attributes as supported by software such as Nominatim or Photon." You could consider avoiding the addition of higher-level administrative divisions in the tagged address.

See (“Manchester City” example)

1 Like

You could consider avoiding the addition of higher-level administrative divisions in the tagged address.

Neither the San Kamphaeng District or the On Tai Subdistrict has been mapped as a proper administrative boundary at the moment, so I suppose they are still needed for now?

Official addresses in Thailand don’t include the municipality or SAO. For the village, it should be tagged as addr:place=*, using the numeric name rather than the word name. (such as หมู่ที่ 2 / Mu 2)

Because the official house numbering is associated with either the street (usually in urban areas) or the village (usually in rural areas), the user must be aware of whether the addr:housenumber is associated with the street or the village. For this reason, the official address of any house or building recorded in the registration would never include both the street and the village simultaneously.

The wiki Key:addr:place - OpenStreetMap Wiki description exactly matched with how Thai house numbers, which are associated with villages, work.

1 Like

So according to official addressing and Thailand wiki:

addr:place = หมู่ที่ 8
addr:place:en = Mu 8
addr:street:en, addr:village, addr:village:en should be removed.

1 Like

Only provinces have been consistently mapped in Thailand, so addr:district, and addr:subdistrict would still be needed.

I have updated addr:place according to your spelling above.

I have removed addr:province, addr:province:en and addr:country as they are redundant.

I am reluctant to remove addr:village as I think it is fairly important to know that my house is in Ban Pong. I also find that addr:street is fairly important as it tells you from which street you can enter my house. Is this really information we would like to discard?

Because the house number 110 is associated with the village, not the street. Adding addr:street=* leads to confusion. The wiki Addresses - OpenStreetMap Wiki and Key:addr:place - OpenStreetMap Wiki explicitly states that addr:place=* should not be used alongside with addr:street=*.

I understand that your concern is about data loss, but the fact that the house is accessible via which street has nothing to do with the address tag. (For example, the registered street address can sometimes not using the name of the nearest road, but rather a main road in the area.) The address tag, however, should be tagged in accordance with the house registration that the house owner has, as given by the Department Of Provincial Administration. This is the same address as what you write on the postal envelope.

For the village name, Ban Pong is actually an alternate name for Mu 8, therefore it’s also redundant. What we can do to make people knows is to add Mu 8 as an alt_name=* in the place=village node. I also usually do this when I’m mapping villages. (Adding Ban Pong as an alt_name=* in the boundary=administrative is also useful, but I know that village boundaries are rarely mapped right now.)

In addition, I’m still unsure whether addr:subdistrict=* and addr:district=* should be removed, even if their boundaries are completely mapped. There will be issues with some places near the boundary line because boundary mapping in Thailand is likely to be poor, even on the “official” map used by the authorites. However, for the addr:province=*, it can be removed because if the addr:district=* is tagged, we can determine which province it belongs to. Districts with the same name are rare in Thailand, and when they do occur, they are far apart and not in close proximity.

1 Like

Thanks for the clarifications. What’s the actual reason numbers are used instead of the official village name ?

The numeric name is more convenient to use and specific to each village, and it is preferred in official documents. For administrative purposes, certain single settlements can be divided into multiple villages, so their word names can be the same. For example, Ban Pong will probably be the word name for both Mu 8 and Mu 9. Furthermore, the village’s word name can sometimes be inconsistent, but the numeric name is always stable.

1 Like