Address testing guides

Singapore Address Format: Streets, Unit Numbers and Six-Digit Postcodes

A Singapore form should not inherit a mandatory US state selector. Focus instead on preserving the unit number and keeping the postcode intact through editing, copying and import.

Format example

16 Sandilands Road
#03-12
SINGAPORE 546080

Format fixture, not a delivery address: the street and postcode come from a public UPU example. #03-12 is an added synthetic unit and has not been verified to exist. Do not mail to this example.

Read the address from street to postcode

The UPU Singapore guide places a six-digit postcode after Singapore. Its #13โ€“37 example identifies a floor and apartment; in our fixture, #03-12 follows that structure to mean floor 3, unit 12.

Treat this as a useful pattern, not a universal two-digit rule. Not every building needs a unit, and a real unit identifier may have a different length. Keeping supplementary address information is a separate task from checking postcode syntax.

Reference: UPU โ€” Singapore addressing guide

Map the fields without inventing a state

Put the street in Address Line 1 and #03-12 in Address Line 2. A single Street field can retain both as 16 Sandilands Road, #03-12. The comma is a presentation separator in this example, not a requirement for all postal labels.

Our tool uses Singapore for City, SG for the country code, and an empty Region. In your own form, hide an irrelevant state selector or allow it to be empty. Do not select an arbitrary US state just to pass validation. If a third-party form insists on a region, follow that systemโ€™s field instructions.

Store postalCode as a string and keep street and unit values as text. The JSON below is a hand-authored mapping fixture, not evidence of a postal lookup or a particular random generation run.

Field-mapping JSON

{
  "street": "16 Sandilands Road, #03-12",
  "city": "Singapore",
  "region": "",
  "postalCode": "546080",
  "countryCode": "SG"
}

Four regression cases worth keeping

  1. Enter #03-12 on the second line, save, then reopen. The hash, hyphen and leading zero in 03 should survive.
  2. Change 546080 to 54608 and 5460800. Both should fail a six-digit syntax rule. Restoring the original value proves only syntax, not delivery eligibility.
  3. Switch the country from the US to Singapore. Confirm the previous state is cleared in the submitted payload, not merely hidden on screen.
  4. Submit examples with and without a unit. An optional second line should not become mandatory for every Singapore address.

Verify a complete copy and export round trip

Open the linked Singapore generator and generate a record. Use the copy icon inside the address card and compare the copied street, unit and postcode with that record. Save it, then export CSV and JSON. Floors and units vary between runs: compare the same record across steps rather than expecting the exact #03-12 used here.

In JSON, check that postalCode is quoted and region is an empty string. CSV carries no column types, so explicitly import the postcode column as text in spreadsheet software. A Street value containing a comma must be read using proper CSV quoting; splitting a row at every comma is not a valid import strategy.

Keep the original input, exported file and re-imported values in a bug report. A screenshot alone can miss data loss that happens only during the second import.

Know what a passing test does not establish

These fixtures test layouts, field mapping and data transport. They do not establish that a unit exists, mail can be delivered, or a generated name belongs to an address. The Singapore generator maintains a small set of streetโ€“postcode examples and adds synthetic units; it is not a nationwide address database.

Its telephone field is currently empty. It offers no SMS, verification-code reception or live number lookup. For real deliveries, use recipient-confirmed information and postal services, not a format-test result.

Keep reading

Open address generator

International address form testing checklist

Data methodology and limits

Sources