{
  "alt": "Figure with three tabs. The first is a scatter plot of the net migration rate of each county against its childhood mobility rank, a cloud with a downward-sloping fitted line. The second is a bar chart of the pooled rate in tenths of counties by mobility, with negative bars for the two highest tenths. The third is a bar chart in tenths by deprivation, with a negative bar for the most deprived tenth.",
  "caption": "The first tab shows counties sloping down to the right, and the second and third tabs group counties into tenths. Each dot in the first tab is a county sized by population, and {fact:n_out_mob} counties fall outside the plotted range; the fitted line is population-weighted, with a 95% band from a bootstrap over states. The bars in the other tabs are pooled rates for tenths of counties, with 95% intervals from the same bootstrap.",
  "data": [],
  "id": "migration_vs_mobility",
  "notes": [
    "The net migration rate is arriving minus leaving returns per thousand returns filed in the county for tax year 2022. Returns are filers, not people; arrivals include moves from abroad and departures include moves abroad.",
    "The scatter shows {fact:scatter_n} counties. The correlation counts each county in proportion to its population. Counting each county once gives {fact:r_kfr_unw}.",
    "Tenths hold equal numbers of the counties in the analysis. A bar is the sum of net returns over the counties of a tenth divided by the sum of their returns filed, so large counties count more. The intervals resample states, whose counties resemble each other."
  ],
  "source": "IRS Statistics of Income county migration data, filing years 2022 and 2023, IRS SOI county file, tax year 2022, Opportunity Atlas county outcomes (1978-1983 birth cohorts) and ADI 2023; population-weighted fit, full counts of returns",
  "spec": {
    "panels": [
      {
        "figure": {
          "alt": "Scatter plot of the net migration rate against the county mobility rank, one dot per county sized by population, with a downward-sloping line and a shaded band around it.",
          "caption": "Dots drift down from left to right, and the fitted line falls across the range of mobility ranks. The line is the population-weighted least-squares fit, with a 95% band from a bootstrap over states.",
          "data": [],
          "id": "mig_scatter",
          "spec": {
            "label": "name",
            "overlays": [
              {
                "hi": "hi",
                "kind": "band",
                "label": "Fitted line, population-weighted, with 95% band",
                "lo": "lo",
                "rows": [
                  {
                    "hi": 6.94,
                    "lo": 0.38,
                    "x": 31,
                    "y": 3.9
                  },
                  {
                    "hi": 6.16,
                    "lo": 0.19,
                    "x": 32.25,
                    "y": 3.41
                  },
                  {
                    "hi": 5.41,
                    "lo": 0.05,
                    "x": 33.5,
                    "y": 2.91
                  },
                  {
                    "hi": 4.68,
                    "lo": -0.19,
                    "x": 34.75,
                    "y": 2.42
                  },
                  {
                    "hi": 3.95,
                    "lo": -0.46,
                    "x": 36,
                    "y": 1.93
                  },
                  {
                    "hi": 3.31,
                    "lo": -0.7,
                    "x": 37.25,
                    "y": 1.43
                  },
                  {
                    "hi": 2.7,
                    "lo": -1.01,
                    "x": 38.5,
                    "y": 0.94
                  },
                  {
                    "hi": 2.2,
                    "lo": -1.36,
                    "x": 39.75,
                    "y": 0.45
                  },
                  {
                    "hi": 1.8,
                    "lo": -1.78,
                    "x": 41,
                    "y": -0.05
                  },
                  {
                    "hi": 1.55,
                    "lo": -2.29,
                    "x": 42.25,
                    "y": -0.54
                  },
                  {
                    "hi": 1.36,
                    "lo": -2.91,
                    "x": 43.5,
                    "y": -1.03
                  },
                  {
                    "hi": 1.08,
                    "lo": -3.57,
                    "x": 44.75,
                    "y": -1.53
                  },
                  {
                    "hi": 0.92,
                    "lo": -4.26,
                    "x": 46,
                    "y": -2.02
                  },
                  {
                    "hi": 0.77,
                    "lo": -5.03,
                    "x": 47.25,
                    "y": -2.51
                  },
                  {
                    "hi": 0.66,
                    "lo": -5.81,
                    "x": 48.5,
                    "y": -3.01
                  },
                  {
                    "hi": 0.55,
                    "lo": -6.63,
                    "x": 49.75,
                    "y": -3.5
                  },
                  {
                    "hi": 0.47,
                    "lo": -7.43,
                    "x": 51,
                    "y": -4
                  },
                  {
                    "hi": 0.35,
                    "lo": -8.22,
                    "x": 52.25,
                    "y": -4.49
                  },
                  {
                    "hi": 0.21,
                    "lo": -9.04,
                    "x": 53.5,
                    "y": -4.98
                  },
                  {
                    "hi": 0.11,
                    "lo": -9.88,
                    "x": 54.75,
                    "y": -5.48
                  },
                  {
                    "hi": -0.01,
                    "lo": -10.71,
                    "x": 56,
                    "y": -5.97
                  },
                  {
                    "hi": -0.1,
                    "lo": -11.53,
                    "x": 57.25,
                    "y": -6.46
                  },
                  {
                    "hi": -0.17,
                    "lo": -12.35,
                    "x": 58.5,
                    "y": -6.96
                  },
                  {
                    "hi": -0.24,
                    "lo": -13.19,
                    "x": 59.75,
                    "y": -7.45
                  },
                  {
                    "hi": -0.31,
                    "lo": -14.02,
                    "x": 61,
                    "y": -7.94
                  }
                ],
                "x": "x",
                "y": "y"
              }
            ],
            "payload": "migration_vs_mobility.json",
            "size": "pop",
            "sizeLabel": "Population, ACS 2019-2023",
            "x": "kfr",
            "xDomain": [
              25,
              65
            ],
            "xFormat": {
              "digits": 0
            },
            "xLabel": "Upward-mobility rank of children from low-income families (percentile)",
            "y": "rate",
            "yDomain": [
              -40,
              40
            ],
            "yFormat": {
              "digits": 0
            },
            "yLabel": "Net migrating returns per 1,000 returns filed"
          },
          "subtitle": "Net migrating returns per 1,000 returns filed against the mean adult income rank of children raised in low-income families, one dot per county sized by population",
          "title": "Counties with a higher upward-mobility rank had lower net migration, a slope of {fact:mob_slope} returns per thousand for each percentile point",
          "type": "scatter"
        },
        "label": "Counties"
      },
      {
        "figure": {
          "alt": "Bar chart with ten bars for tenths of counties by mobility. The bars are small and positive for most low tenths, near zero in the middle, and negative for the highest two tenths.",
          "caption": "The bars fall toward the right and only the two highest tenths have intervals entirely below zero. Each bar pools the counties of a tenth, with a 95% interval from a bootstrap over states.",
          "data": [
            {
              "conf_high": 3.64,
              "conf_low": -2.67,
              "decile": "1 (lowest)",
              "estimate": 0.88,
              "n_units": 308
            },
            {
              "conf_high": 7.3,
              "conf_low": -0.75,
              "decile": "2",
              "estimate": 3.63,
              "n_units": 309
            },
            {
              "conf_high": 5.34,
              "conf_low": -2.12,
              "decile": "3",
              "estimate": 1.62,
              "n_units": 308
            },
            {
              "conf_high": 3.01,
              "conf_low": -0.43,
              "decile": "4",
              "estimate": 1.5,
              "n_units": 309
            },
            {
              "conf_high": 0.71,
              "conf_low": -2.7,
              "decile": "5",
              "estimate": -1.01,
              "n_units": 309
            },
            {
              "conf_high": 1.46,
              "conf_low": -4.64,
              "decile": "6",
              "estimate": -2.61,
              "n_units": 308
            },
            {
              "conf_high": 5.12,
              "conf_low": -3.15,
              "decile": "7",
              "estimate": 0.63,
              "n_units": 309
            },
            {
              "conf_high": 2.1,
              "conf_low": -3.03,
              "decile": "8",
              "estimate": -0.79,
              "n_units": 308
            },
            {
              "conf_high": -1.56,
              "conf_low": -7.86,
              "decile": "9",
              "estimate": -5.22,
              "n_units": 309
            },
            {
              "conf_high": -1.87,
              "conf_low": -4.7,
              "decile": "10 (highest)",
              "estimate": -3.55,
              "n_units": 309
            }
          ],
          "id": "mig_by_mobility",
          "spec": {
            "category": "decile",
            "categoryLabel": "Tenth of counties by upward-mobility rank",
            "diverging": true,
            "format": {
              "digits": 1
            },
            "hi": "conf_high",
            "lo": "conf_low",
            "n": "n_units",
            "orientation": "v",
            "sort": "data",
            "value": "estimate",
            "valueLabel": "Net migrating returns per 1,000 returns filed"
          },
          "subtitle": "Pooled net migrating returns per 1,000 returns filed, by tenth of counties ranked on upward mobility",
          "title": "The two highest tenths of counties by mobility had net rates of {fact:kfr_d9} and {fact:kfr_d10} returns per thousand, with intervals below zero",
          "type": "bar"
        },
        "label": "Tenths by mobility"
      },
      {
        "figure": {
          "alt": "Bar chart with ten bars for tenths of counties by deprivation. The first tenth is negative, the second to fourth tenths positive, the middle tenths near zero and the last tenth the most negative.",
          "caption": "The most deprived tenth has the lowest rate and the only interval entirely below zero. The least deprived tenth is also negative in its point estimate, with an interval that includes zero, and the second to fourth tenths are positive in theirs. Each bar pools the counties of a tenth, with a 95% interval from a bootstrap over states.",
          "data": [
            {
              "conf_high": 1.52,
              "conf_low": -4.56,
              "decile": "1 (lowest)",
              "estimate": -2.38,
              "n_units": 308
            },
            {
              "conf_high": 5.13,
              "conf_low": -0.07,
              "decile": "2",
              "estimate": 2.56,
              "n_units": 308
            },
            {
              "conf_high": 4.73,
              "conf_low": 0.26,
              "decile": "3",
              "estimate": 2.08,
              "n_units": 308
            },
            {
              "conf_high": 5.01,
              "conf_low": -1.43,
              "decile": "4",
              "estimate": 1.53,
              "n_units": 308
            },
            {
              "conf_high": 1.69,
              "conf_low": -1.71,
              "decile": "5",
              "estimate": -0.24,
              "n_units": 308
            },
            {
              "conf_high": 2.19,
              "conf_low": -1.57,
              "decile": "6",
              "estimate": 0.01,
              "n_units": 308
            },
            {
              "conf_high": 2.3,
              "conf_low": -1.13,
              "decile": "7",
              "estimate": 0.42,
              "n_units": 308
            },
            {
              "conf_high": 1.64,
              "conf_low": -1.95,
              "decile": "8",
              "estimate": -0.49,
              "n_units": 308
            },
            {
              "conf_high": 0.53,
              "conf_low": -2.54,
              "decile": "9",
              "estimate": -1.13,
              "n_units": 308
            },
            {
              "conf_high": -2.29,
              "conf_low": -6.65,
              "decile": "10 (highest)",
              "estimate": -4.52,
              "n_units": 308
            }
          ],
          "id": "mig_by_deprivation",
          "spec": {
            "category": "decile",
            "categoryLabel": "Tenth of counties by Area Deprivation Index (1 = least deprived)",
            "diverging": true,
            "format": {
              "digits": 1
            },
            "hi": "conf_high",
            "lo": "conf_low",
            "n": "n_units",
            "orientation": "v",
            "sort": "data",
            "value": "estimate",
            "valueLabel": "Net migrating returns per 1,000 returns filed"
          },
          "subtitle": "Pooled net migrating returns per 1,000 returns filed, by tenth of counties ranked on the Area Deprivation Index (1 = least deprived)",
          "title": "The most deprived tenth of counties had a net rate of {fact:adi_d10} returns per thousand and the least deprived tenth {fact:adi_d1}, with positive point estimates in the second to fourth tenths",
          "type": "bar"
        },
        "label": "Tenths by deprivation"
      }
    ]
  },
  "subtitle": "Net migrating returns per 1,000 returns filed for tax year 2022, by county, against the Opportunity Atlas upward-mobility rank, returns filed in 2022 matched with returns filed in 2023",
  "title": "Net migration of tax filers is lower in counties with higher childhood mobility, a population-weighted correlation of {fact:r_kfr}, and the two highest tenths by mobility lost filers on net",
  "type": "tabs",
  "width": "wide"
}
