Dec 04

Database of HDB blocks in Excel format

The HDB Database involve collecting data from multiple sources, an original compilation Made by Teoalida.

I offer 5 standard packages, containing block number, street address, building name, building type, building era, plus some specific details shown below. You can purchase a smaller package then pay the difference to a bigger package. For custom packages or additional data that is not yet included in database, contact me!

Instant download! Pay via PayPal or credit card and receive automatically an email with download link (example email). Need info about certain blocks and NOT interested to purchase whole database? Contact me and I will provide the info needed (if available)! See also Terms and conditions!

Free updates for one year! Last release: August 2017
In November 2017 I will redesign packages. You are welcome to suggest new packages, for example 2 people suggested postal code + number of units in one package, without lease year

HDB Database, block number, street address, lease year, postal code

GPS coordinates


Buy & download
HDB Database, block number, street address, lease year, postal code

Unit numbers


Buy & download
HDB Database, block number, street address, lease year, postal code

Postal code & lease date


Buy & download
HDB Database, block number, street address, lease year, postal code

Number of units breakdown by flat type


Buy & download
HDB Database, block number, street address, lease year, postal code

All details (GPS coordinates, unit numbers, postal code, lease year, number of units breakdown by flat type, upgrading programmes, etc)

Bonus: block model name, number of floors and units per floor, estimated for 40% of blocks, counted for other 40% of blocks, yet to be counted for 20% of blocks, this require dozens of hours of manual research to be done accurately, and I may do it if enough people pay the bonus fee.


Buy & download
All details, purchase just your preferred towns!

Price: 10 cents per building. If you purchase 3 towns, price will be 9 cents, if you purchase 5 towns, price will be 8 cents. Contact me for discount!


Buy & download

HDB Database statistics

Total number of tagged HDB buildings in database: 14586 (as January 2017).
Database include also few hundred non-HDB buildings (not tagged, not included in above count).

Breakdown by building type tag:
Residential flats: 10574 + 1347 demolished (including blocks with shophouses and no flats).
Multi-storey carparks (MSCP): 1058 + 3 demolished.
Pavilions: 774 + 5 demolished.
Houses: 109.
Industrial buildings: 46.
Other buildings: 538 + 81 demolished (commercial buildings, electrical sub-stations, etc).
Unknown buildings: 45 (mostly demolished).

Breakdown by building era tag:
Classic era (lease pre-1993): 7851 buildings.
Centralized refuse chute era (lease 1993-1998): 2069 buildings.
Household shelter era (lease 1998-2006): 2000 buildings.
Household shelter BTO era (lease 2006-present): 2666 buildings.

Number of units is available for 10,203 blocks that were existing at least as 2010, including under construction blocks launched until November 2016 BTO. Total: 1,090,310 units, averaging 106 units per block. Every year, new blocks are completed while others are demolished, keeping this figure up-to-date is difficult. 992,742 dwelling units are in use as 31 March 2016 according HDB Annual Report.

Accuracy guaranteed for block numbers, street addresses, postal codes, lease year, number of units.
Not guaranteed for number of floors and units per floor, and for building type tag. Some 2-storey shophouses may be tagged incorrectly as residential. I need to find correct way to tag shophouses.

What the HDB Database currently include

– Block numbers: complete for all Singapore. Source: www.onemap.sg.
(40% done in 2009-2010, remaining 60% done in June 2014)

Building name: complete for all blocks that have a name. Source: www.onemap.sg.

Street address: complete except blocks under construction and blocks demolished before 2000. Source: Enquire status of upgrading programmes.
(30% done in 2010, remaining 70% done in December 2014)

Town / Estate: complete for all Singapore. Town is official zoning while Estate is my personal classification by phases of construction.

Town Council: complete for all Singapore. Source: www.onemap.sg.
(added in May 2017 at suggestion from a customer)

Electoral division (GRC / SMC): complete for all Singapore. Source: www.onemap.sg.
(added in September 2017 at suggestion from a customer)

Construction code & unit numbers: available for 3011 of 14586 total buildings, or 2464 of 2666 BTO era buildings.
In 2016 a customer suggested adding unit numbers. Source: site plans from BTO and SBF brochures, available for 90% of BTO era blocks and for random pre-BTO blocks which HDB offered site plans at Sale of Balance Flats.
I know how useful would be to have the unit number ranges for every block, but this is NOT POSSIBLE. Hong Kong does have www.centamap.com showing unit number and position. When Singapore is going to have the same? Going from block to block to check mailboxes and get unit numbers, takes more than a man’s lifetime.

Building type tag: complete. This column act also as filter, non-HDB buildings have it left empty, who wants a simple list of HDB buildings can filter it to delete empty rows (estate header row, schools, condos, etc). Flats / MSCP / Pavilion / Other + Demolished tags, so the real estate agents can filter and delete demolished buildings, while historical researchers (like myself) can keep them.
(added in November 2014)

Update frequency for above items: every 3 months when new BTO are launched. Also adding old demolished blocks when I discover them on hm.onemap.sg or National Archive photos. My ULTIMATE GOAL is to have in database all SIT/HDB blocks ever built.

Postal codes: available for 12966 buildings standing as 2015 or under construction. Source: HDB Centralized Map.
Personally not interested in postal codes, but in July 2014 a customer suggested adding them, a 2nd customer asked for postal codes in May 2015, so in June 2015 I added them. HDB Centralized Map added info boxes for under construction blocks in late 2016, allowing me to add in my database too at January 2017 update.

Latitude / longitude: GPS location for every block – suggested by 1 people in 2013, too hard task, NOT in mood to do it (unless I am paid a big sum of $$). DONE in 2015 thanks to Renata who made a script to run in Google Maps API and integrate coordinates into my database.

– Lease year: complete for all blocks available on resale market (so NO year for carparks, rental blocks, or blocks within MOP). Source: HDB Resale Flat Prices.
(30% done in 2010 and remaining 70% completed in December 2014)

Lease year-month-day: In June 2015 I started improving lease date by adding day and month beside year, sourcing from HDB Centralized Map. Update frequency: at random moments of year I check possible newly-completed blocks and add lease date.

Estimated completion date: complete for blocks under construction or under MOP: source: BTO brochures. When blocks fulfill MOP I replace estimated completion date with lease date. Update frequency: when new BTO are launched.

Building year: available for 505 buildings. HDB never publish actual building date, except when the block is selected for SERS. I have indicated the building year in database only for SERS blocks and for the blocks who were leased significantly later than their actual construction date. The building year is sourced from old newspapers seen at National Archive (if possible), otherwise estimated using old Street Directories.

Demolition year: complete for all 1448 demolished buildings. Source: estimation using old Street Directories (1984, 1988, 1991, 1993, 1995, 1998) or Google Earth satellite imagery (after 2000).

Number of units (text form) & upgrading programmes: complete for residential buildings. Source: Enquire status of upgrading programmes for blocks completed as 2015.
(25% done in 2010, remaining 75% ON HOLD waiting for a customer paying me…. been paid in May 2015 and completed in June 2015 (complete for all blocks that were standing to at least 2010).

Number of units breakdown by flat type in separate columns: complete for all residential buildings (about 9500 buildings). Idea used since 2011 for List of BTO projects. In 2014 I planned to use it in the future for HDB Blocks Database too. I decided in June 2015 to breakdown original number of units beside current number of units which is varying over time.
(done in 2014 only for Jurong West for showing SAMPLE file. Breakdown done in all towns in June 2015)

Since 2016 I add number of units when blocks are launched rather than when completed, source: site plans from BTO / SERS / SBF brochures.

Note: number of units is VARYING over time in blocks with 1/2/3-room built up to 1990, as from time to time people buy 2 flats and adjoin them.
Update frequency: I add number of units for new blocks when new BTO are launched, but I will NOT offer updates for block built up to 1990, would take large amount of time to reached every block and benefits are insignificant. They will remain “as 2015”.

Number of floors, units per floor, estimated number of units: 40% done in 2009 estimated from shadow length in satellite photos, before Google Streetview introduction, may have errors +/- 1-2 floors, additional 20% done accurately in 2010 by counting blocks in Google Streetview.
In 2014 I decided to complete database without number of floors because it was taking too much effort and I believed that it is no longer needed, precise number of units became available in HDB enquire status of upgrading programmes, no longer need to multiply floors with units per floor.
In 2015 a customer (Renata, see her comment) offered me a BONUS of $400 to complete number of floors for remaining 40% of blocks, but after doing half of job she told me to STOP THE JOB because her boss don’t want to pay.
I can resume the job and do remaining 20% if another customer is interested in paying a BONUS for completing number of floors. If do you want also to count the 40% estimated in 2009-2010, I can do if I have sufficient time, and you need to pay my time.

Virtual Singapore, a very detailed 3D map, was announced in 2015 to be ready in 2017. In August 2017 it was announced that will be ready in July 2018. This map will help me counting floors easier and accurately, so I won’t count any more floors on Google Streetview until Virtual Singapore will be launched for public.

What I can include or change in HDB Database

– Reorganize towns/precint structureit’s important to know WHO are the potential customers and how they intend to use the data, to provide the RIGHT data structure.

Remove number of floors – Floors can be only counted manually on Google StreetView thus I can save a lot of time by NOT adding number of floors.

– Remove condos and other private buildings from database, stick on HDB only.

– Make a separate database “Condo Directory”. DONE in October 2015!

– Make an API and sell access to database via monthly subscription instead of one-time payment. I don’t know how to make a subscription payment. Maybe some webdesigner with higher experience than mine can help?

– Anything else necessary? Your ideas are welcome!

History (short version)

I started compiling data voluntarily in 2009, purpose: personal research about housing density in selected estates and use the results in designing own apartments, I abandoned in 2011 after completing 40% because it required too much effort for a non-paid job.

Being a voluntary project done without any specific target, I changed my mind numerous times, making the database a MESS, table layout being different from town to town depending by the date each town was compiled.

In 2012 I published on website a SAMPLE with one town, as marketing experiment, to see who (if anyone) is interested. I was willing to re-compile entire database, this time as PAID service for professional use. I hoped people to tell their requirements or suggest changes in data structure, negotiate a price based by amount of effort needed to compile the data, then do the job… but I was facing with lack of feedback, LAZY customers do not inform me exactly what data are looking for!

Took 2 years to get a rough idea what people are looking for… and resumed working in July 2014, I done A LOT of changes in data structure, cleaned (most of) mess, completed whole Singapore in December 2014 in terms of block number, address and lease year. Number of units remained as done in 2011 (25% completed), the rest 75% will be done AFTER finding a customer willing to pay 50% before 50% after. The long-waited customer came in May 2015, work started, completing number of units for ALL 10,000+ blocks by June 2015! As customers requested, I added also postal codes in June 2015 and unit numbers in 2016. Feel free to request additional data!

Total: hundreds hours of work, and counting number of floors / units per floor require additional hours be to completed. Maybe too much time considering number of people willing to pay for such data.

History – original HDB database made for my personal research

– In late 2008 I started studying architecture.
– In early 2009 I started the HDB database, a table with 4 columns: block number, floors, units per floor, total units. I took from map the names/numbers of HDB blocks as well as schools, religious structures and every other building within HDB estates.
I was smart enough to identify number of units per floor by looking in satellite photos, and guessed the number of floors by measuring shadow length and compare with the shadow of a block with known height, multiplied to get an estimated number of units per block and per precint.
I made for each town a summary, list of HDB precints with their number of units land area in hectares, plus condos, landed, park, industrial land, to calculate land usage and housing density.
In the same time I collected floor plans and learned the history of HDB, at end of year I published this page HDB Floor Plans 1930-2010s.
– In Dec 2009, Google launched Street View in Singapore, which was very helpful for me. I re-checked the database, corrected block heights and got more precise estimation of number of units. Also added building year.
– In 2010 HDB website shows the number of units in upgrading programmes. I started re-making database and replace the estimated numbers with correct official numbers. By this way I also added street address and upgrading programmes announced for each block.
– In 2011 I abandoned the work because after re-making and re-re-remaking the database… sounds like a waste of time and I did not saw a real usage of such database. With all new ideas that came meantime, several hundred hours would have been necessary to complete database nationwide with number of floors, units per floor, precise number of units, upgrading programmes, etc.

HDB Database covered about 20% (western part of Singapore) in the simple 2009 layout and another 20% in the improved 2010 layout (pre-1980 towns). This 40% was more than enough for the original purpose (personal research). The format was a MESS:

– Number of columns in database varied from one town to another.
– Some street names were abbreviated, others were full names.
– Blocks with varying height were in towns done in 2010 a single row, but in towns done in 2009 were split on separate rows for each height.
– BTO names were sometimes above list of blocks, sometimes on the left.
– And few more…

Note that in 2009 I had no school or job, thus all day was free time… but since 2012 I work for people, customers paying me to do various things, thus I no longer have time for voluntary (non-paid) works

In the same time I made a map of Singapore using AutoCAD, drawing all roads in certain HDB estates, and measured land size of various housing areas. Purpose: personal research about housing density in selected estates and use the results in designing own apartments.

History – new HDB database that I intend to sell for professional use

In mid-2012, one of my other hobbies, the Car Database, had an unexpected turnout into a business. Since 2003 I was compiling car data in Excel for personal research, then in 2011 posted it on website, and after 1 year I realized that there are people willing to pay $ for such data.
So, I tried do do the same with HDB Database, for the first time published it on website, a SAMPLE Excel file with one town only… to test the market and see if anyone is interested and how can be used such directory of HDB blocks, to continue this megalithic work and sell it for money. But first, need to know what data people need, to not spend unnecessary time on unneeded data, standardize the table format for all towns and clean up the mess.

I was facing with LAZY people and lack of feedback, as happened in case of Car Database too, where took one year to figure out how to make a database appealing for customers to do the 1st sale, for one year.
People praised my initiative, many students wanted the HDB database for personal research, counting blocks, etc, flat buyers wanted the database to know lease year, etc. Sorry, but a 400-hour project is NOT something to do for free to help students and flat buyers.
I also met non-serious customers (see the comments at bottom of page), in the top of list is this this customer asking me if I am selling database but not answering my questions (it’s also my fault for not saying “I am selling the SERVICE of compiling a database“, not a ready-made database).

If BUYERS do not tell me exactly what data they want to BUY, how I am supposed to know what data to compile and SELL ????

I made 2 polls. As you can see, people voted to WAIT for a customer then do the megalithic work, however I never succeeded to make a DEAL in this way.
Seems that I need to complete the database in advance, to be ready for sale when the next customer are coming, taking the risk that customers may be looking for SOMETHING ELSE than what I am doing.

HDB Database

After 4 years of indecision, I resumed working in June 2014

If in 2009-2011 I was adding all possible data for one estate then move to next estate, NOW I am planning to complete in stages: finalize block numbers (taken from map), then start adding street addresses and then years (taken from HDB Resale flat prices), only after finalizing these, start adding number of units (highest time-consuming part of database), and so on.

– Due to limited amount of time available for voluntary jobs, I compiled remaining 60% of Singapore as block numbers only. Other towns remain as done in 2009-2011, never updated.
– Visually enhanced the table using vertical colored columns (a style used for all my Excel works since 2010).
– Deleted the land parcel areas and housing density calculation (I believe that nobody will be interested in this), reorganized the summary table by Public and Private housing (instead of condos mixed with HDB if they are on same perimeter of streets).
– Few additional changes…

Total: 9800 residential blocks, including about ~500 demolished blocks, excluding MSCP, pavilions, markets and other non-residential buildings.

I posted the incomplete database FOR SALE in Store, inviting people to tell me their requirements, negotiate a price, buy existing database for $100, then I will do the remaining part of job. Some wanna-be customers are so LAZY even to tell me what profession they are and what data they need about each block!

November 2014

– Took one-week break from my other projects, updated all towns (block numbers and BTO names), added all under construction HDBs launched up to 2013 . Number of units and upgrading programmes remain NOT updated since 2009-2011.
– Added old HDB blocks demolished before 2000, corrected old estate names (using hm.onemap.sg, historical maps released in September 2014), previously I was using Google Maps, which until 2011 was still showing buildings demolished after 2000 together with new buildings.
– New column: Building type tag (Residential / Carpark / Pavilion / Other). Previously MSCPs and Pavilions were indicated in BLOCK column together with block number. (idea came after a student asked me how many carparks and residential blocks are currently in Singapore – this column will allow easy count).
– New column: BTO/precint names. Previously was a header row above the list of blocks in the BTO/precint.
– Reorganized the list, instead of sorting by geographical location and divide each town in precints, it now sorted by phases of construction (see screenshot). For example: Sengkang: instead of 50+ separate precints and BTOs, now there is a continuous list of all blocks. Toa Payoh: instead of a list from blk 1 to blk 260 mixed old and new blocks, I sorted it as Phase 1 (1966-1976) blk 1-235, Phase II (1986-1989) blk 236-360, and Redevelopment phase (1993-present) with BTO and SERS blocks.
– Then, instead of a summary of precints in each town sheet and another summary of towns, there is single summary sheet of towns and phases of construction. Moreover I can combine all 27 towns in a single sheet, to allow nationwide block filter.

Free SAMPLES (these samples were posted at top of page until June 2015 when new version was ready)
HDB Database 2011 – original version as I done it in 2009-2010 for my research.
HDB Database 2014 DETAILED – coloured, visually enhanced, table no longer divided by precints, town summary removed, proposed to breakdown units by flat type – few hundreds hours are needed to complete database in this format.
HDB Database 2014 LITE – street, block, lease year = fewer data fields = only 100 hours are needed to reach 100% completion…
Breakdown by flat type is done only for Jurong West and Holland for purpose of showing in the SAMPLE, for the rest of towns will be done after getting 50% of payment.

HDB Database

December 2014

– Got a week of free time… COMPLETED street address and Lease year for all remaining blocks.
– Total: 13210 buildings. Residential blocks: 10038 + 1198 demolished. MSCP: 941 + 3 demolished. Pavilions: 592 + 2 demolished. Other buildings: 359 + 77 demolished.

March to May 2015

– I am BUSY expanding Car Database which generate far more sales than HDB Database. Further work at HDB database can be done starting from June 2015.

Sales started!

First customer! On 3 May 2015, a real estate agent doing flyer distribution, wanted to view the number of units per all blocks at once. Too bad he purchased Yishun only. I started the job of adding number of units for Yishun, and next day I finished and we made the deal.
Anyone else wants number of units in ONE town? Will be ready in 2 days (or immediately in case of pre-1980 towns).

– Updated all towns, added BTOs launched in 2014 (about 200 buildings,block numbers and street address).
– Added early HUDC (about 100 buildings, although their place is NOT in HDB Database as they were never managed by HDB)
– Re-re-rewrote the page, added the BUY NOW button directly on page instead of telling potential customers “to buy from Store“, also added individual towns with their price, not just “whole Singapore”.

5 new customers contacted me in 20 May – 5 June. Don’t know if is a coincidence, or displaying the prices directly on page, per whole Singapore and per town, encouraged website visitors to contact me. There were 2 mini-customers, one wanted a list post-2000 blocks with 3-room flats. I sold him the list for ONLY $20.
But someone wants number of units in whole Singapore… and deadline set on mid-June!

– I hardly find 100 hours to add number of units in every block. Fortunately one of my school-age friends, was willing to help me during the school vacation of June 2015.
– Also added postal codes (customer request), sourced from HDB Centralized Map (an easy job that took me only 20 hours to complete).
– While adding postal codes, I added also lease day and month beside year, but since no customer ever requested this info, I stopped after 20% and remaining 80% I will do later if is needed.
– Added 2 more columns: Building year (if different than lease year) and Demolition year. Now the upgrading programme column show ONLY the info from HDB upgrading programmes, previously it was saying for example “SERS 2010, demolished 2016” and for rental blocks it said “demolished 2016” which isn’t an upgrading programme.
Total: 13699 buildings.

23 July 2015:
– New release, requested by a customer. Total: 13773 buildings. Residential flats: 10305 + 1298 demolished. MSCP: 993 + 3 demolished. Pavilions: 698 + 5 demolished. Other buildings: 389 + 82 demolished.
– Published 3 packages: postal code and lease commence date, number of units, all details.

October 2015:
– Added few missing blocks. Total: 13794 buildings.

May 2016:
– Added a column Building era, to quickly filter blocks, because last few months I done few sales to people who wanted a list of blocks built after year X.
– Added BTO launch date / SERS announcement date in Block name column (personal idea).
– Added construction code and unit number ranges for blocks that does have site plans in Sale of Balance Flats (requested by a customer in February, I offered to add him this info free of charge, but he never replied, thinking that other customers would be interested), by this way I added about 100 more buildings, mostly Electrical Sub-Stations from under construction BTOs which were missing on OneMap.sg.

June 2016:
– Being tired of waiting for OneMap.sg update I decided to add BTO launched in 2015 and first half of 2016 using site plans from HDB brochures. As coincidence, near end of June OneMap.sg was updated with BTO launched up to end-2015.
– Added number of units for under construction blocks, not just for completed blocks.
Total: 14455 buildings (including 109 houses, 46 industrial, 42 unknown buildings not counted previously).
– Published 26 June in 5 packages (new ones: unit numbers, GPS coordinates).

January 2017:
– Added BTO launched in second half of 2016.
– I noticed that HDB Map Services added info boxes for under construction blocks, not just for completed ones, so I improved my database by adding street address and postal code for under construction blocks too.
Total: 14586 buildings.

Starting from 2017 I offer 3-month updates adding new BTO flats because along my customers I have a telecommunication company who is the first to demand fequent updates. Data for existing BTO such as lease commence date will be checked 2 times per year.
March 2017: 14635 buildings
May 2017: 14688 buildings, added Town Council (suggestion from a customer)
August 2017: 14727 buildings
September 2017: added electoral division, added lease day-month for all blocks, added GPS coordinates from HDB Centralized Map, added SERS prediction, added floor plans for some blocks.


5 pings

Skip to comment form

  1. Zack Truong

    Howdy! I know this is kinda off topic but I’d figured I’d ask. Would you be interested in trading links or maybe guest writing a blog article or vice-versa? My website addresses a lot of the same topics as yours and I think we could greatly benefit from each other. If you happen to be interested feel free to shoot me an e-mail. I look forward to hearing from you! Terrific blog by the way!

  2. Priscilla

    May I know how do I contact you? There is no mobile number listed here.

    1. Teoalida

      Phone number is just for family and very close friends. Customers can contact me via email or live chat

  3. Homemakers

    Hi Teoalida,

    Thank you for painstakingly collecting data and taking the time out to answer questions from the public, wanted to ask you for your thoughts are on the likelihood of SERS for blk 94 Havelock road (160094), my partner and I looking to move there to start our family and at least stay for 15-20 years, so we are looking for stability and not moving.

    There are a couple of factors that could be pro SERS such as a neighbouring empty land with a plot ratio of 4.0 based on the URA masterplan,and the neighbouring flats at taman ho swee are low rise (10 floors). However,there was a lift upgrading program about 10 years ago. what do you think?

    1. Teoalida

      Why do you leave comments about SERS in HDB Database page instead of SERS Page?
      Block 94 Havelock Road is built in 1983 and currently only blocks built up to 1980 can be selected for SERS, whenever this rule may be changed, nobody knows.

      1. Homemakers

        Understood, thanks for sharing your information and being helpful!

        1. I am a idiot

          Just shut up asshole

  4. Teo administer

    Say it persents

  5. Teoalida (the idiot k!ng) 1

    I’m a asshole

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>