Water Consumption
The water consumption dataset is based on actual or estimated monthly water meter readings collected by SP Services.
Dataset Update Frequency
| Dataset | Update Frequency |
|---|---|
| Water Consumption | Monthly |
SP Services sends the previous month's water consumption dataset to PUB on the 15th of every month. Latest available data will be 1-month before current date (i.e. Jan readings will be sent in Feb).
Trusted Center for Sensor Data (TCS) expects the data transfer from PUB between the 15th-25th of the month.
Users can expect to access the latest month's water consumption data within a few hours of the transfer from PUB, given the validation checks are successful.
Nature of Data Collection
Meters are generally read once every two months. On months where meters are not read, SP will estimate the consumption based on prior readings. Refer to the Estimate Indicator field to determine if the consumption value was estimated or read.
Data Patches
TCS receives the last 6 months of data from PUB every month. Values in any field(s) from the previous 5 months can change. In order to offer the most up-to-date data for our users, TCS merges in the changes based on the following logic using (UAN, YEAR, MONTH) as the unique key:
- No match: Insert row
- Match existing row: Update values to latest values received
Files that users have already curated prior to a new ingestion will not change. Users are recommended to curate another file to get the updated values.
Fields
This segment covers detailed description and domain specific information of relevant fields in the Water Consumption dataset.
UAN (Unique Account Number)
The UAN represents an account that is tagged to a premise for a given account holder.
When the account holder shifts to a new premise or a new account holder takes over the existing premise, the UAN will change (there are certain exceptions such as postal code refinements, enblocs etc where the premise address might change but the UAN remains the same).
There can be multiple UANs for a given premise address.
UEN (Unique Entity Number)
The UEN column contains business UENs or masked NRIC/FINs. NRIC/FINs are masked by PUB before the data is sent to TCS. Hence, TCS does not distribute any NRIC/FINs for the water consumption dataset.
From Aug 2024 onwards, NRIC/FINs will be unmasked. Historical data (prior to Aug 2024) will remain masked.
A valid UEN/NRIC/FIN is required for new account openings but there are some legacy UENs still being utilized in the water consumption dataset. SP Services is proactively reaching out to these account holders to update their details and a decrease in legacy UENs is expected over time.
A single UEN can map to multiple UANs (e.g. Company A has 3 different office locations/outlets in Singapore).
Account Holder Name
TCS performs defensive masking of account holder names based on the values in the UEN column. All names are masked by default. If the value in the UEN column conforms to a valid UEN, the value in the account holder name column is unmasked (see Masking Methodology below for more information).
Postal Code
Some postal codes have 4 trailing zeroes (e.g. 120000) and can be refined over time (e.g. 123456). This is an expected behaviour as it may belong to entities which do not yet have a mailing address (e.g. construction sites).
Street
The street name can be truncated (e.g. JLN instead of JALAN).
Premise Address
Format is generally: SINGAPORE <STREET> <BLOCK/HOUSE NUMBER> <UNIT>. Additional identifiers may be appended to distinguish between entities at the same location (e.g. food stalls owned by vendors in school canteens, where STALL X may be appended at the end).
Water Consumption
SP Services records water consumption using a credit/debit methodology. As aforementioned, water consumption readings are generally recorded only every other month. As the account holder may be over/under charged, the difference will be credited/debited accordingly in the next billing cycle. Hence, water consumption readings can be negative regardless if it was estimated or actually recorded.
Billing Class
The billing class column is non-nullable and differentiates between domestic or business accounts.
"DOM" represents domestic and are for premises where water supplied are exclusively for residential purposes including staff housing.
"NON" represents non-domestic and are for premises which are used for the purposes of or in connection with any trade, business or profession.
Example of "DOM" premises:
- HDB flat
- Private apartment
- Landed houses
- Condominium
Example of "NON" premises:
- Hotel
- Service apartment
- Boarding house
- Hostel
- School
- Place of worship
- Mess
- Dormitory
- Child care centre
- Office building
- Bin Centre
- Car park
- Eating Establishments
- Construction Site
- Shopping Mall
- Hawker Centre
- Industrial
- Shophouses
- Community Centre
- Office
- Medical Facilities
- Sports and Recreation
Water Type
The water type column is non-nullable and differentiates between the type of water used. "PW" represents Potable Water and "NW" represents NEWater.
Estimate Indicator
Indicator to determine if the water consumption value was estimated or actually recorded. "A" represents actual and "E" represents estimated.
This column was only added after Sep 2020 and will be null prior to that date.
Please note that there may be null values after Sep 2020 for the following scenarios:
- New account activation with no consumption for the latest billing cycle reflected in the report
- Inactive contract account
- Late bill
Meter Read Date
Date the meter was physically read. null if the record was estimated.
This column was only added after Sep 2020 and will be null prior to that date.
Year, Month and Quarter
The Year, Month and Quarter fields represents the date of water consumption.
Customers are only billed for their current month's consumption in the subsequent month.
Report Received Date (legacy)
Date the report was received by PUB from SP Services. There is a 1 month reporting lag (i.e. readings in Jan will have a report received date in Feb). As the meter read date is nullable, this column is often used for analysis/concierge requests. Users should adjust for the lag (subtract 1 month) to ensure the water consumption value is mapped to the proper month.
This column is deprecated as of 13 Feb 2024. Users should use the Year, Month and Quarter fields to determine the date of water consumption. Note: the Year, Month and Quarter fields are adjusted for the reporting lag.
Masking Methodology
TCS uses a privacy protecting masking mechanism to safeguard individuals' personally identifiable information (PIIs) which includes NRIC/FINs (in UEN column) and Names (in Account Holder Name column).
PIIs are masked with 9 "X"s ("XXXXXXXXX").
There are generally 3 categories of values in the UEN column and PIIs are masked based on the table below:
| UEN value category | UEN masking policy | Account Holder Name masking policy |
|---|---|---|
| NRIC/FINs | Masked | Masked |
| Valid UENs | Unmasked | Unmasked |
| Invalid (legacy) UENs | Unmasked | Masked |
Note: Corresponding values in the Account Holder Name column for invalid UENs have shown to contain PIIs and are hence masked for good measure.
Official format for UENs can be found here.
Additional Scope Filters
Scope filters allow users to filter the dataset to a specific subset of data. Apart from filtering by the existing datafields like UEN or Postal Code, users can also filter by the following custom scope filters.
Note that these scope filters are derived fields and are not part of the core datafields.
| Scope Filter | Required Columns | Description |
|---|---|---|
| Is Residential | Billing Class | This filter allows for filtering of residential rows across PUB/EMA datasets. When Is Residential is True, filters for rows where the Billing Class is 'DOM'. When False, filters for rows where the Billing Class is 'NON' |
| District Number | Postal Code | Uses the first 2 digits of the postal code to map to a district number (eg. postal code 67xxxx maps to District 23) |
| Region Name | Postal Code | Uses the postal code to identify the geographical region associated with the data. (eg. West/North) |
| Planning Area Name | Postal Code | Uses the postal code to identify the specific planning area associated with the data. (eg. Sembawang/Punggol) |
| Subzone Name | Postal Code | Uses the postal code to identify the specific subzone associated with the data. (eg. Bugis/Bidadari) |