Yivan000's Diary

Recent diary entries

Mapping subdivisions in the Philippines

Posted by Yivan000 on 5 March 2023 in English (English). Last updated on 1 September 2023.

There are numerous standards and tagging practices being used to map subdivisions in the Philippines. Here I listed some of the current practices, and my own standard that aims to be more fitting for subdivisions.

Note that I am referring to gated subdivision communities (that have the block lot scheme) and not barangays that happen to be named with a “subdivision”.

Current practices

Below are some that I have seen and the problems with it.

Practice Pros Cons
addr:housenumber is B1 L1, B1-L1, Blk 1 Lt 1, or any shortened form of “Block 1 Lot 1” Rendered map tiles are beautiful to look at since the “Block Lot” format is shrunken down to lessen clutter on the map. Almost no one searches their subdivision address on map programs with the “B# L#” format. Searching “Block 1 Lot 1” will not yield a result, even though the feature is already tagged with B1 L1 or others. Also, this may lead to confusion since blocks can be named as “Block 2-B”, which will be “B2-B” when shortened. Also, houses with multiple lot numbers and/or lot numbers with letters will make this more confusing. Also, this somewhat breaks the rule of no abbreviations.
Tagging lots with landuse=residential The borders of each individual lot will be rendered on some tile providers (like Carto). landuse=residential should be used for the area of the subdivision it, not the individual lots. (See Philippine mapping conventions) Plus, seeing the borders of individual lots kinda violates the “don’t map for the renderer” rule.
Using addr:block_number or addr:block to tag the lot’s block number This is a direct tag to input only the block number. Not all software supports this tag. Furthermore, addr:block_number is only widely used in Japan, wherein the block lot format is “1-1”, and no one in the Philippines uses that format.
Putting “Block 1 Lot 1” in name= Geocoding and reverse geocoding will work properly Some buildings have actual names, separate to their block and lot number. The block and lot number is merely for the address.
Putting just 1 in addr:housenumber Cleanliness, I guess? It is unclear which block the feature is. Also, this will produce the wrong address and is difficult to find in search.

I’m sure there’s more that I haven’t listed.

My standard

* UPDATE 2023-09-01: This section is now invalid and is replaced by This is now preserved for archival purposes.*

This is also what I will be using moving forward.

The subdivision itself

The bounds of the subdivision is marked with an area enclosing the borders of the subdivision, tagged with at least the following.


Why place=neighbourhood? Because it aligns well with it being the same rank as sitios/puroks. Although for subdivisions that also contain subdivisions, quarter may be used for the outer one and neighbourhood for the inner one.

If the subdivision has phases, each phase should be mapped as a separate area, with name=XXXX Phase 2. Then, alt_name=Phase 2 XXXX must also be added since that is also a valid way to list subdivision phases.

The blocks

Each block in the subdivision is mapped with an area that uses/connects with the same nodes as the roads separating each block, the border of the subdivision, or the lots (explained further on), tagged with at least the following.

name=Block X

Why place=city_block? Because it ranks lower than place=neighbourhood, plus its definition in the wiki fits nicely with this usage.

Examples include this, this, and this.

If the block is split into multiple areas, use a multipolygon relation with all the above tags in it, and each area is just a way denoting the boundary with the role of outer. (example)

If the block has no name, use noname=yes instead of the name=.

The lots

The boundaries of each lot in the block is mapped with an area with at least the following tags:

name=Block X Lot X
alt_name=Lot X Block X

Why place=plot? Because it is the lowest rank in all of the place values. The usage of this tag is a special case in the Philippines since it is an essential part of the address in subdivisions.

Why name=Block X Lot X? Because it is the most commonly used format. It is not abbreviated due to the listed cons above. Searching “B1 L1” in Nominatim (OpenStreetMap’s search engine) also works using this format.

Why alt_name=Lot X Block X? Because some people use “Lot Block” instead of “Block Lot”. With this tag, searching for “Lot 1 Block 1” in Nominatim also works.

Lots do not connect with the same nodes as the road, but may connect with block and subdivision nodes if the lot is in its border. Lots should connect with each other’s nodes if they are right next to it.

Examples include this and this.

The buildings

Just map the buildings (eg. houses) inside the lot/s like normal, but with at least these address tags:

addr:housenumber=Block X Lot X
addr:place=<name of subdivision>

Why addr:housenumber=Block X Lot X? So that reverse geocoding will work and return the correct address. Unfortunately, this will make rendered map tiles in Carto look cluttered. But hey, don’t map for the renderer. Also, adding this tag makes it so that when searching for a particular block & lot, it will yield 2+ results, asking the question “Are you looking for the building on this lot or the lot itself?”.

Why addr:place and not addr:street? Because the address may also contain the street name (contained in addr:street) in addition to the block and lot number.

If the building span multiple lots, just map the building like normal and map each lot like normal. Do not combine multiple lots into one place=plot area.

If the building spans the entire area of the lot, map them like normal but all nodes of the building connects with all nodes of the lot. Selecting the building or the lot in the editor may be difficult afterwards, so make sure to enter the necessary tags before deselecting them. Keeping them separate is useful for cases wherein subdivision lot data is needed and also for consistency with buildings that don’t span the entire lot.


Hopefully this explains everything! This is the result of the numerous testing and research that I had done and would like to share my results. [update 2]