What are the most up-to-date source for US Zip Code boundaries?
My first thought was TIGER, whenever that comes out, but then I thought that the Postal Service might be a better bet.
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It only takes a minute to sign up.Sign up to join this community
This question has been converted to Community Wiki and wiki locked because it is an example of a question that seeks a list of answers and appears to be popular enough to protect it from closure. It should be treated as a special case and should not be viewed as the type of question that is encouraged on this, or any Stack Exchange site, but if you wish to contribute more content to it then feel free to do so by editing this answer.
Zip Codes are not polygons, and therefore do not have boundaries. Zip Codes are lines (delivery routes) or points (Post Offices). See the FAQ on the old Census Bureau website and the paper Zip Codes are Not Polygons for details.
That being said, when I need to use Zip Codes the first place I look is at the ESRI data that used to come on CDs with ArcView/GIS, but is now available online at Esri Data & Maps.
Maponics provides ZIP Code Boundaries and updates them each month with data directly from the USPS (and in fact, we are the only ZIP Code data provider that the USPS refers its customer to). While it is true that the data from the USPS is not in the form of geographic boundaries, we use numerous methods and algorithms to create boundaries from carrier routes and other data. The results are the most current available and can be purchased or licensed (with monthly or quarterly updates included) in a variety of GIS formats.
A five-digit ZIP code covers an arbitrary collection of delivery points (addresses). The USPS is the sole determiner of what ZIP code is assigned to what address, so they are the best source of current and correct data, which changes monthly. Cheap sources of current data are vendors like Semaphore Corporation.
Addresses within a ZIP code are assigned to numbered delivery routes. Addresses along the route are visited in a specific order, however there is no guarantee what path is taken by the mail carrier between two points along the route, so attempts at plotting routes as lines (or plotting all routes in a ZIP as a collection of lines) can't always be accurate.
Because ZIP codes are collections of points, the concept of "boundary" is ambiguous. It might mean computing the minimum rectangular bounding box enclosing all the addresses in a ZIP, or using a Graham scan to compute a "tighter" polygon, or using Lloyd's algorithm to polygonize a map, but how to choose the "best" boundary isn't always clear as shown in these 3 different boundaries for 5 points.
Since all addresses for a ZIP will be served by a single post office, it's tempting to start with that office's city boundary as the encompassing border for all ZIP codes served by that office, but exceptions occur: for example, a post office will serve ZIP codes outside the city, such as in unincorporated towns. Small towns often don't have street delivery; everything for a ZIP code might go to post office boxes at one location. And just over 100 "unique" ZIP codes are reserved for schools and businesses at a single location.
You can download shape files for 2019 Zip Code Tabulation Areas at no cost from https://www.census.gov/cgi-bin/geo/shapefiles/index.php?year=2019&layergroup=ZIP+Code+Tabulation+Areas
However, these are ZCTAs, and the overlap between ZIP codes and ZCTAs is only 80% or so.
As Don points out, the US Postal Service makes available their detailed delivery routes with zip code, carrier route and zip+4 detail for every truck route. The USPS web site lists this data as their Zip+4 Product and it is available for yearly license. Conversion of this address-by-address detail into ZIP code (and Carrier Route) polygons is a somewhat sophisticated GIS problem, but with accurate geocoding, the polygon boundary definitions become visually obvious and algorithmically derivable. Other GIS competitors also provide the current USPS ZIP code polygons for free viewing or for paid download at much more reasonable rates.
US Zipcode Boundaries API: www.boundaries-io.com
Above API shows US Boundaries(GeoJson) by zipcode,city, and state. you should use the API programatically to handle large results.
disclaimer, I do work for this company.
I did a big project where I developed data driven pages based on combined zip codes polygons that developed into larger Areas, then into regions. I got my data from US census B for free. If you have access to HISP Gold there is a Feature Class dataset with all the Zip codes as well. I have used this.
Be careful when using these polygons as they do not cover the whole US. Federal, State parks, large bodies of water are not covered. Some Zip code polygons jump across boundaries while others are not attached to one another. I had one zip code with four different polygons miles apart inside the Chicago area which through me for a loop.
AND also provides parcel-based ZIP code boundaries. They have created a seamless boundary file for ZIP+4 codes using parcel data and their own proprietary street data. They have written algorithms to aggregate parcels based on their ZIP+4 into a single poly, merged with the street centerlines and eliminate the gaps from easements and public/open lands. The result is a boundary set with 80+% coverage (in some areas ZIP+4 isn't used and in others parcel boundaries are not available). This ZIP+4 boundary data is then used to create 5 digit ZIP boundaries as well. Pricing is not provided so you'll have to contact them for more info. Its likely that the data will be available on the Esri marketplace soon. https://www.and.com/and-zip4-code-boundaries/