Skip to main content


The Migration Patterns dataset contains population movements and migration within the US at the State, Core-Based Statistical Area (CBSA), County, Tract, and ZIP Code level.


We determine migration flows by combining USPS and GPS location data in two steps:

  1. Establishing Area Migration
    Using change-of-address USPS data, we first establish the in-, out- and net-migration of areas on the supported geographies (State, ZIP code, etc.). This allows us to provide insights about growth/decline of selected location.

  2. Creating Origin-Destination Pairs
    We estimate migration flows between all possible origin-destination pairs using GPS data. This allows us to provide insights like, 250 people moved from Orange County, California to Palm Beach County, Florida.

  3. Estimating Dynamic Demographic Profiles
    Understanding the origin-destination flows allows us to study some aggregate characteristics of areas and their inflows. We focus on the median income and age of people migrating into areas.


This data is ideal for investment decisions. See how this dataset can help you if you are:

As a real estate developer, you want to understand where people with economic choices are “buying down” and moving into areas with historically lower incomes, which will yield strong property appreciation.


The Migration Patterns product consists of two datasets:

Area Migration with Demographics
Aggregates the flows (inflow, outflow, netflow) of single locations. Provides income and age profiles of people moving into these locations.

Origin-Destination Migration
Tracks changes of home location from one area (origin) to another (destination) and measures the magnitude of flow between the origin-destination pairs.

Spatial Resolution

This dataset is available at the following spatial granularities:

  • State
  • Core-Based Statistical Area (CBSA)
  • County
  • Census Tract
  • ZIP Code

Temporal Resolution

Migration Patterns dataset is aggregated at a monthly time interval, and delivered on the 20th of the second month after each month´s end (e.g., data for December will be available around February 20).

Historic Migration data is available back to December 2018.