upvote
Yea same, then I realized they're not free either :(

The differences aren't too bad, I diffed [1] the USPS Puerto Rico sample with Census ZTCA 2026 [2]. I think I'll just stick Census, simpler model too for data analysis too, if I assume boundaries never change. :) Interestingly, I also learned ZIP Code™ is also trademarked.

[1] https://geojson.tools/?url=https%3A%2F%2Fgist.githubusercont...

[2] https://www2.census.gov/geo/tiger/TIGER2026/ZCTA520/

reply
Back in the 1980s I built my own shapefiles from Census data. Not just zip codes but carrier routes.
reply
wait how can ZIP code boundary lines not be free information, that's totally wild, how do you then even know what ZIP code to use if you can't look it up...

what next paying for knowing street names or house numbers??!??

reply
> how do you then even know what ZIP code to use

There has always (since the late 90s) been a free look up webpage:

https://tools.usps.com/zip-code-lookup.htm

The data used to be available on CDROM (back in the 90s) but moved to an API in the early 2000s. Until August 2026, you used to be able to look up addresses for free.

To get the biggest discount on postage (one place I worked at mailed about 3k envelopes per month) you have ZIP+4, to pre-sort the mail and print a bunch of stuff on that barcode [0]. Next time you get an envelope, look at the barcode on the bottom.

https://en.wikipedia.org/wiki/Intelligent_Mail_barcode

0 - doing it that way saved about $450/month versus not doing any of their work for them.

reply
Other ways to save costs:

Through folding: ounces flat in a 9x12 is $1.98; folded in a #10 it's $1.11. Square envelopes pay $0.49 extra.

Print package labels online: a 12 oz package coast to coast is $13.65 at the counter, $8.95 through USPS's free Click-N-Ship.

Keep boxes at or under 12x12x12. Since July, anything bigger is billed at volume ÷ 139 pounds if that exceeds its weight.

I've been building an (unofficial) searchable reference to USPS's rules and prices. The presort page is here: https://postalref.com/guides/presort

reply
> The data used to be available on CDROM (back in the 90s) but moved to an API in the early 2000s. Until August 2026, you used to be able to look up addresses for free.

What was the reason for the 2026 change to make it non-free? Some "government should be run like a business" (and therefore charge for services) BS, or was there some kind of abuse or privacy issues they were trying to limit?

reply
My university used to get copies of the CDs in the 1990s. I think they came out quarterly. You had to pay for the CDs, but the data was free. We bought one copy and put it on a server for everyone to use.

All governments provide some services for "free" and charge for others. Sometimes it makes sense, other times it really is BS.

reply
Mostly as a commercial shift under the new board of governors that are concerned on financials (except when it comes to throwing away new efficient mail sorting machines ahead of an election).

They spun it as supporting the new RestAPI based system they put in place, it does have more efficient rate limiting, and some controls like Mailer ID verification (able to tie who makes a request for a label to that actual label, etc.) that are supposed to help with fraud.

reply
Zip codes do not have clear boundary lines. A zip code is a collection of postal routes, and their borders tend to move about.

This isn't the USPS charging for existing data. They created a new data set that's only relevant to data brokers, and are charging for it.

reply
> Zip [..] collection of postal routes

this in itself is quite unusual/seem kinda not clever

because now you are exposing a "implementation detail" about how you deliver the mail now to people in a way which is hard to change (or at least high friction for the people living there). But you should be able to change your postal routs ad-hoc whenever needed.

At the same time you lose many of the "dual-use" benefits many other countries get from it.

Like often (outside of the US) "zip" codes:

- are used for mail disambiguation (in combination with city/region and street names)

- cover (very very very roughly) a similar amount of people

- hence can be used for polls, statistics etc. etc.

- and due to not being to narrow scoped disclosing your zip code doesn't feel like major privacy invasion, so you actually get data for polls where e.g. your customers are from by asking at the checkout if they are willing to tell you their zip code

- are often also used for all kinds of administrative area scoping (not all, e.g. not voting areas or zoning laws)

so the us using a collection of postal routs which kinda somewhat but not maps to boundary lines seem like a major lost opportunity

reply
And yet, administrative boundaries should be free.

Census tracts are, but those don't align to addresses in any meaningful way.

How are we to improve our Zones if the Zone Improvement Plan (ZIP) Code is not readily available?

reply
Iirc when I worked with these in the past ZIP codes did not map cleanly to boundaries, hence the ZCTAs. Zip codes are sometimes assigned to points, lines, they can overlap, and other weird arcana because they defined mail routes rather than tesselating areas.
reply
That they define points makes them useful sometimes for e.g. US sales tax calculation software, though with all things it is lossy
reply
This is a good example of the hardest part of data modeling. Understanding what the thing is that you're modeling actually is.
reply
deleted
reply