After reading a story about the local situation with aging schools and consolidation that provided some population statistics, I went looking for data on Social Security benefits for the area's population. I found it but I need some data on zip codes. During my searching, I discovered that there's no free zip code except for the one that the census produced for a 1999 Census product. It seems as though it's not going to be updated.
I went to the US Postal Services website. You have to purchase the data. If you want the data for the entire US, it will cost you $900 per product. While I can understand the desire for the Post office to recoup their costs, it would seem like this key information about how citizens should be communicating would be free.
Another issue is the fact that zip codes change. I was looking at correlating historical data to the zip code. However, zip codes for particular geographic areas change over time. This makes it hard to correlate data to particular zip codes when there is data that goes back over a period of years. It makes me wonder if there some historical zip code that that can be purchased.
For example, Social Security publishes data broken down by the field office. The field office services particular zip codes. If a person's zip code changes, it's possible that they could change SS field offices. I don't if that's true, but it's a possibility.
In any event the 5 digit zip code data should be free and open to the public.