Skip to content
← All datasets

Poverty by Nativity and Citizenship (ACS)

How poverty rates differ between native-born residents, naturalized citizens, and noncitizens in each Georgia community - ACS 5-year estimates down to the census tract.

Year coverage
2020–2024
Updated
annual
Version
1.0.0
Schema hash
106cf9b88d70

Detail levels available

StateCounty · defaultDistrict

Overview

Poverty status by nativity and citizenship from the American Community Survey 5-year estimates (detailed table B17025, Poverty Status in the Past 12 Months by Nativity), for Georgia at state, county, school district, and census tract geography, vintages 2020-2024: the share of people below the federal poverty line among the native born (born in the U.S. vs born outside it), the foreign born, naturalized citizens, and noncitizens, with the underlying counts and 90 percent margins of error.

Row grain: One row per year, county_fips, district_code, tract_geoid, citizenship_status, native_birthplace.

Key metric

poverty_rate — Poverty Rate (proportion)

The single headline value most answers want.

Variables

Every column in the fact table. The code is the exact field name the API returns.

ColumnTypeUnitRangeNull?Description
yearYearinteger——noACS 5-year vintage END year: 2024 covers the pooled 2020-2024 survey period. Consecutive vintages overlap.
Full description
ACS 5-year vintage END year: 2024 covers the pooled 2020-2024 survey period. Consecutive vintages overlap.
county_fipsCounty FIPSstring——yes5-digit county FIPS code (state 13 + county). Populated only on county-level rows.
Full description
5-digit county FIPS code (state 13 + county). Populated only on county-level rows.

Joins counties; adds its label columns.

district_codeDistrict Codestring——yesGCD school district code (FK to the education districts dimension). Populated only on district-level rows - Census unified-school-district estimates mapped onto the ~180 standard districts via the dimension's district_census_id.
Full description
GCD school district code (FK to the education districts dimension). Populated only on district-level rows - Census unified-school-district estimates mapped onto the ~180 standard districts via the dimension's district_census_id.

Joins districts; adds its label columns.

tract_geoidTract GEOIDstring——yes11-digit census tract GEOID (2020 boundaries). Populated only on tract-level rows.
Full description
11-digit census tract GEOID (2020 boundaries). Populated only on tract-level rows.

Joins tracts; adds its label columns.

citizenship_statusCitizenship Statusstring——noNative vs foreign born, and the foreign born by citizenship; a hierarchy, never summed.
Full description
Nativity and citizenship status. Hierarchical, not a partition: all = native + foreign_born, and foreign_born = naturalized + noncitizen, so the five values must never be summed. 'all' is the total row. The ACS asks citizenship, not legal status: noncitizen covers lawful permanent residents, temporary visa holders, and unauthorized migrants alike. In this topic the universe is the population for whom poverty status is determined (B17025), and the five values are served at native_birthplace = 'all'; only 'native' additionally splits by native_birthplace.
5 allowed values
  • all — total / aggregate
  • native
  • foreign_born
  • naturalized
  • noncitizen
native_birthplaceNative Birthplacestring——noWhether native-born residents were born in the U.S. or abroad as citizens; pin citizenship_status to 'native' to use it.
Full description
Where the native-born population was born (topic-local axis from B17025): born_in_us = born in one of the 50 states or the District of Columbia; born_outside_us = born in Puerto Rico or a U.S. Island Area, or abroad to at least one U.S.-citizen parent. A partition of the native population: native = born_in_us + born_outside_us. 'all' is the total for the citizenship_status row and is the default pin. Values other than 'all' exist only under citizenship_status = 'native' - the foreign born are by definition born outside the U.S., so the source publishes no birthplace split for them and no such row is served. Not the shared place_of_birth axis (which splits the native born by state of birth).
3 allowed values
  • all — total / aggregate
  • born_in_us
  • born_outside_us
poverty_ratePoverty Ratenumberproportion—yesShare of the nativity group below the federal poverty line.
Full description
People below the federal poverty line as a share of those in the nativity / citizenship group with poverty status determined (0-1), derived as num_below_poverty / num_poverty_universe. NULL when the group's universe is empty in the geography (a true absence, not suppression). Not the same construct as school data's 'economically disadvantaged'.
poverty_rate_moePoverty Rate Moenumberproportion—yes90 percent margin of error for poverty_rate, derived from the count margins with the Census ratio formula: the subtraction form, with the Census addition-form fallback whenever the radicand is not positive, so a served margin is always greater than zero; a result above 1.0 is set to NULL as known-bad. A rate of exactly 0 or 1 (0 or 100 percent) instead takes the Census's own model margin for such estimates, 1.645 * sqrt(R * (1 - R) * AW / N) with R = min(2.3 * AW / N, 0.5), N the denominator and AW Georgia's average survey weight for the vintage (18 in 2020, 19 in 2021-2024): the ratio formula would give a 0 percent rate only the zero count's margin over N, about half the width the Census publishes. Never the headline metric.
Full description
90 percent margin of error for poverty_rate, derived from the count margins with the Census ratio formula: the subtraction form, with the Census addition-form fallback whenever the radicand is not positive, so a served margin is always greater than zero; a result above 1.0 is set to NULL as known-bad. A rate of exactly 0 or 1 (0 or 100 percent) instead takes the Census's own model margin for such estimates, 1.645 * sqrt(R * (1 - R) * AW / N) with R = min(2.3 * AW / N, 0.5), N the denominator and AW Georgia's average survey weight for the vintage (18 in 2020, 19 in 2021-2024): the ratio formula would give a 0 percent rate only the zero count's margin over N, about half the width the Census publishes. Never the headline metric.
num_below_povertyNumber Below Povertyintegercount—yesPeople in the nativity / citizenship group with income below the poverty level in the past 12 months (the published B17025 below-poverty cell) - the rate's numerator. Published zeros are real.
Full description
People in the nativity / citizenship group with income below the poverty level in the past 12 months (the published B17025 below-poverty cell) - the rate's numerator. Published zeros are real.
num_below_poverty_moeNumber Below Poverty Moeintegercount—yes90 percent margin of error for num_below_poverty, as published (integer). Never the headline metric.
Full description
90 percent margin of error for num_below_poverty, as published (integer). Never the headline metric.
num_poverty_universeNumber Poverty Universeintegercount—yesPopulation in the nativity / citizenship group for whom poverty status is determined - the rate's denominator. The published total (B17025_001) on the (all, all) row; the exact sum of the group's below-poverty and at-or-above-poverty cells elsewhere. Excludes institutionalized people, military group quarters, college dormitories, and unrelated individuals under 15, so it is smaller than the total population.
Full description
Population in the nativity / citizenship group for whom poverty status is determined - the rate's denominator. The published total (B17025_001) on the (all, all) row; the exact sum of the group's below-poverty and at-or-above-poverty cells elsewhere. Excludes institutionalized people, military group quarters, college dormitories, and unrelated individuals under 15, so it is smaller than the total population.
num_poverty_universe_moeNumber Poverty Universe Moenumbercount—yes90 percent margin of error for num_poverty_universe. The published total margin (B17025_001M, cast to float, never rounded) on the (all, all) row; on the six sub-group rows the Census sqrt-sum-of-squares approximation over the below-poverty and at-or-above-poverty cell margins under the zero-estimate rule (non-integer). Never the headline metric.
Full description
90 percent margin of error for num_poverty_universe. The published total margin (B17025_001M, cast to float, never rounded) on the (all, all) row; on the six sub-group rows the Census sqrt-sum-of-squares approximation over the below-poverty and at-or-above-poverty cell margins under the zero-estimate rule (non-integer). Never the headline metric.

Filters

Query parameters the fact endpoint accepts. Comma-separated values are OR within a parameter; multiple parameters AND together.

ParameterKindAllowed valuesNotes
yearyear_exactany value—
year_minyear_rangeany value—
year_maxyear_rangeany value—
detaildetailcountiesdistrictsstatestractsenum-enforced, default: counties
district_codeforeign_keyany valuemulti-value
county_fipsforeign_keyany valuemulti-value
tract_geoidforeign_keyany valuemulti-value
citizenship_statuscategoricalallnativeforeign_bornnaturalizednoncitizenmulti-value, enum-enforced
native_birthplacecategoricalallborn_in_usborn_outside_usmulti-value, enum-enforced
district_typedimension_attribute
7 allowed values
  • commission_charter
  • resa
  • standard
  • state_agency
  • state_charter
  • state_school
  • state_special
multi-value, enum-enforced

Example requests

Run these against the base URL — they return live data.

All rows (first page), counties level

curl "https://georgiacivicdata.org/api/v1/census/poverty_by_nativity"

counties data for 2024

curl "https://georgiacivicdata.org/api/v1/census/poverty_by_nativity?year=2024"

Filtered to citizenship_status = native for 2024

curl "https://georgiacivicdata.org/api/v1/census/poverty_by_nativity?year=2024&citizenship_status=native"

One district (code 660), 2024

curl "https://georgiacivicdata.org/api/v1/census/poverty_by_nativity?district_code=660&year=2024&detail=districts"

One county (FIPS 13121), 2024

curl "https://georgiacivicdata.org/api/v1/census/poverty_by_nativity?county_fips=13121&year=2024&detail=counties"

Download 2024 as CSV

curl "https://georgiacivicdata.org/api/v1/census/poverty_by_nativity?year=2024&format=csv"

Notes & limitations

NULL handling

  • Zero is a real, reported value.

Limitations

citizenship_status is a hierarchy, not a partition: all = native + foreign_born and foreign_born = naturalized + noncitizen, so never sum across it. native_birthplace values other than 'all' exist only under citizenship_status 'native', where born_in_us + born_outside_us partition the native population (the foreign born are by definition born outside the U.S., so the source publishes no such split for them); under any other citizenship_status the only native_birthplace row is 'all'. Universe: the population for whom poverty status is determined, which excludes institutionalized people, military group quarters, college dormitories, and unrelated individuals under 15 - so the 'all' universe is smaller than the total population (10,679,691 vs 10,940,407 in population_by_race for 2024) and is material in counties with large institutional or campus populations. Published zeros are real estimates, not suppression: small foreign-born and born-outside-the-U.S. cells in rural counties and many tracts are 0 with a positive margin, and a NULL poverty_rate at tract grain almost always means the group has no poverty-determined members there (a zero universe - a true absence). Each group's universe is its below-poverty plus at-or-above-poverty count, an exact partition in the source; the six sub-group universe margins are derived with the Census sqrt-sum-of-squares approximation (non-integer, served as a float), while the 'all' row serves the published total and its published margin, which is far tighter than a derived one because the two poverty cells partition a near-fixed total. poverty_rate_moe is derived from the count margins with the Census ratio formula (addition-form fallback whenever the subtraction form's radicand is not positive, so a served margin is never zero; a 0 or 100 percent rate takes the Census's own model margin for such estimates); a degenerate small-sample margin above 1.0 is set to NULL. ACS poverty is NOT the same construct as GOSA's 'economically disadvantaged' (a program-eligibility flag) - related, not equivalent. The ACS asks citizenship, not legal status: noncitizen covers lawful permanent residents, temporary visa holders, humanitarian migrants, and unauthorized migrants alike. No annotation sentinel appears in vintages 2020-2024, so no count is masked; a NULL count margin beside a present estimate would be a controlled estimate, never suppression. ACS 5-year period estimates: the year column is the vintage END year and each estimate pools five years of survey responses (2024 = 2020-2024). Consecutive vintages share about 80% of their sample, so the series is heavily smoothed - never difference overlapping vintages as if they were annual change. Estimates are survey-based and carry 90% margins of error (the *_moe columns); tract-level margins can be large relative to the estimate. All levels serve vintages 2020-2024 only, on 2020-vintage tract boundaries. State rows have NULL county_fips, district_code, and tract_geoid; county rows carry only county_fips, district rows only district_code, tract rows only tract_geoid. District rows cover the ~180 standard (city/county) districts only: the Census publishes school-district estimates at unified school district geography, which has no codes for charter schools, RESAs, or state agencies, and its few Census-only districts (e.g. the Fort Stewart military district) have no GCD district code and are dropped.