The China Shock and Manufacturing Employment in the United States

Model report — Diversity in a Globalized World

Author

Example team: Name 1, Name 2, Name 3

Published

September 12, 2026

Show Code
library(sf)
library(dplyr)
library(ggplot2)

# One file. It holds the map and the data together.
zones <- st_read("data/china_shock/china_shock.gpkg", quiet = TRUE)

Introduction

Between 1991 and 2007, the share of American spending that went on Chinese goods rose from 0.6% to 4.6%, accelerating after China joined the World Trade Organization in 2001. Over the same years, the share of working-age Americans employed in manufacturing fell by a third (Autor, Dorn and Hanson 2013).

A national trend like this need not be felt evenly. A town whose factories made furniture or textiles competed directly with the new imports. A town built around hospitals or farms did not. If the costs of globalization fell on particular places, they should be visible on a map.

This report asks whether the parts of the United States most exposed to Chinese imports lost more manufacturing jobs.

Data

We use the replication data from Autor, Dorn and Hanson (2013). The unit of observation is the commuting zone: a group of counties between which people travel for work, in effect a local labour market. The continental United States has 722. Table 1 describes the three variables we analyse. We also use each zone’s census region.

Show Code
vars <- st_drop_geometry(zones)[, c("exposure", "manuf_change", "manuf_1990")]

knitr::kable(data.frame(
  Variable = names(vars),
  Measures = c("Growth in Chinese imports per worker, 1990–2007 (thousand USD)",
               "Change in the share of jobs in manufacturing, 1990–2007 (percentage points)",
               "Share of jobs in manufacturing, 1990 (%)"),
  Min    = sapply(vars, min),
  Median = sapply(vars, median),
  Max    = sapply(vars, max)
), digits = 1, row.names = FALSE)
Table 1: Variables used in this report, across 722 commuting zones.
Variable Measures Min Median Max
exposure Growth in Chinese imports per worker, 1990–2007 (thousand USD) 0.0 2.6 49.0
manuf_change Change in the share of jobs in manufacturing, 1990–2007 (percentage points) -23.5 -2.1 6.6
manuf_1990 Share of jobs in manufacturing, 1990 (%) 0.7 21.4 61.8

Exposure is assigned by what a zone produced, not by what it imported. Each zone is allocated part of the national growth in Chinese imports in every industry, in proportion to its share of that industry’s national employment. The total is then divided by the zone’s workforce. A zone full of furniture plants therefore counts as highly exposed even if no one there bought anything from China.

Findings

Where the shock landed

Figure 1 maps exposure across the 722 zones. It was concentrated in the South, above all in Tennessee, Mississippi, Kentucky, North Carolina and Arkansas, with a second cluster in Indiana, Missouri and Illinois. The northern plains and the mountain West register little. The median zone’s exposure was 2.6 thousand dollars per worker; the most exposed zone’s was 49 thousand.1

Show Code
ggplot(zones) +
  geom_sf(aes(fill = exposure), color = NA) +
  scale_fill_viridis_c(option = "magma", direction = -1, trans = "sqrt",
                       name = "Thousand USD\nper worker") +
  labs(title = "Exposure to Chinese imports, 1990–2007") +
  theme_void()
Figure 1: Growth in Chinese import exposure per worker, by commuting zone, 1990–2007.

Where the jobs were lost

Figure 2 shows the change in manufacturing’s share of jobs. The largest losses were in the Southeast: North Carolina, South Carolina, Tennessee and Georgia. The pattern resembles Figure 1 but does not match it. South Carolina and Georgia lost heavily with less exposure than Tennessee or Mississippi. Kentucky, Missouri and Indiana were among the most exposed states, yet their losses were close to the national average. If the two maps matched exactly, exposure alone would explain the losses. They do not, which points to something else.

Show Code
ggplot(zones) +
  geom_sf(aes(fill = manuf_change), color = NA) +
  scale_fill_viridis_c(option = "viridis",
                       name = "Change in %\nmanufacturing\nemployment") +
  labs(title = "Change in manufacturing employment, 1990–2007") +
  theme_void()
Figure 2: Change in the share of jobs in manufacturing, by commuting zone, 1990–2007.

Who had the most to lose

A zone can only lose manufacturing it has. Figure 3 maps the share of jobs in manufacturing in 1990, before the shock. The same southeastern states stand out, each with more than a third of jobs in manufacturing on average. Read together, the three maps separate two conditions for a large loss: the shock had to arrive, and there had to be manufacturing to lose.

Show Code
ggplot(zones) +
  geom_sf(aes(fill = manuf_1990), color = NA) +
  scale_fill_viridis_c(option = "mako", direction = -1,
                       name = "% jobs in\nmanufacturing\n1990") +
  labs(title = "Dependence on manufacturing before the shock (1990)") +
  theme_void()
Figure 3: Share of jobs in manufacturing, by commuting zone, 1990.

The relationship across all zones

Figure 4 plots exposure against the change in manufacturing employment, one dot per zone. The relationship is clearly negative: zones exposed to more import growth lost more of their manufacturing jobs, with a correlation of −0.39.

Show Code
ggplot(zones, aes(x = exposure, y = manuf_change)) +
  geom_point(alpha = 0.5, color = "#0f6f96") +
  geom_smooth(method = "lm", se = FALSE, color = "#b44527") +
  labs(title = "More exposure, larger fall in manufacturing employment",
       x = "Exposure to Chinese imports (thousand USD per worker)",
       y = "Change in % manufacturing employment") +
  theme_minimal()
Figure 4: Import exposure and the change in manufacturing employment, 722 commuting zones.

What the simple picture hides

Figure 4 pools the whole country. Figure 5 splits it by census region and colours each zone by its manufacturing share in 1990. Two things emerge. First, the negative slope appears in all four regions, with correlations from −0.25 in the Midwest to −0.53 in the Northeast, so no single part of the country produces the pattern. Second, the darker points, zones more dependent on manufacturing in 1990, tend to sit lower: the largest losses came where there was most manufacturing to lose.

Show Code
ggplot(zones, aes(x = exposure, y = manuf_change)) +
  geom_point(aes(color = manuf_1990), alpha = 0.7) +
  geom_smooth(method = "lm", se = FALSE, color = "#b44527", linewidth = 0.7) +
  scale_color_viridis_c(option = "mako", direction = -1,
                        name = "% manufacturing\nin 1990") +
  facet_wrap(~ region) +
  labs(title = "The same relationship, split by region",
       subtitle = "Colour shows how much manufacturing the zone had before the shock",
       x = "Exposure to Chinese imports (thousand USD per worker)",
       y = "Change in % manufacturing employment") +
  theme_minimal()
Figure 5: Import exposure and manufacturing change by census region, coloured by the 1990 manufacturing share.

Discussion

The China shock did not arrive in “the United States”. It arrived in particular places, above all in the Southeast and parts of the Midwest, and it touched the West far less. Across those places, more exposure went with larger manufacturing losses, and the relationship holds within every region. The size of the loss also depended on what was there before: the zones that relied most on manufacturing lost the most.

The maps make an argument a table could not. A table sorted by exposure would show the correlation. Only the maps show that the shock had a shape, and that a national change was experienced as a regional collapse.

Limitations

This is a correlation, not a causal estimate. Something else could have driven both exposure and job losses. Autor, Dorn and Hanson address this by using Chinese imports into other high-income countries as an instrument; we do not. Exposure and the 1990 manufacturing share are also closely related (correlation 0.57), because exposure is built from each zone’s industries, so our graphs cannot fully separate the two.

A zone is not a person. A falling manufacturing share tells us nothing about what happened to any individual worker, or whether the lost jobs reappeared in other sectors. Finally, the maps draw 2015 county boundaries grouped into 1990 commuting zones, so some borders are approximate.

Use of AI

Task AI? What we asked How we checked it
geom_sf error Yes Explain a projection error Compared against the sf documentation and re-ran
Choosing a colour scale Yes Options for skewed data Tried linear and sqrt; we chose
Interpretation No
Writing Yes Check clarity of two paragraphs Reviewed every change

Example prompt:

“I have an sf object called zones with one row per commuting zone. exposure is numeric and heavily right-skewed. Using ggplot2, make a choropleth map and explain each line.”

What we changed afterwards: it suggested scale_fill_gradient() on a linear scale. When we looked at the result, nearly the whole map was one colour. We switched to viridis with trans = "sqrt".

Reference

Autor, D. H., Dorn, D., & Hanson, G. H. (2013). The China Syndrome: Local Labor Market Effects of Import Competition in the United States. American Economic Review, 103(6), 2121–2168.

Footnotes

  1. The map uses a square-root colour scale. A few zones are extreme outliers, so on a linear scale almost the whole country would be one colour and the variation among ordinary zones would disappear.↩︎