12 tests to find addresses using fuzzy matching

How good is your address validation software to find and validate addresses using fuzzy matching?

What is fuzzy address matching?

Finding the right address is crucial for a great user experience. It removes as much friction from checkout process as possible. The problem is that users often make mistakes, such as the common "fat finger" typo. To resolve this problem, address providers typically use fuzzy string searching techniques to create approximate address matching rather than exact matching.

Many address providers claim to use fuzzy matching to suggest addresses, but are they any good? Let's conduct tests and observe how well Addy can match and lookup postal addresses.

Baseline Address Coverage Tests

To start the experiment, let's verify that valid NZ addresses are returned by using the NZ Postal Address File (PAF) as the authoritative source for delivery addresses. You may be surprised that a number of providers doesn't have full address coverage.

User Input Addy Output
123A Bell Road Lower Hutt 123A Bell Road, Waiwhetu, Lower Hutt 5010
PO Box 123 Albany PO Box 123, Albany Village, Auckland 0755
275 Queen St Showing top 3 only:
  • Queen Street, Auckland Central, Auckland 1010
  • 275 Queen Street, Pukekohe 2120
  • 275 Queen Street, Richmond 7020

Notice that the address format is complete with suburb and postcode.

Fuzzy Address Matching

The following examples are common address input mistakes often seen in production log and data cleansing & data matching literature:

User Input Addy Output
1. Spelling Mistakes
123 Avvenue Road
123 Avenue Road, Greenmeadows, Napier 4112
2. Missing Space
123Avenue Road, Greenmeadows
123 Avenue Road, Greenmeadows, Napier 4112
3. Incorrect Type: Street vs Road
123 Avenue Street
123 Avenue Road, Greenmeadows, Napier 4112
4. Bordering / Nearby Suburb
8 Ruru Street, New Market
8 Ruru Street, Eden Terrace, Auckland 1021
5. Abbreviations
123 Ave Rd Grnmdws
123 Avenue Road, Greenmeadows, Napier 4112
6. Synonyms: Floor vs Level
Floor 2, 1 James Street
Level 2, 1 James Street, Whangarei 0110
7. Unit, Flat or Apartment vs Letter
Unit 1, 50 Sandspit Road
50A Sandspit Road, Cockle Bay, Auckland 2014
8. Number vs Letter
2/50 Sandspit Road Waiuku
50B Sandspit Road, Waiuku 2123
9. Extra Words (e.g. Front Door, Department Name)
Sales Department, 275 Queen Street, Auckland
275 Queen Street, Auckland Central, Auckland 1010
10. Swapped Letters
123 Avenue Raod
123 Avenue Road, Greenmeadows, Napier 4112
11. Sounds Like (e.g. Wellyington)
1 Alexander Street, Graymouth
1 Alexander Street, Greymouth 7805
12. Tokenisation (Different Input Order)
Avenue Road 123 Greenmeadows
123 Avenue Road, Greenmeadows, Napier 4112

Address Matching Challenge

As shown in the results above, Addy is a master at fuzzy address matching.

Here's a challenge: compare these tests with your address provider and see how well they can verify addresses with seemingly simple, yet common, user mistakes.

Get in touch if you have any suggestions on improving matching accuracy or even produce harder tests to throw at Addy.

Show more blogs