Release of 3D building open data of HDBs in Singapore

Cities around the world are increasingly releasing their 3D city models as open data. Researchers and practitioners in different disciplines are using 3D geoinformation to carry out a variety of spatial analyses.

At NUS we have been working on generating a 3D city model of all public housing (HDB) buildings in Singapore, by conflating different open datasets. Public housing accommodates the predominant majority of Singapore’s population, so the dataset covers most of the nation’s residential buildings.

We are happy to announce that we are releasing its first version as open data, hopefully benefiting researchers who previously did not have access to such data. To the extent of our knowledge, this is the first large-scale open dataset of 3D buildings in Singapore.

We offer two formats:

Both can be downloaded on our Github repository. While the dataset covers almost all buildings and it is semantically rich, please note that this is the first version and it is still work in progress with errors (e.g. some locations are wrongly associated due to addressing issues) and with a long todo list, please read more about the known issues at our Github repo.

The dataset can also be viewed through Mapbox:


We have used extrusion, a straightforward and common way to generate 3D models. It uses information about the height of each object (usually obtained from airborne laser scanning; lidar) and the geometry of the footprint. This method results in LoD1 (block) models.

While this method is simple and building footprints are nowadays widely available (we have used OpenStreetMap), it is hampered by the lack of open data on the heights of objects. There is no publicly available lidar dataset covering Singapore.

Therefore, as a proxy for the height, we have used the number of storeys of each block, which is available as open data in Singapore. Although prone to errors, this method has been very popular around the world and benefited a myriad of researchers.

Data sources

We have used the following datasets:

We linked the two using OneMap’s geocoder. While OpenStreetMap’s completeness in Singapore is high and in most cases it is sufficient to generate a 3D model, height (and/or number storeys) and the address information are not available for all buildings, and thus HDB’s dataset was used along with OneMap’s API to link the two. Furthermore, HDB’s dataset contains a lot of attributes for each block, not available in OpenStreetMap, greatly increasing the semantic richness of the dataset. More information about the workflow is available at our Github repo, where we have released the code as open-source as well.


There is not much to say about the geometry. It is in LoD1, and thanks to the hard work of the OpenStreetMap community, the footprints look pretty good. Have a look yourself:


The dataset is semantically rich thanks to coupling the two datasets ( OpenStreetMap and the Housing and Development Board open data on property information).

The resulting CityJSON dataset includes several attributes, such as address and number of units in each block (even decomposed by number of rooms thanks to the open data of HDB). Check the left pane of the screenshot from azul for an example block in Bukit Merah:

Data viewed in azul (free macOS software for CityJSON) showing the attributes for a block in Bukit Merah.

For the list of attributes please scroll down to the metadata section.

Please note that the OBJ file contains only the geometry since it’s a 3D computer graphics format.


If all this sounds good to you, the dataset is available on our Github repo. The datasets are below 100MB in size thanks to the compactness of the CityJSON and OBJ formats.

Terms of use: if using the data, please mention the following data sources: NUS Urban Analytics Lab, HDB Singapore, OpenStreetMap contributors, and OneMap. If you are using it for a nice publication, please cite the following paper:
    author = {Biljecki, Filip and Ledoux, Hugo and Stoter, Jantien},
    title = {{Generating 3D city models without elevation data}},
    journal = {Computers, Environment and Urban Systems},
    year = {2017},
    volume = {64},
    pages = {1--18},
    month = jul,
    doi = {10.1016/j.compenvurbsys.2017.01.001}

Feel free to drop us an email if you do something interesting with the dataset.


The code used to generate the data is available as open-source as well.


Coordinate systemSVY21 / Singapore TM ( EPSG:3414)
Number of buildings12119
Level of Detail1.2
geographicalExtent[11474, 28055, 0, 45327, 48759, 142]
geographicLocationSingapore, Republic of Singapore
Dataset version2019-08-25
OSM input data version2019-07-18
HDB input data version2019-07-05

As shown above, the dataset is semantically quite rich thanks to the input datasets. The attributes from OpenStreetMap are prefixed with osm_, while the ones from the HDB dataset are prefixed with hdb_. Please note that some information is duplicated in both datasets. We have included both sets of information just in case. The list of the usual attributes is as follows (but not limited to):

osm_idID of the geometry in OpenStreetMapway/440545194
osm_timestampTime of update of the 2D geometry in OSM2016-09-04T05:06:21
osm_buildingGeneral tag for buildingsresidential
osm_addr_cityVarious address informationSingapore
osm_residentialA general tag for additional informationHDB
hdb_blk_noHDB block number95B
hdb_streetStreet nameHENDERSON ROAD
hdb_residentialResidential building (Boolean)Y
hdb_year_completedYear of completion2018
hdb_total_dwelling_unitsNumber of units286
hdb_4room_soldNumber of 4-room sold flats104
heightEstimated height in m113.3

For the metadata sourced from the HDB Property Information you may want to check the information found in the original dataset. For OSM metadata, there is also a dedicated page.

The dataset includes all types of HDB buildings, incl. commercial and carparks. There are around 12 thousand HDB buildings in Singapore:

More technical details are available on our Github repositories for data and code.

Point of contact

Feel free to get in touch if you have questions or use the data for an interesting purpose. If you find an error or have a suggestion, Github issues are a preferred mode of communication.

NUS students

Are you an NUS student who is interested working on topics such as this one? There are related master thesis topics that may be of your interest.

Filip Biljecki
Filip Biljecki
Asst Prof in GIS and Lab Director