Visualization

SNAP Coverage of the Poverty Population by State

An interactive heat map showing SNAP coverage in your state

Eric Pachman Headshot

Eric Pachman

Published
December 18th 2025

Updated
February 1st 2026

This post includes an interactive data visualization, which is best viewed on a computer or tablet. However, if you must use your phone, at least turn it landscape.

Loading Visualization

default

How to use

Observe

First, just observe the visualization.

The color scale shows the SNAP Coverage of the Poverty Population, which I calculate by dividing the Number of People receiving SNAP benefits (from the USDA) by the Estimated Number of People living in Poverty (from the SAIPE dataset at Census.gov). Note that the color scale is divided into equal 25 point increments from a minimum of 25% to a maximum of 150%.

  • Red is a rate between 25% and 50%
  • Orange is a rate between 50% and 75%
  • Yellow is a rate between 75% and 100%
  • Light green is a rate between 100% and 125%
  • Dark green is a rate between 125% and 150%

Hover

Next, hover over any state to bring up a tooltip showing several statistics on SNAP and poverty in that state. The tooltip will show:

  1. The percentage of the state's population living in poverty
  2. The percentage of the state's population receiving SNAP benefits
  3. The SNAP Coverage of the Poverty Population
  4. A historical trend chart showing the comparison of #1 and #2 from 2003 to 2023

Filter

Last, there are two filters you can use.

To see Hawaii or Alaska, use the "Continental U.S. / Alaska / Hawaii" dropdown filter.

To change the visualization to display SNAP Coverage of the Poverty Population rates for different years, use the "Select Year" slider filter.

default

Methodology

Prepare the SNAP data

  1. Download the SNAP data from the USDA. The zip file is called "FY 69 through FY 25," and it is in the National and/or State Level Monthly and/or Annual Data section.
  2. Stitch together the files and clean up all the blank rows to make the data readable by your data program of choice (I used Tableau).
  3. Keep the "Participation Persons" data field. You will not need the other fields for the visualization.
  4. Average all months of data for each state and year combination to get the annual average Participation Persons on SNAP for these two dimensions.

Prepare the SAIPE poverty data

  1. Download the SAIPE State and County Estimates. This link will get you to the 2024 page. When on the page, download the file called, "US and All States and Counties.xls."
  2. Navigate the SAIPE datasets to get all years back to 2003. You can also use an API to save time.
  3. Clean-up all files to remove blank rows and ensure headers are the same.
  4. Calculate the field "Year" by extracting the two-digit year from the middle of the File Path field. Make sure it is in date format.
  5. Create a calculated field called "Location Type." Set it to "U.S." if the "County FIPS Code" is "000" and the "State FIPS Code" is "00." Set it to "State" if the "County FIPS Code" = "000." All other FIPS codes should be assigned to "County."
  6. Download the 2020 Census codes for State and State Equivalents reference file (scroll down to "State and State Equivalents" section)
  7. Join this file to the output of Step 5 by setting "StateFP" equal to "State FIPS Code." We are doing this to bring in full state names rather than working with just two-letter postal codes.
  8. Keep only "Location Type" = "State"
  9. Remove extra numerical data fields that are not needed. The only fields I kept were, "Poverty Estimate, All Ages" and "Poverty Percent ."

Join poverty and SNAP data

  1. Join the SAIPE poverty DB with the SNAP DB on State Name. Important: before you do this, make sure there are no abbreviations in the SNAP DB. Fix these to the full state name in the raw data before you join. If you missed any, check the join to make sure that you have all 50 states.

Finalize database

  1. Create a calculated field called "SNAP Coverage of Poverty Population" by dividing "SNAP Participation Persons" by "Poverty Estimate, All Ages"
  2. Create a calculated field called "SNAP Percent of Population" and set equal to, "SNAP Participation Persons" / ("Poverty Estimate, All Ages" / "Poverty Percent")
  3. Remove any other extraneous fields to keep the final database nice and tidy and then output the database

Create Tableau visualization

I'm assuming you know the basics of Tableau in these instructions

  1. Connect Tableau desktop to the finished database
  2. Make sure "State Name" is a geographic data type
  3. Drag Longitude to columns and Latitude to rows
  4. Drag "State Name" to detail card
  5. Drag "SNAP Percent of Poverty Population" to the color card. Choose your color scheme. I used temperature diverging.
  6. Drag "Year" to the Filter pane. Make sure it is discrete data type (not continuous)
  7. Create a group using "State Name" with the 48 contiguous states grouped. Add this group to the Filter pane.
  8. Create a new worksheet. Drag "Year" to columns (make sure it is continuous data type). Drag "Poverty Percent" to Rows. Change chart type to line chart. Drag "SNAP Percent" over the y-axis to add to chart. Format as you wish.
  9. Go back to the heat map. Click on the tooltip card. Add the data and text, and also the new historical trend chart created in Step 8.
  10. Add some flair! Add your logo, change color scheme... make it yours!

Support Data That Serves the Public

Data should empower people, not just institutions. Your support helps us create accessible research, visualizations, and tools that uncover economic inequality and inform better decisions.

Donate
Donate today

Enjoying this post?

Tell others about it.


More articles like this

Fetching Related Posts

There are no other articles tagged with Visualization