Wage Growth Tracker

The Atlanta Fed's Wage Growth Tracker is a measure of the nominal wage growth of individuals. It is constructed using microdata from the Current Population Survey (CPS), and is the median percent change in the hourly wage of individuals observed 12 months apart. Our measure is based on methodology developed by colleagues at the San Francisco Fed.

The Wage Growth Tracker is updated once the Atlanta Fed's CPS dataset is constructed (see the "Explore the Data" tab below). This is usually by the second Friday of the month. The exact timing depends on when the Bureau of the Census publishes the micro data from the CPS.

Stay informed of all Wage Growth Tracker updates by subscribing to our mailing list, subscribing to our RSS feed RSS feed icon, downloading our EconomyNow app, or following the Atlanta Fed on Twitter. Twitter icon You can also build your own cuts of Wage Growth Tracker data using the CPS Data Application from CADREOff-site link or alternatively from here compressed zip file. Look for instructions and program files in the "Explore the Data" tab below.

EconomyNow: An Atlanta Fed Research App

logo for the Kansas City Fed's Center for the Advancement of Data and Research in Economics (CADRE)

  • Interactive Chart

    The following interactive chart displays the Wage Growth Tracker along with versions of the tracker for select work and demographic characteristics (shown as either 3-month or 12-month moving averages). See the downloadable spreadsheet for variable definitions.

  • Methodology

    Data source

    The data we use to compute the Atlanta Fed's Wage Growth Tracker are from the monthly Current Population Survey (CPS), administered by the U.S. Census Bureau for the Bureau of Labor Statistics. (You can find an overview of the CPS on the Census website.) The survey features a rotating panel of households. Surveyed households are in the CPS sample four consecutive months, not interviewed for next eight months, and then in the survey again four consecutive months. Each month, one-eighth of the households are in the sample for the first time, one-eighth for the second time, and so forth. Respondents answer questions about the wage and salary earnings of household members in the fourth and the last month they are surveyed. We use the information in these two interviews, spaced 12 months apart, to compute our wage growth statistic.

    Calculating hourly earnings

    The methodology is broadly similar to that used by Daly, Hobijn, and Wiles (2012). The earnings data are for wage and salary earners, and refer to an individual's main job (earnings data are not collected for self-employed people). Earnings are pretax and before other deductions. The Census Bureau reports earnings on either a per-hour or a per-week basis. We convert weekly earnings to hourly by dividing usual weekly earnings by usual weekly hours or actual hours if usual hours is missing.

    We further restrict the sample by excluding the following:

    • Individuals whose earnings are top-coded. The top-code is such that the product of usual hours times usual hourly wage does not exceed an annualized wage of $100,000 before 2003 and $150,000 in the years 2003 forward. We exclude wages of top-coded individuals because top-coded earnings will show up as having zero wage growth, which is unlikely to be accurate.
    • Individuals with earnings information that has been imputed by the BLS because of missing earnings data. (See, for example, Hirsch and Schumacher 2001 and Bollinger and Hirsch 2006 for research showing that using imputed wage data can be problematic.)
    • Individuals whose hourly pay is below the current federal minimum wage for tip-based workers ($2.13).
    • Individuals employed in agricultural occupations (such as farm workers).

    These restrictions yield an average of 9,300 earnings observations each month.

    Constructing the wage growth tracker statistic

    Once we have constructed the individual hourly earnings data, we match the hourly earnings of individuals observed in both the current month and 12 months earlier. The matching algorithm results in about 2,000 individual wage growth observations per month. We then compute the median of the distribution of individual 12-month wage changes for each month.

    The final step is to smooth the data using a three-month moving average. That is, we average the current month median wage growth with the medians for the prior two months. The chart below shows the unsmoothed and three-month average versions of the median wage growth series.

    Note that our matched dataset has a slightly greater share of older, more educated workers in professional jobs than does the sample of all wage and salary earners. This is primarily due to the requirement that the individual has earnings in both the current and prior year. Older, more educated workers are more likely to be continuously employed than other wage and salary earners.

    Wage Growth Tracker by select employment and demographic characteristics

    We also report Wage Growth Tracker measures for several job and demographic characteristics listed below (unless otherwise noted, the definitions refer to the individual’s status in the current month):


    • High-skill: Managers, Professionals, Technicians
    • Middle-skill: Office and Administration, Operators, Production, Sales
    • Low-skill: Food Preparation and Serving, Cleaning, individual Care Services, Protective Services


    • Construction and mining
    • Education and health
    • Finance and business services: Finance, Information, Professional and business services
    • Leisure and hospitality: Leisure, Hospitality, Other services
    • Manufacturing
    • Public Administration
    • Trade and transportation: Trade, Transportation, Warehousing, Utilities

    Service Sector

    • In an industry other than construction, mining, or manufacturing


    • Usually works 35 hours per week or more


    • In a different occupation or industry than a year ago or has changed employers or job duties in the past three months.
    • Note: Because the Current Population Survey is a survey of addresses, if a person moves to a new address they will be missing from the data. Therefore, job switching is defined only in a geographically local sense.

    Paid Hourly

    • Paid at an hourly rate in both the current month and a year ago
    • Not paid at an hourly rate in the current month and a year ago

    Average Wage Level

    • Ranking based on the distribution of average hourly wage in the current month and a year ago. Those in the lowest 25 percent of average wages are in the 1st quartile and those in the highest 25 percent of average wages are in the 4th quartile.


    • 16-24
    • 25-54
    • 55+


    • White
    • Nonwhite


    • High school or less
    • Associates degree
    • Bachelor degree or higher

    College Degree

    • Has an Associate degree or higher


    • Metropolitan Statistical Area (MSA) as defined by the U.S. Office of Management and Budget
    • Excludes those whose MSA status is not identified

    Census Division

    • New England: Connecticut, Maine, Massachusetts, New Hampshire, Rhode Island, Vermont
    • Mid-Atlantic: New Jersey, New York, Pennsylvania
    • East North Central: Illinois, Indiana, Michigan, Ohio, Wisconsin
    • West North Central: Iowa, Kansas, Minnesota, Missouri, Nebraska, North Dakota, South Dakota
    • South Atlantic: Delaware, Florida, Georgia, Maryland, North Carolina, South Carolina, Virginia, District of Columbia, West Virginia
    • East South Central: Alabama, Kentucky, Mississippi, Tennessee
    • West South Central: Arkansas, Louisiana, Oklahoma, Texas
    • Mountain: Arizona, Colorado, Idaho, Montana, Nevada, New Mexico, Utah, Wyoming
    • Pacific: Alaska, California, Hawaii, Oregon, Washington
    • Puerto Rico and other U.S. territories are not part of any census division

    Weighting Series

    Unless otherwise noted, all the series are based on an unweighted sample. The weighted series is constructed after weighting the sample to be representative of each month's population of wage and salary earners in terms of sex, age, education, industry, and occupation groups (irrespective of whether the person was also employed a year earlier). The weighted 1997 series is constructed after weighting the sample to be representative of the 1997 population of wage and salary earners in terms of sex, and age, education, industry, and occupation groups. These weighted series are described in two macroblog posts here and here.

  • Data Distribution

    The Wage Growth Tracker is the time series of the median wage growth of matched individuals. This is not the same as growth in the median wage. Growth in the median wage represents the experience of a worker whose wage is in the middle of the wage distribution in the current month, relative to a worker in the middle of the wage distribution 12 months earlier. These would almost certainly include different workers in each period.

    Chart 1 plots the time series of the median, along with the mean, and the 75th and 25th percentiles of the individual wage growth distribution (all shown as three-month moving averages). The mean wage growth measure displays more variability over time than does the median. The mean wage growth uniformly lies above the median because the distribution of individual wage growth is asymmetric. The asymmetry can be seen by noting that the gap between the 75th percentile wage growth and the median wage growth is about 10 percentage points, whereas the gap between the 25th percentile and the median is only about 5 percentage points. Also note that the 75th and 25th percentiles have generally moved in line with the median over time, so that the interquartile range (a measure of dispersion) has remained relatively stable.

    One particularly interesting feature of the wage growth distribution is the proportion of individuals who experience no wage growth. Chart 2 shows the percentage of zero wage changes in our data (specifically the percent of individual wage growth falling in the range of +0.5 percent and -0.5 percent). For reference, also plotted is the median individual wage growth.

    Notice that the proportion of zero wage changes increased during both of the last two recessions. During the Great Recession, wage freezes became especially prevalent and have persisted at a high rate through much of the recovery. Only in the last year have we seen any notable decline in the percent of individuals experiencing zero wage change. For more information on this and its relation to models of nominal wage rigidity, see the work by our colleagues at the Federal Reserve Bank of San Francisco (Daly, Hobijn, and Wiles 2012 and Daly and Hobijn 2014). The distribution of individual wage growth is broadly similar to that shown on the Federal Reserve Bank of San Francisco website, although the methodology underlying the construction of the individual wage growth distribution differs somewhat.

  • Explore the Data

    These instructions provide details for how to replicate the Atlanta Fed's Wage Growth Tracker and get started with further analysis.

    Setup Instructions

    First, create the following three folders on your computer:

    • WageGrowthTracker\programs
    • WageGrowthTracker\Data\rawdata
    • WageGrowthTracker\Data\processeddata

    Second, download the Atlanta Fed's CPS dataset, saving it to the 'WageGrowthTracker\rawdata' folder

    • Directly downloadOff-site link the STATA (.dta) version of the file.
    • If you would like to download only a subset of variables or dates, navigate to the Kansas City Fed's CADRE's CPS page,Off-site link select "sign in," then "Google Login." Then, under schema, select "Harmonized Variable and Longitudinally Matched [Atlanta Federal Reserve] (1976–Present)" and use the interactive tool to select variables and dates. The CADRE CPS page also contains a data dictionary for the dataset. You can download the file alternatively from here compressed zip file.

    Third, download and save the following three STATA programs to the 'WageGrowthTracker\programs' folder (you can download a .zip file of the programs here):compressed zip file

    • Create_WGT_groups_usingcadre.do
    • Unweighted_WGT_usingcadre.do
    • Weighted_WGT_usingcadre.do

    Replicate the Wage Growth Tracker

    Open the three programs in STATA. Run Create_WGT_groups_usingcadre.do to create a dataset with the various groups used for different cuts of the Tracker (saved in the 'rawdata' folder). Then run the other two programs (in either order) to create the Tracker time series data (saved in the 'processdata' folder). The Unweighted_WGT_usingcadre.do program produces three datasets–the unweighted individual level Wage Growth Tracker data for each group are saved to wage-growth-data_unweighted.dta, the time series of specific moments of the unweighted data (mean, median, 25th percentile, etc.) are saved to wage-growth-data_unweighted collapsed.dta, and smoothed versions of the time series data as 3-month and 12-month moving averages are saved to wage-growth-data_unweighted_smoothed.dta. The Weighted_WGT_usingcadre.do program produces comparable datasets to the unweighted program but first applies weights to the data to match certain characteristics of the employed population each month ("wage-growth-data_weighted_smoothed.dta"), and characteristics of the employed population in 1997 ("wage-growth-data_weighted_97_smoothed.dta").

    Note that the CPS dataset on CADRE also underlies the Atlanta Fed's Labor Force Participation Dynamics web page. To learn about some other ways you can use this dataset see this macroblog post.

    Get Started With Further Analysis

    Example 1—A weighted version of the Wage Growth Tracker data that adjusts only for demographics:
    The weighted versions of the Tracker on the website adjusts the distribution of the WGT sample to match that of the employed population. Specifically, we adjust for differences in the demographics distribution (age, education, sex) and the job mixture (industry and occupation) of the employed populations. Suppose instead you want to weight the data by only demographics. To do this, edit the "Weighted_WGT_usingcadre.do" file, and on line 59 replace "secgroup occgroup" with " ". This modified program will produce the two weighted series using only the demographic information you specified.

    Example 2—Generate Wage Growth Tracker data for a different demographic group:
    The program "Create_WGT_Groups_usingcadre.do" creates several categorical variables. For instance, the variable 'agegroup' specifies three age categories: "16-24," "25-54," and "55+".  Suppose instead, you want to look at wage growth for people aged 25-44. One way to do this is to edit the "Create_WGT_Groups_usingcadre.do" file and change the definition of the agegroup variable accordingly.

  • Related Links