ZIP Code vs ZIP+4: What Is the Difference and When Does It Matter?
Everyone knows 90210. Almost nobody knows 90210-2812. I did not, until I had to clean a mailing list of 40,000 addresses and learned the difference between a ZIP code and ZIP+4 the expensive way: thousands of rows with invented 4-digit endings that meant nothing at all.
Here is the difference, digit by digit, and the part that actually matters if you work with address data.
The 5-digit ZIP code: the part everyone uses
The ZIP code (Zone Improvement Plan) arrived on July 1, 1963, and every digit has a job. The first digit represents a group of states, with numbers increasing as you move west: 0 covers the Northeast, 9 covers the West Coast. The second and third digits narrow it to a sectional center facility, the regional mail-sorting hub. The fourth and fifth digits get you to a specific post office or delivery zone within a city.
That 5-digit code is the official, required part. It is what routes your letter to the right destination post office for final sorting and delivery. Everything after it is optional.
What the +4 adds
In 1983 the USPS introduced ZIP+4: the same 5 digits, a hyphen, and 4 more digits that pinpoint a segment inside the 5-digit delivery area. Those 4 digits typically identify a city block, an office building, a floor, a group of apartments, an individual high-volume mail receiver, or a post office box. In dense areas they can even indicate which side of the street a building sits on.
So 90210 gets your mail to Beverly Hills. The -2812 gets it to the right block, building, or box. That is the whole difference: 5 digits name the post office, 9 digits name the delivery segment.
Does the +4 still matter?
Honestly? Less than it used to. Modern mail is read by multi-line OCR that determines the ZIP from the address almost instantly and prints an Intelligent Mail barcode along the bottom of the envelope. One postal-nerd writeup puts it bluntly: adding the +4 today will do nothing to speed up ordinary delivery times.
But bulk mailers still care, and this is where the +4 earns its keep. ZIP+4 codes are part of USPS CASS certification, and using them on presorted mail and EDDM campaigns qualifies you for postage discounts. More precise codes mean fewer times a piece is handled, which means fewer misdeliveries. If you mail at volume, the +4 is real money. If you are addressing a birthday card, the 5 digits are plenty.
How to store ZIP+4 in a database
This is where I see the most damage, so let me be direct:
- Store it as text, never as a number. ZIP codes are strings that happen to be made of digits. The moment a spreadsheet or database treats 02139 as a number, it becomes 2139 and your data is corrupt. Keep the 5 digits, the hyphen, and the 4 digits as text.
- Keep the +4 in a separate column from the 5-digit base. Most workflows only need the 5-digit code, so normalize to 5 and keep the +4 alongside when it exists.
- Never use the +4 as a join key. The extra 4 digits identify delivery routes, and routes shift. A 9-digit code can change while the address stays the same. Five-digit codes also change, but rarely. Join on the 5-digit code and treat the +4 as enrichment.
- Do not invent +4s. A "-0000" placeholder is worse than a blank, because downstream systems will treat it as a real segment.
My rule of thumb: validate the 5-digit code strictly, and treat the +4 as a bonus you verify rather than a field you require. Most of the bad +4 data I have seen came from forms that demanded it and users who obliged with fiction.
Download the starter database and validate every 5-digit code in your list. Stored as text, leading zeros intact, no signup.
Download the free ZIP CSV
FAQs
Is a ZIP code 5 or 9 digits?
5. The ZIP code is the 5-digit number. ZIP+4 is the extended 9-digit form, and only the 5-digit part is required on mail.
Do I need the +4 for my mail to arrive?
No. Five digits are enough for delivery. The +4 helps the USPS sort bulk mail and qualifies mailers for postage discounts, but ordinary mail does fine without it.
What do the four extra digits identify?
A segment within the 5-digit delivery area: a city block, a building, a floor, a group of apartments, an individual high-volume receiver, or a post office box.
Can a ZIP+4 code change?
Yes. The extra digits track delivery routes, which shift over time. Five-digit codes change rarely by comparison, so never use the +4 as a database join key.
Should I store ZIP+4 as a number in my database?
Never. Store it as text in the format 5 digits, hyphen, 4 digits. Numeric storage drops leading zeros and corrupts codes like 02139.
Related: How to Validate ZIP Codes in Excel Without an API Formulas, Power Query cleanup, and the leading-zero problem. Where to Find a Free ZIP-to-County Crosswalk File Map every code to its county once your list is clean.