AWhere, Inc.

Welcome to the AWhere, Inc. Discussion Forums.
Discuss ideas and issues with other AWhere users, search specific topics,
answer a question or post your own questions and maps.
Welcome to AWhere, Inc. Sign in | Join | Help
in Search

Dissecting US FIPS codes, what are they?

Last post 08-14-2008, 3:04 PM by Michael Swaim. 0 replies.
Sort Posts: Previous Next
  •  08-14-2008, 3:04 PM 37

    Dissecting US FIPS codes, what are they?

    Census FIPS (Federal Information Processing Standard) codes are a unique ID used by many government agencies to track different types of data.  Not all geographic entities use FIPS codes.  Some might be mapped by latitude and logitude, ZIP code or some other alphanumeric sequence, including names (which is fraught with pitfalls in spelling consistancy).  For the purposes of mapping we will focus on the use of FIPS codes in the Census Bureau to identify many types of spatial areas. 

    U.S. Census FIPS are structured numerically with leading zeros.  The leading zero often means the field must be treated as a string (text).  States have a 2 digit FIPS, Counties use a 5 digit FIPS, Census Tracts and Block Groups have longer FIPS codes (appended to the state and county FIPS codes).  There are FIPS codes for other things too, but for mapping purposes we will refer to FIPS as unique identifiers for geographic locations.


    FIPS are always considered “text” since a leading zero is necessary for some states like Alaska (02) for instance.  This is how the census bureau stores census data as well.   The USA map layers in AWhere come directly from the US Census Bureau cartographic boundary website, aside from changes in line detail and some attribute edits, they are identical to the census bureau products, including the text based FIPS codes with leading zeros.  Leading zeros are very important-- they act as a place holder for the state or county codes (02 = Alaska and 001 would be the first county in Alaska), second leading zeros eliminate confusion should someone enter a single digit.  Should that “2” be a 20 or a 02, for instance?

    FIPS allow us to get around things like misspellings, use of abbreviations or the fact that many states have counties with the same name.  When mapping by state, this is not a big issue since it is fairly easy to go through a list of 50 state names to check spelling, but with 3000+ counties, 200,000+ census tracts and 800,000+ block groups relying on names to uniquely identify a location can be difficult.

    FIPS codes for various geographic areas neatly roll up into each other and are  uniquely identified.  The state FIPS for Colorado is “08”.  Lincoln County in Colorado is represented by “063”.  If you were creating a map at the county level you would certainly want to use the unique FIPS code when joining your tabular data since there are 24 Lincoln Counties in the United States.  AWhere would simply join your data to the first "Lincoln County" it found and be done.  By joining the state FIPS code "08" to the county FIPS code, you now have a consistant unique ID for that county, 08063.

    Short description of FIPS:

    State FIPs: 2 digits (37 = NC)
    County: 3 digits (37081 = Guilford County, NC or county “081” in NC)
    Tract: 6 digits (37081010700 = tract number 010700 in Guilford County, NC)
    Block Group: 1 digit (370810107002 = block group number 2 in the tract/county listed above)

    Here is a helpful cheat sheet for the data structure:

    A Block Group in Alamance County, North Carolina:

    (Blocks, in red, are not included in the AWhere data sets)

    3700102010111000

    State    County           Tract               Block Group              Block
    37        001                  020101            1                                  1000

    Unique IDs for national level mapping (spaces added for clarity):

    37 001 020101 1 1000---------- Block: Mapping a block group or tract
    37 001 020101 1----------------- Block Group: mapping a county or state
    37 001 020101------------------- Tract: Mapping a county or state
    37 001----------------------------- County: Mapping a state or country
    37---------------------------------- State: Mapping the country

    Block Group Level groupings are sequential:

    370010201011 <- This tract has 1 block group.
    370010201021 <- This tract has 3 block groups.
    370010201022
    370010201023
    370010202001 <- This tract has 4 block groups.
    370010202002
    370010202003
    370010202004

    Michael Swaim
    GIS Analyst / Cartographer
    AWhere, Inc.
View as RSS news feed in XML