Skip to main content

Water Consumption

The water consumption dataset is based on actual or estimated monthly water meter readings collected by SP Services.

Dataset Update Frequency​

DatasetUpdate Frequency
Water ConsumptionMonthly

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
info

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).

info

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.

info

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.

info

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.

info

This column was only added after Sep 2020 and will be null prior to that date.

info

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.

info

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.

info

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.

caution

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 categoryUEN masking policyAccount Holder Name masking policy
NRIC/FINsMaskedMasked
Valid UENsUnmaskedUnmasked
Invalid (legacy) UENsUnmaskedMasked

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 FilterRequired ColumnsDescription
Is ResidentialBilling 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 NumberPostal CodeUses the first 2 digits of the postal code to map to a district number (eg. postal code 67xxxx maps to District 23)
Region NamePostal CodeUses the postal code to identify the geographical region associated with the data. (eg. West/North)
Planning Area NamePostal CodeUses the postal code to identify the specific planning area associated with the data. (eg. Sembawang/Punggol)
Subzone NamePostal CodeUses the postal code to identify the specific subzone associated with the data. (eg. Bugis/Bidadari)