The ZIP Code Resources Page
This page serves as a guide for researchers interested in U.S. postal geography codes. It provides some general background information about ZIP codes and describes and links to various reference materials, data files, web sites, and other resources of interest to users wanting to work with ZIPs. This version focuses on the Census Bureau's 2000 vintage ZIP Census Tabulation Areas (ZCTAs), close cousins of ZIP codes. We place special emphasis on tools for linking ZIP (/ZCTA) codes to other geographies (such as counties, cities, metro areas) and to demographic information from the latest decennial census.
Free Demographic Data Reports by Zip Code. To download data for many specific zip codes at one time use our. Age in the Zip Code the Year 2010 U.S. Census Data: Census Data by ZIP Code Every 10 years, the United States government is required to count all of its citizens. This is a guide to the Decenniel Census.
General Information and Problems with ZIP Codes
Problems With Spatial Definition
- Aug 07, 2012 This post explains how to calculate income by zip code from Census 2010 data and provides some useful data sets. But since so many people want to view census data by zip code the census created a new statistical area called. Census Tract and Zip Code Area Shapefiles. To download shapefiles for 2010 census tracts and zip code tabulation.
- For population data,the US Census American Community Survey data (and decennial census data for 2000 and 2010) uses a number of geographies, including ZIP Code Tabulation Areas (ZCTAs), -- but ZCTAs are different from ZIP Codes, (Census also provides data on businesses, which are mapped and reportable at the mailing address/ZIP Code level.
- Jan 2, 2018 - select '5 Digit ZIP Code Tabulation Area- 860' (ZCTA) (ignore that. ZIP Code within each block was assigned to the entire census block as a.
ZIP codes are a very messy kind of geography. They were created by the U.S. Postal Service as a tool to help deliver the mail more efficiently. ('ZIP' is actually an acronym for 'Zone Improvement Plan', where 'Zone' is a reference to the 2-digit postal zones that were used by the post office prior to implementing nationwide ZIP codes back in the early 1960's. Because it is an acronym we always use the uppercase for it.) ZIP codes have been adopted by marketing people and by all kinds of other researchers as a standard geographic area, like a city or a county. We see maps of ZIP codes in telephone books and from commercial vendors that make us think of them as spatially defined areas with precise boundaries, similar to counties. But, from the perspective of the agency that defines them, the U.S. Postal Service, ZIP codes are not and never have been such spatial entities. They are simply categories for grouping mailing addresses. As such, ZIP codes do in most cases resemble spatial areas since they are comprised of spatially clustered street ranges. But not always. In rural areas, ZIP codes can be collections of lines (rural delivery routes) that in reality do no look much like a closed spatial area. In areas where there is no mail delivery (deserts, mountains, lakes, much of Nevada and Utah) ZIP codes are not really defined. You may see maps that show ZIP code boundaries that include such areas, but these are not post-office-defined official definitions. An area will not be assigned a ZIP code until there is a reason for it, i.e. until there needs to be mail delivered there. So the actual definition of a ZIP code 'boundary' is quite fuzzy at best, and a purely extrapolated guess (at what it would be if someone were to start receiving mail there) at worst. If you have an application that requires extreme geographic precision, especially in sparsely populated areas, then you need to avoid using ZIP codes.
How ZIP Codes Change Over Time
An important thing to keep in mind about ZIP codes is that they change over time. In some cases these changes can be quite dramatic, but more commonly they are small and subtle. When a ZIP codes changes its definition it does not change its name like a census tract. The ZIP code that was called '63301' in St. Charles county, Mo in 1985 was subsequently broken into first two and then three ZIP codes. These new codes were not called 63301.01, 63301.02 and 63301.03; they were called 63301, 63303 and 63304. So what is referred to as 63301 today represents about a third of the area that it referred to in 1985. The new code 63303 did not exist in 1985 and it has already changed its definition so that it now represents about half of the area it included when it was initially created (by splitting 63301 into 63301 and 63303; a few years later the initial 63303 ZIP was subdivided into 63303 and 63304.). What this means, of course, is that ZIP codes are really terrible units for doing any kind of time-series analysis unless you have some way of keeping track of all the changes over time. Otherwise, you may wind up concluding that there has been a dramatic downward trend in the population of 63301 since 1980, when in fact just the opposite is true. At least when you attempt a time-series study of 63304 it becomes apparent that this geographic entity did not exist before 1990.
What the world really needs to deal with ZIP code geography properly is a large geographic equivalency file relating ZIP codes to other relevant geographies with a time dimension. Instead, what we have is a pair of such equivalency files that relate ZIP codes to geographic entities as used for tabulating the 1990 and 2000 decennial censuses. The 1990 file uses ZIP codes as they were defined around July of 1991. (Because it takes a long time to do the research, it may be that the currency of the ZIP codes used varied somewhat from area to area.) In 2000 the Census Bureau had decided to adopt the new things they called ZIP Census Tabulation Areas (ZCTAs), which were really very similar to what they called ZIP codes for tabulating earlier censuses. The equivalency files we we are referring to here are the MABLE databases and corresponding Geocorr web applications which we'll be talking about in more detail below. For now, what we want to emphasize is that when we talk about ZIP codes (or ZCTAs) we really need to keep a time reference in mind. Just as when you work with census tracts you need to know whether you mean 1980 or 1990 tracts, or when you are talking about the countries of Europe — time is an important dimension.
You might think that what we should always assume is that if we do not specify a time, then we are probably referring to the most current definitions of ZIP codes, and that any reference materials should be periodically updated to reflect these definitions. Easier said than done, of course. This would be a huge task. But even if you could maintain all your lists with the latest definitions in some cases there are reasons why it may be preferable not to. This has to do with the fact that the Census Bureau tabulated the results of the last two decennial censuses to produce summary files describing these entities as they were defined at a certain point in time. The data tables on these files describe the characteristics of the residential ZIP codes as they were (more or less) defined at the time the census tabulations were prepared (circa July, 1991 for the 1990 census; Jan. 1, 2000 for the 2000 census.) 'More or less'? Yes — for the purposes of creating these tabulations in 1990 the Bureau had private vendors provide them with files that related each of the 1990 census blocks (the smallest geographic unit identified for each 1990 census return) with the then-current ZIP code definitions. The files created by these vendors were used to create a data product called the 'ZIP Block Equivalency Files' or 'STF3B Headers Files'. They define which geographic areas were used to approximate the ZIP code areas being summarized by the STF3B data tables. There is a built in 'fuzz factor' in this equivalency list since — while the Census Bureau has created census blocks so that they do not cross any other census-defined geographic unit — blocks can and do (frequently) cross ZIP codes. Typically, ZIP code 'boundaries' fall along back lot lines — they almost never split down the middle of a street. If they did, you would need to have two postal carriers — one from each of the two ZIP codes, travel the same street and deliver just to their side. Census blocks, however, almost always split down the middle of streets. As a result, blocks near the boundaries of ZIP codes typically split ZIP codes. If you picture the classic rectangular city census block, it is an area bounded by portions of 4 city streets. Each of those street faces has its own street name, address range and ZIP code, and it is quite common for the ZIP codes for the 4 streets to not all be the same. When this happens, the Census Bureau (or its vendor agents in 1990) assigns the entire block to a single ZIP/ZCTA as used for tabulating the census. So a city block might have 12 households with 40 persons in a census block living in ZIP A and 6 households with 15 persons living in ZIP B; for the sake of doing the census tabulation, all 18 households and 55 persons will be tabulated as part of ZIP A. We sometimes describe this phenomenon as 'rounding off the ZIP data to blocks'. These rounding errors are unbiased and may cancel each other out to some extent, but they are still an important source of potential error. In the block to ZIP equivalency files prepared by the vendors in 1990 and assigned by the Census Bureau in 2000, each census block was assigned to one and only one ZIP or ZCTA. The results of these assignments were used in creating the Master Area Block Level Equivalency ('MABLE') files used in the Geocorr web applications.
Most of the various files that we reference from this page will be dealing with ZIP/ZCTA codes as they were defined for the purposes of tabulating the 2000 census.
Failure to Conform to Other Geographic Schemes
Another important and exasperating characteristic of ZIP codes is that they do not conform to any other geographic schemes. Most geographic units are part of some hierarchical system, and frequently they will recognize other boundaries such as counties or states. But ZIP codes follow no rules whatsoever with respect to other geographies. ZIP codes can and do cross state lines (rarely, but just enough to cause some problems and confusion), county lines (about 10% of ZIPs are in more than one county), political jurisdictions (cities, congressional districts), metro areas, etc.
This aspect of ZIPs (specifically as defined for the 1990 census) and several other useful bits of information about them are discussed in the geographic glossary file provided with Geocorr.
ZCTAs
ZCTAs (ZIP Census Tabulation Areas) are what the U.S. Census Bureau is now using as an alternative to ZIP codes as geographic entities for publishing data based on actual ZIP codes. A 5-digit ZCTA (there are 3-digit ZCTAs as well) is typically nearly identical to a 5-digit U.S.P.S. ZIP code, but there are important distinctions. The Census Bureau has created a web site where they explain some of the differences:
- In most instances the ZCTA code equals the ZIP Code for an area.
- In creating ZCTAs, the Census Bureau took the ZIP addresses will end up with a ZCTA code different from their ZIP Code.
- Some ZIP Codes represent very few addresses (sometimes only one) and therefore will not appear in the ZCTA universe.
- The term ZCTA was created to differentiate between this entity and true USPS ZIP Codes.
- ZCTA is a trademark of the U.S. Census Bureau; ZIP Code is a registered trademark of the U.S. Postal Service.
- The Census Bureau does not have U.S. Postal Service ZIP Code boundary files, nor do we have information or possible sources of such files.
Note that ZCTAs are new for 2000; there are, strictly speaking, no historical ZCTAs for doing any time-series analysis. The Bureau published results of the 2000 Census aggregated to these geographic units on Summary Files 1 and 3. Unlike the ZIP codes used for tabulating earlier censuses, these ZCTA areas are spatially complete and you can easily do mapping with them. You can download ZCTA boundary files from the Census Bureau's cartographic boundary files page.
Special ZCTAs: XX and HH
The Bureau has created special XX ZCTAs (ZCTAs with a valid 3-digit ZIP but with 'XX' as last 2 characters of the code — such as '631XX') which represent large unpopulated areas where it made no sense to assign a census block to an actual ZIP code. Similarly, HH ZCTAs such as 633HH (the H stands for Hydrography, we assume) represent large bodies of water within or bordering a 3-digit ZIP area. There are typically no persons or households in an XX or HH ZCTA. Applications that use ZCTA codes for population-based applications (as opposed to spatial based) can generally ignore these special ZCTAs.
The MCDC's georef.zcta_master Data set
You can think of the zcta_master data set as a very large table with over 33,000 rows and 60 columns. Each row corresponds to one State/ZCTA combination. The columns describe the ZCTAs in several ways. To see a complete detailed listing and explanation of these columns (or 'variables') see the metadata page for this data set. Most of the columns provide information about what geographic entities intersect with the ZIP (ZCTA). Here is a display of one row (observation) from the zcta_master data set, showing the entry for ZIP/ZCTA 65201 (basically, downtown Columbia, Mo).
This output is a PDF file generated using the Dexter web extraction program that involved only three simple parameter entries on our part. We specified that we wanted our output in PDF format; we specified a filter of the form 'zcta5 equal to (=) 65201'; and we specified that we wanted ZCTA5 to be used as the ID variable to appear as the first item in each row of the display.
What can you say about ZIP 65201 based upon these data? You can say that it it is primarily in Boone County, MO (FIPS code 29019) and secondarily in Callaway county (FIPS code 29027). The pctcnty variable tells you that 99.8% of the people who lived in this ZCTA at the time of the 2000 census also lived in the primary county (Boone). We can also see that the ZIP is mostly (78.4%) in the city (place, using the census terminology) of Columbia, which has a FIPS code 15670 (variable PlaceFP). The variables PlaceFP2 and pctplace2 tell us that the remainder of the ZIP (i.e. the part that is not within the city of Columbia) is in an unincorporated area.
Another series of codes identifies various metropolitan and urbanized areas associated with the ZIP. We see that 65201 has 89% of its population living in the Columbia, MO urbanized area and 99.8% in the Columbia MSA (both the old 2000 MSACMSA version and the current core-based version, CBSA).
We have a number of spatial data items associated with the ZCTA; we have land area in square miles, the 'internal point' coordinates for the ZCTA as published with the 2000 census data, and a custom coordinate pair obtained by taking the population-weighted averages of the internal point coordinates of all the census blocks that were within the ZIP (stored as popcentrLat, popcentrLon). And finally we have a series of key demographic and economic status indicators taken from the 2000 census tables: total population and housing units, median household income, mean poverty ratio and average housing value. Each of the last 3 have the actual value as well as a corresponding index value that tells you how it compares to the value for the entire country. We see that 65201 had a median household income value of $26,955 and that this was only 64.2% of the value for the U.S. as a whole. This reflects the fact that this area, which includes at least portions of 3 university campuses, is heavily inhabited by college students — who typically have lower incomes and smaller households. Note that the other two economic measures also indicate an area that is below average in terms of economic wellbeing, but that those measures have indices in the low 80s, which would indicate the area is not really a slum.
Accessing the ZCTA_Master Dataset
Go to the Uexplore home page. Choose Geography/GIS as the major data category, and then choose georef as the filetype. This takes you to Uexplore referencing our geographic reference data sets collection. Click on the Datasets.html file to get a directory page with metadata and links to the subcollection. The zcta_master data set is the second one listed (this could easily change in the future). Click on its name to select it and to invoke Dexter. Follow the detailed metadata link at the top of the Dexter query form. From that page there is another link to a separate page where we go into more detail about each variable.
If you just want to grab all rows and all variables in CSV format, just go to Section III. Choose Variables and click the box that says you want to keep all the variables. Then click one of the Extract Data buttons. The result is a CSV file that is quite large — 15 mb. We have stored a permanent copy of this CSV file in the georef directory and you can access it directly here.
Relating ZCTAs to Counties
One of the most frequently asked questions regarding ZIP codes (ZCTAs) is: 'If I know the ZIP code of my [customer/survey respondent], how can I tell what state and county they live in?' For these kinds of questions, we build things called equivalency files or correlation lists that show the relationship between two sets of geographic codes. Using the geographic header data provided on the block-level records on the 2000 Census Summary File 1 series, we were able to build such an equivalency file that related all combinations of state 5-digit ZCTAs to counties in the U.S. (50 states + DC). We stored the results in a tabular file in our data archive. This file can be accessed via the web using our Uexplore/Dexter interface, or browse the complete collection of our correlation list data files here. From this page you can access the ZCTA-to-county correlation list data set (or you can take the shortcut to the Dexter application to access this data set by simply clicking on the data set name/link we just provided).
From here, just select the output format(s) of interest from Section I. Choose HTML in addition to the default CSV format. In Section II. Choose rows (observations), you can tell the application which rows you are interested in. The rows in this data set correspond to ZCTAs crossed with counties. Some typical filters that you might want to apply are:
- rank = 1 (to only select primary counties associated with a ZCTA)
- state = 10 (to select only cases in the state of Delaware, FIPS code = 10)
- stab in list mo:il (to select geography in Missouri and Illinois)
There is no need to enter any filters, if you want the entire data set. There is also a box where you can enter a number that will limit the number of observations/rows on output. To just see what the data looks like you might want to enter 100 in this box to see the first 100 rows of the table (any filters will be applied first).
Now scroll down the page to section III. Choose columns (variables) . We suggest you click on the box indicating that you want to keep ALL the columns. Now click on the Extract Data button to run the query. It should take a few seconds for your results to be displayed in the form of an output menu page that lets you view your multiple-output-file results. Click on the HTML Report link to see your output in HTML format, or on the Delimited File link to see your delimited file.
Assuming you entered the Delaware filter (state = 10) in section II, your first output row should contain the following variables and values:
- state=10: The FIPS state code for Delaware is 10.
- zcta5=19701: This is the first ZIP/ZCTA code in Delaware.
- county=New Castle DE : The name of the county followed by the state postal abbreviation, so we know what county 19701 is in.
- pop100=31,699: This is the population (complete count, not sample estimated) living in the ZCTA5/county intersection, per the 2000 census.
- afact=1: This is the allocation factor which reports the portion of the total ZCTA population that lives in the county. Always rounded to 1 decimal place. This value will be 1 on many/most records indicating the ZCTA is entirely within the county. See rows 36 and 37 (ZCTA 19938) for example of where a ZCTA is in two counties and how this is reported.
- rank=1: The counties are assigned a rank based on descending pop100 values within the ZCTA. A rank of 1 means this is the 'primary county' for the ZCTA, i.e. the one with the largest share of the ZCTAs population.
- fipco=10003: The FIPS state+county code for New Castle county, Delaware.
- stab=DE: The state postal abbreviation.
Census Data By Zip Code Download Code
Clearly, what you have here is a tool for assigning county codes to your customer file using ZIP/ZCTAs as the link. An analysis we did using 1990 census data indicated that if you assigned the primary county code to a record based on the ZIP code you would be right over 98% of the time. (See below for a discussion of an alternative resource that can help you find counties for ZIP codes that are not also ZCTAs.)
Geographic Header Files with ZCTAs
The MCDC has created a directory on their public census data server which has a complete set of geographic header data as distributed with the Summary File 1 data from the 2000 census. These header records have information about the geographic entities summarized on the SF1 data files. There are a great many such entities, and they range from state and county level records all the way down to 2000 census blocks. There are over 9 million of the latter entities nationwide. There are two reasons that people interested in ZIP/ZCTA geography may be interested in this collection.
- There are records (observations) on these data sets that contain data specifically related to the ZCTA-within-state and ZCTA-within-county summary levels (SumLev codes 871 and 881, resp.) These observations contain the 2000 population and housing unit counts from the census as well as the land and water area, an internal point latitude, longitude coordinates,etc.
- At the census block level (SumLev=101) all the other geocodes are reported (such as census tract, place, county subdivision, etc.) along with the ZCTA code. (Actually there are two fields/variables called ZCTA on these files/data sets: ZCTA3 and ZCTA5 -- when we reference ZCTA here we are referring to the full 5-digit version; 3-digit ZCTAs are just 3-digit ZIP code areas.)
You can access this collection of geographic reference files here. There are two files per state, with the block level records stored separate from all the other geographic levels. You will probably find the xxgeos files more useful, since they contain summaries for ZCTAs. The block-level files are useful for relating ZCTA geography to other levels, but for this kind of analysis you will probably want to use the Geocorr 2000 application (see below), which makes use of a database that was built largely from these header files.
If you followed the link above to explore the xxgeos data directory, you can now click on the file degeos.sas7bdat. To extract data for the ZCTA-related data you have to specify that you just want rows where the geographic summary level code (SumLev) is either 871 (ZCTA within state) or 881 (ZCTA within county). This means that in section II. Choose rows you should select SumLev as the value of variable/column, In List as the value of operator and then type in the value list '871:881' in the text entry box in the value column. In III. Choose columns you should select the ID variables SumLev, State, County and ZCTA5 and all the numerics. If you chose HTML as one of your output formats, you will generate a report that looks like this:
Listing of Extracted Data
Obs | SumLev | State | County | ZCTA5 | AreaLand | AreaWatr | Pop100 | HU100 | IntPtLat | IntPtLon | LandSQMI | AreaSQMI |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 871 | 10 | 19701 | 72747809 | 988990 | 31699 | 11757 | 39.598203 | -75.699452 | 28.09 | 28.47 | |
2 | 871 | 10 | 19702 | 71855667 | 454665 | 44836 | 17117 | 39.626297 | -75.713864 | 27.74 | 27.92 | |
3 | 871 | 10 | 19703 | 10075188 | 0 | 15312 | 7070 | 39.800945 | -75.464550 | 3.89 | 3.89 | |
4 | 871 | 10 | 19706 | 6615012 | 0 | 1623 | 629 | 39.573744 | -75.592043 | 2.55 | 2.55 | |
5 | 871 | 10 | 19707 | 31559283 | 53145 | 15209 | 5407 | 39.784014 | -75.685864 | 12.19 | 12.21 | |
6 | 871 | 10 | 19709 | 201315067 | 3173333 | 19583 | 6808 | 39.479602 | -75.693201 | 77.73 | 78.95 | |
7 | 871 | 10 | 19710 | 406732 | 0 | 38 | 13 | 39.788562 | -75.588815 | 0.16 | 0.16 | |
8 | 871 | 10 | 19711 | 73325522 | 0 | 55760 | 19375 | 39.700561 | -75.743103 | 28.31 | 28.31 | |
9 | 871 | 10 | 19713 | 34115597 | 0 | 31259 | 12577 | 39.669211 | -75.717961 | 13.17 | 13.17 | |
10 | 871 | 10 | 19720 | 99213137 | 174172 | 55539 | 21488 | 39.669219 | -75.590030 | 38.31 | 38.37 | |
11 | 871 | 10 | 19730 | 1215263 | 0 | 316 | 142 | 39.456484 | -75.659768 | 0.47 | 0.47 | |
12 | 871 | 10 | 19731 | 369987 | 4142 | 104 | 47 | 39.518164 | -75.576564 | 0.14 | 0.14 | |
13 | 871 | 10 | 19732 | 74349 | 0 | 54 | 34 | 39.794496 | -75.574338 | 0.03 | 0.03 | |
14 | 871 | 10 | 19733 | 159378 | 0 | 124 | 52 | 39.555794 | -75.650585 | 0.06 | 0.06 | |
15 | 871 | 10 | 19734 | 213869669 | 892861 | 5858 | 2185 | 39.386601 | -75.668010 | 82.58 | 82.92 | |
16 | 871 | 10 | 19736 | 2225469 | 2036 | 63 | 26 | 39.790911 | -75.649341 | 0.86 | 0.86 | |
.....rows omitted here .... | ||||||||||||
127 | 881 | 10 | 10001 | 19963 | 136695730 | 1114775 | 6512 | 2856 | 38.940868 | -75.427962 | 52.78 | 53.21 |
128 | 881 | 10 | 10005 | 19963 | 126584164 | 1561166 | 8720 | 3858 | 38.902285 | -75.409684 | 48.87 | 49.48 |
129 | 881 | 10 | 10001 | 19964 | 23170474 | 151343 | 1117 | 423 | 39.098772 | -75.739431 | 8.95 | 9.00 |
130 | 881 | 10 | 10005 | 19966 | 228509679 | 991118 | 17768 | 11539 | 38.601355 | -75.241103 | 88.23 | 88.61 |
131 | 881 | 10 | 10005 | 19967 | 2355508 | 0 | 462 | 258 | 38.545970 | -75.111753 | 0.91 | 0.91 |
132 | 881 | 10 | 10005 | 19968 | 145702038 | 2032964 | 6552 | 3391 | 38.772648 | -75.286658 | 56.26 | 57.04 |
133 | 881 | 10 | 10005 | 19970 | 25753027 | 2578 | 4481 | 3885 | 38.550440 | -75.099282 | 9.94 | 9.94 |
134 | 881 | 10 | 10005 | 19971 | 53613166 | 288759 | 10085 | 12114 | 38.711512 | -75.096772 | 20.70 | 20.81 |
135 | 881 | 10 | 10005 | 19973 | 201080075 | 1073931 | 21416 | 8759 | 38.643248 | -75.611025 | 77.64 | 78.05 |
136 | 881 | 10 | 10005 | 19975 | 77474565 | 1709540 | 6408 | 4788 | 38.463751 | -75.156423 | 29.91 | 30.57 |
137 | 881 | 10 | 10001 | 19977 | 172889529 | 6249294 | 10400 | 4158 | 39.290689 | -75.588323 | 66.75 | 69.17 |
138 | 881 | 10 | 10003 | 19977 | 46264558 | 67923 | 3123 | 578 | 39.332977 | -75.628061 | 17.86 | 17.89 |
139 | 881 | 10 | 10001 | 19979 | 6023487 | 0 | 592 | 232 | 39.046100 | -75.571851 | 2.33 | 2.33 |
140 | 881 | 10 | 10001 | 19980 | 138082 | 0 | 75 | 22 | 39.070270 | -75.570575 | 0.05 | 0.05 |
141 | 881 | 10 | 10001 | 199HH | 0 | 529249574 | 0 | 0 | 39.069866 | -75.413550 | 0.00 | 204.34 |
142 | 881 | 10 | 10005 | 199HH | 0 | 654261354 | 0 | 0 | 38.655425 | -75.174584 | 0.00 | 252.61 |
ZIP Code Master Dataset and State ZIP Code Directories
This is an excellent resource if you are looking for basic geographic information about ZCTAs (2000 vintage for now) and ZIP codes. The emphasis is on names associated with the codes (both 'preferred' and alternate) and location (city, state, county). Latitude, longitude coordinates are also provided. Access the data at http://federalgovernmentzipcodes.us/, where you can download it in CSV, Excel, or mySQL format. The data were revised using USPS updates through 11-15-10.
The files have the following key features:
- One (or more) records for every ZIP code recognized by the US Postal Service. ZIP codes that can have multiple names associated with them have multiple records, one for each name.
- Latitude, longitude coordinates are provided for each ZIP.
- For ZIPs that correspond to ZCTAs there are total population and total housing unit counts, as well as a Median Family Income figure (2000 Census data). Also land and water areas.
- The City field is somewhat misleading. It it not really the city in which the ZIP is located in the rigrous sense, but rather in the general area sense. For example, almost all the ZIPs in St. Louis County, MO have a value of 'SAINT LOUIS' for City but most are actually better linked with the name of the smaller city where they are located. Thus City is really the name of the main post office.
- Documentation is skimpy, relying on the field names with no in-depth explanations. The field 'Income' is not described any further than its name, and we only know that it is actually a median family income figure because we looked it up in our census data.
- ZIPs are identified by type, so it is easy to distinguish 'standard' ZIP codes from special types such as Unique and PO-Box-only.
- The ultimate source of most of this data is the USPS, and ongoing maintenance is indicated. The postal data (as opposed to the 2000 census ZCTA items) are current as of 11/10.
- The Missouri Census Data Center has converted these data to a dataset in our public archive. We restructured it a bit, getting rid of the redundant records that provided only 'secondary' names for the ZIPs. Instead, we took all these alternative names and combined them into a new field/variable called altnames. You can access this dataset, georef.zipcodes, using our Uexplore/Dexter application.
Relating ZIP Codes to Counties
Are we repeating ourselves? Didn't we already deal with this above in the section on ZCTAs? No, in that section we talked about relating ZCTAs to counties, not ZIP codes. As already noted, there are important differences.
ZCTAs get old (frozen at the time of the latest census) and do not include proxies for non-residential ZIP codes such as PO-box-only ZIPS and 'unique' ZIPS assigned to large companies or other organizations. These caveats can easily result in being unable to link 10% or so of your ZIP code file when using the tools described above for ZCTAs. We now have an alternative source that can help us get a more complete list. That source is the ZIP codes master file described in the previous section. It contains data for real ZIP codes, not ZCTAs, and it contains a field identifying the county in which the ZIP is (all or mostly) located. Unfortunately, it only contains the name and not the FIPS code for the county. So it's not the perfect solution. But it should be good enough for a lot of applications.
To use the master ZIP codes file on a one-at-a-time manual basis you can simply generate one of the directories we pointed to above and do a manual lookup of each ZIP. To automate the process you will need to generate a file containing the ZIP code and the county. The tool for doing that is once again Dexter. Go to the pre-defined query file. You should be viewing a Dexter query form page that has been pre-coded to access the zipcodes dataset in the georef data directory. The query as defined requests output in the form of a CSV file (no report file, no database file); no filtering (you get the entire country); and relevant variables selected (you can ask for more, or less by simply modifying the select lists in section III of the form). You can, if you want and you know how, modify the query any way you want. But all you have to do is click on one of the Extract Data buttons. Then when your output menu page is displayed, you'll need to click on the link(s) to your output file(s). The only hard part will be figuring out how you will use the resulting lookup table file to do the actual encoding.
Geocorr: Generating ZCTA Geographic Equivalencies
The Geocorr 2014 web application is an updated version of the original application. Both applications do essentially the same thing, but the newer version uses census 2000 geography and later, while the earlier version used 1990 geography. Geocorr allows you to dynamically generate files and reports that show how various geographic layers are related to one another. For example, you can choose one or more states as your geographic universe of interest and then ask the program to show you how ZCTAs within those states relate to just about any other geographic layer you can think of.
To see how easy it can be, visit the Geocorr application. Choose your state from the first select list. Then select ZIP/ZCTA from the Source geographies select list (on the left), and Congressional District 111th from the Target geographies select list (on the right). In the Output Options section, enter a title for the report such as 'ZIP to Congressional District Equivalencies Using Geocorr'. Then click the Run request button.
For processing many states, you might have to break it down and do about 10 or 20 states at a time.
Relating ZIPs and ZIP Suffixes to County and Metro/Micropolitan Statistical Areas
We happened to stumble upon a curious resource on a Census Bureau web page dealing with definitions of metropolitan and micropolitan statistical areas. It was under a section titled 'Geographic relationship files', with a downloadable file titled '2007 ZIP code to 2006 CBSA'. The result looks something like this:
Perhaps not the best example, since this ZIP code is entirely within a single CBSA. But it does cross county boundaries, being on the border of St. Louis City (a county equivalent independent of St. Louis County). The thing that makes this data resource special is the use of sub-ZIP code geography at the two and four-digit ZIP-suffix levels. It varies by ZIP code. All of this information is stored in the MCDC public archive, where it can be accessed via the Dexter extraction utility. It can be accessed as data set zip07_cbsa06 in the corrlst data directory. Be sure to take advantage of the link to detailed metadata at the top of the Dexter query form.
Demographic Data for 2000 ZCTAs
Tabular Data on 2000 Summary Files
![Census Data By Zip Code Download Census Data By Zip Code Download](/uploads/1/2/6/5/126543834/716947561.png)
The Census Bureau created detailed demographic summaries for ZCTAs (both complete and within county) as part of their 2000 Summary File 1 and Summary File 3 data products. These are very large collections of detailed tables that you might have occasion to use if you have a specific item of interest that requires you to go deeper than what most users will want to go. There are, for example, over 16,000 cells of tabular data for every ZCTA on Summary File 3. You're probably going to want this boiled down to something more readily accessible.
Fortunately, you will probably never have to get involved directly with the summary files. Both the Census Bureau and the MCDC have created demographic profile products which take these thousands of data tables cells and boil them down to a few hundred key data items, which are then presented in easy to read reports. You can view these data one ZCTA at a time in your browser, or you can access data files that have the boiled-down data available for all ZCTAs in formats that can be readily loaded into a spreadsheet or database access package (e.g. Excel or Access). Doing this is going to require that you become familiar with either the American FactFinder access tool (to access the Census Bureau profiles, aka 'Quick Tables') or the Uexplore/Dexter application (to access the MCDC's data sets). Neither tool is terribly difficult to use but it does mean you have to invest a little time before you can access that first set of data.
Census Data By Zip Code Download Free
The MCDC Demographic Profile Reports and Data sets
There are actually two sets of demographic profiles at the ZIP/ZCTA level based on the 2000 Census from the Missouri Census Data Center. But the collection based on Summary File 1 (which means complete count, short form data) is very limited in demographic detail and will rarely be what you want. When you want the 'good stuff' — data on income, poverty, educational attainment, etc. — you want Summary File 3 (which means sample data based on the long form) and this translates into what the MCDC calls the dp3_2k< (Demographic Profile 3, 2K Census) product. You can access these products using various entry points. If all you want to do is go straight to the main menu for the ZCTA profiles then you want the Census 2000 Profiles menu page (choose 'Zip Codes (ZCTA)' as area type, then filter by state).
![Download us census data by zip code Download us census data by zip code](/uploads/1/2/6/5/126543834/354834266.jpg)
The profile is divided into 29 sections (topics). The header line for each of these sections is a hyperlink to the metadata for that topic. There are many hyperlinks on the report page. Among the things you will learn if you read the usage notes page carefully:
- Printing the reports requires using a landscape setup for your printer. Or there is a way to have the report print as a single panel (instead of the default 2-panel newspaper format).
- There is a link at the bottom of the report that will take you directly to the Dexter application so you can extract the data used for this report (and the corresponding data for all other ZCTAs in the universe if you do not apply any filters).
- The hyperlinks in the SF3 Table column invoke a utility web application that will display the detail SF3 table from which the data items (the one on the same line as the link and usually those that follow) was derived. So, for example, you can click on the P7 hyperlink on the line for Hispanic and view a more detailed breakdown of the Hispanic population for this ZCTA.
- There is a link to the complete metadata for the report/files in pdf format at the bottom of the page.
- If you follow the link to related applications, you will be able to get a corresponding dp3_2kt report that depicts similar demographic data, but has it for both 1990 and 2000, i.e. it's a trends report. (However, it is based on the assumption that the 2000 ZCTA is the same geographic entity as the 1990 ZIP with the same code, which, as we have pointed out elsewhere, is not always the case.)
Access 'Quick Tables' Data Via American Factfinder
You can also access 2000 census data at the ZCTA level via the Census Bureau's American Factfinder web application. Not just data, but reference and thematic maps as well. Select the 'Data Sets' option at the top left of the page, and select 'Census 2000 Summary File 3' as the data set. Then you should be able to choose your geography, including 3- or 5-digit ZCTAs. The Census Bureau calls their profile data sets 'Quick Tables' so you should select this as your Tables option when you want to get just the most frequently used data. But you can also access the complete Detailed Tables if you would like. For many geographic units (states, counties, cities, congressional districts, for example) the Bureau makes available these data in the form of 3-page pdf files/reports. Unfortunately, these report format files are not available for ZCTA geography.
Other ZIP-related Resources
- United States ZIP Codes.org provides a downloadable ZIP code database and other online tools for accessing ZIP code information, including street level maps and basic data from the 2010 census. There are some restrictions on use of the data.
- The U.S. Postal Service's ZIP Code Lookup and Address Information page is the ultimate authority for current ZIP geography.
- Community Information by Zip Code is maintained by the University Library at Cal State Northridge. Not unlike this page, with lots of overview info and links to other relevant pages.
- Sperling's Best Places is a source of all kinds of information (most of it purporting to be very current) regarding cities, towns and ZIP codes. Just enter a ZIP code in the search box. Be aware that the information on the return page has to be scrolled down to view. We have some reservations about the timeliness and/or source of these data. For example: they report (in 2008) that the current (2007) population of Columbia, MO is 94,xxx when the official Census Bureau estimate is 99,xxx. There are no such official public estimates for ZIP codes so you'll have to trust them.
- city-data.com actually has data for a lot more than just cities; it has data for counties and ZIP codes as well. (the link here is to their index page for ZIP level data). You choose a ZIP and it displays a very detailed profile with data from many sources, many of them not identified. The profiles include graphics and an impressive hodge-podge of information. It seems to be geared towards people who may be thinking of moving there. There is a lot of economic indicator data (such as household income and housing values) that are less than 2 years old. The lengthy profile ends with a note warning the user that the data is not guaranteed to be accurate and users should use the data at their own risk.
- ZIP-Codes.com is a commercial site that offers an array of products and services all related to ZIP codes (most for a fee, but some useful free lookups included). Has apps for finding the distance between 2 ZIP codes or for finding all ZIPs within a specified distance from a specified ZIP. They offer a downloadable database (several, actually) with lots of data fields, with annual updates (and fees).
- A Free Zipcode Database was mentioned above as a source for up-to-date and complete ZIP code directories and for accessing lat-long data for ZIPs. This web page also contains a number of links to a series of helpful Google searches that turn up lots of other promising web sites.
Background
This is a download of us geographic information based on the 2000 census. Read through the article here for a better understanding of what you're getting.
These are 'ZCTA's, which are based on USPS zip codes but more directly relate to spacial information (I.E. you can get lat/lon boundaries for them). From the article:
ZIP codes are a very messy kind of geography. They were created by theU.S. Postal Service as a tool to help deliver the mail moreefficiently. ('ZIP' is actually an acronym for 'Zone ImprovementPlan', where 'Zone' is a reference to the 2-digit postal zones thatwere used by the post office prior to implementing nationwide ZIPcodes back in the early 1960's. Because it is an acronym we always usethe uppercase for it.) ZIP codes have been adopted by marketing peopleand by all kinds of other researchers as a standard geographic area,like a city or a county. We see maps of ZIP codes in telephone booksand from commercial vendors that make us think of them as spatiallydefined areas with precise boundaries, similar to counties. But, fromthe perspective of the agency that defines them, the U.S. PostalService, ZIP codes are not and never have been such spatialentities. They are simply categories for grouping mailingaddresses. As such, ZIP codes do in most cases resemble spatial areassince they are comprised of spatially clustered street ranges. But notalways. In rural areas, ZIP codes can be collections of lines (ruraldelivery routes) that in reality do no look much like a closed spatialarea. In areas where there is no mail delivery (deserts, mountains,lakes, much of Nevada and Utah) ZIP codes are not really defined. Youmay see maps that show ZIP code boundaries that include such areas,but these are not post-office-defined official definitions. An areawill not be assigned a ZIP code until there is a reason for it,i.e. until there needs to be mail delivered there. So the actualdefinition of a ZIP code 'boundary' is quite fuzzy at best, and apurely extrapolated guess (at what it would be if someone were tostart receiving mail there) at worst. If you have an application thatrequires extreme geographic precision, especially in sparselypopulated areas, then you need to avoid using ZIP codes.
Usage
Data is available in .csv and .yaml format.
Example usage of the yaml data: