Sources & Methods
This page is the authoritative reference for every data source, calculation, assumption, and limitation used by DebtAtlas — including all historical features introduced with the History page and the Dashboard time slider.
Our philosophy: fragmented debt reporting creates a transparency gap. DebtAtlas integrates federal, state, and local liabilities into a single per-capita metric — and documents every step of that integration here.
Federal Layer — Live & Historical
Live Data (Dashboard)
- ›Endpoint: /v2/accounting/od/debt_to_penny, field tot_pub_debt_out_amt. No API key is required.
- ›Total public debt outstanding is the sum of debt held by the public and intragovernmental holdings — the full statutory debt subject to the limit.
- ›The most recent record is fetched with sort=-record_date. The date shown in the stats bar is the Treasury record date, not the time of your page load.
- ›Federal debt is a national aggregate. Every U.S. resident carries an equal share, so the per-capita value is identical across all states — this is by design.
Fallback: FRED — Gross Federal Debt (GFDEBTN)
- ›If the Treasury API is unreachable, DebtAtlas falls back to FRED series GFDEBTN (Federal Reserve Bank of St. Louis), in millions of dollars.
- ›GFDEBTN measures the same concept but is published only quarterly, so it can lag the Treasury figure by up to several months. It is a fallback rather than the primary source for exactly that reason.
- ›If both are unavailable, a hard-coded static value is used and the status indicator is labeled accordingly.
Historical Data (History Page & Time Slider)
- ›1790–1938: Derived from U.S. Treasury Department historical records (Annual Report of the Secretary of the Treasury on the State of the Finances) and the Census Bureau's Historical Statistics of the United States. Debt figures represent end-of-fiscal-year balances (fiscal year ended June 30 through FY1976).
- ›1939–2024: Sourced from FRED series GFDEBTN. Annual values represent the closest end-of-fiscal-year observation (September 30 from FY1977 onward).
- ›The dataset also includes annual U.S. population estimates (used to compute per-capita values) and a stateDebtIndex scaling factor (explained in Section 7).
- ›All historical debt figures are in nominal (not inflation-adjusted) dollars. No CPI or GDP deflator is applied. This enables comparison of actual dollar amounts across time but does not reflect purchasing-power differences.
State Layer
- ›API endpoint: /data/timeseries/govslocalfin — AGG_DESC=LF0233 ("Debt - Long-term Debt Outstanding"), GOVTYPE=002 (State).
- ›Unit: thousands of dollars. DebtAtlas multiplies by 1,000 to convert to dollars.
- ›Represents debt directly issued by state governments (general obligation bonds, revenue bonds, certificates of participation). Does not include unfunded pension or OPEB liabilities.
- ›D.C. does not appear at the state level in this survey — Census classifies the District as a local government, so its debt is reported entirely in the municipal layer and its state figure is $0. This is Census's classification, not an omission.
- ›If the Census API is unavailable, DebtAtlas falls back to the embedded 2021 static dataset in lib/staticData.ts. The data-source indicator in the controls bar shows which is active, including the year.
Municipal / Local Layer
- ›API endpoint: /data/timeseries/govslocalfin — AGG_DESC=LF0233 ("Debt - Long-term Debt Outstanding"), GOVTYPE=003 (Local). Same dataset, aggregate, and vintage as the state layer, so the two are directly comparable.
- ›Entities included: county governments, municipal corporations, independent school districts, and special-purpose authorities (transit, water, utilities).
- ›The school district finance API (govsschfin) covers only a fraction of total local debt and varies widely by state — using it alone would systematically undercount local obligations, so it is not used.
- ›Local debt structures vary significantly by state law. Some states centralize education finance at the state level; others decentralize broadly. DebtAtlas aggregates all local liabilities within each state to enable state-level comparison.
- ›If the Census API is unavailable, DebtAtlas falls back to the embedded 2021 static dataset in lib/staticData.ts.
Puerto Rico — Coverage and Limitations
Puerto Rico appears on the map as its own inset (rendered via the d3-composite-projections library's territories-aware Albers USA projection — the same technique used for the standard Alaska and Hawaii insets), but its data coverage is narrower than the 50 states and D.C.:
- ›Population: a real, live figure from the same ACS 1-year survey used for every state (3,203,295 for 2024), with the same static-fallback behavior as any other entity.
- ›Federal per capita: the same uniform figure shown for every state. Note that Puerto Rico is excluded from the national population denominator used to compute it, so the per-capita value shown is the 50-states-plus-D.C. figure rather than one recalculated to include the territory.
- ›State and local debt: not available. The Census state and local government finance survey (govslocalfin) — the source used for all 50 states and D.C. — does not cover U.S. territories, and returns no results for Puerto Rico at either government level. No substitute source is currently integrated.
Population & Per-Capita Normalization
Current (Dashboard)
- ›API endpoint: /data/2024/acs/acs1 — variable B01003_001E (total population).
- ›Population year is kept in step with the state/local debt year (both 2024) so per-capita figures never divide one year's debt by another year's population.
- ›Earlier versions used the Population Estimates Program (/data/2021/pep/population). That dataset exists only for the 2021 vintage — later years return HTTP 404 — so ACS 1-year is used instead for anything past 2021.
- ›National population is summed from state-level values, excluding Puerto Rico, so the federal per-capita denominator matches the population base the Treasury figure is normally quoted against. If live Census data is unavailable, the embedded STATIC_US_POPULATION constant is used.
Historical (History Page & Time Slider)
- ›Sources: U.S. decennial Census (every 10 years), interpolated with Census Bureau intercensal estimates for inter-Census years.
- ›Population figures are national totals used exclusively for federal-per-capita calculations in the History page and time slider.
- ›For state-level historical estimates in the Dashboard time slider, per-state population is approximated by scaling each state's 2021 population by the ratio of historical national population to 2021 national population. See Section 7 for full details.
Historical Debt Data — History Page
The History page draws on three static datasets that are embedded directly in the application: a 234-year federal debt time series, a list of presidential administration records, and a catalog of major historical events.
- ›Source: Official records from the Office of the Historian, U.S. House of Representatives and the U.S. Senate Historical Office.
- ›Grover Cleveland's two non-consecutive terms are stored as separate records (numbers 22 and 24) to correctly represent each administration independently.
- ›Dates reflect actual inauguration and end of service, including mid-term ends (death in office, resignation, assassination) — not nominal 4-year periods.
- ›Party labels are the historically contemporaneous party for each term (e.g., Lincoln is listed as Republican, not his short-lived National Union ticket in 1864).
- ›25 events are included spanning wars, economic crises, and major fiscal policy changes.
- ›Categories: War (military conflicts with significant fiscal impact), Economic (recessions, crises, recovery programs).
- ›Sources: U.S. Congressional Budget Office historical analyses, Federal Reserve historical publications, Library of Congress, and established economic histories.
- ›Event descriptions are written to provide historical context only. They do not assign causation. See Section 8 for the full events policy.
Presidential Administration Methodology
How Administrations Are Defined
Each entry in data/presidents.json contains the president's actual first day in office and last day in office, including mid-term transitions. Administrations are non-overlapping: when a vice president succeeds a president mid-term (e.g., Truman succeeding Roosevelt in April 1945), the prior administration ends on the exact date of transition.
How Debt Is Mapped to Administrations
- ›Dates are converted to decimal years (e.g., March 4, 1861 → 1861.170) to enable fractional positioning on the annual debt series.
- ›The debt series provides annual end-of-fiscal-year values (June 30 through 1976; September 30 thereafter).
- ›When an administration start or end date falls between two annual data points, DebtAtlas performs linear interpolation between the two nearest annual values.
- ›This interpolation is an approximation. Intra-year debt movements — particularly during active military conflicts or major legislative events — are not captured in annual data.
How Start and End Debt Values Are Calculated
- ›Debt at start = interpolated federal debt value at the president's inauguration date.
- ›Debt at end = interpolated federal debt value at the president's last day in office (or September 30, 2024 for the current administration).
- ›Per-capita values at start and end use the corresponding population estimate for that decimal year, also interpolated linearly from annual population data.
How Percentage Change Is Calculated
Percent change = (debt at end − debt at start) / debt at start × 100. This is a simple percentage change in nominal dollar debt outstanding. It does not adjust for inflation, GDP growth, population growth, or inherited trajectories.
Non-Consecutive Terms
Grover Cleveland (administrations 22 and 24) is treated as two separate entries. Donald Trump's first and second terms (45 and 47) are likewise treated as independent administrations. Each is evaluated only on debt changes during its own dates of service.
Important Interpretive Note
Historical Dashboard Visualization — Time Slider
How the Year Slider Works
The Dashboard time slider covers 1940–2024. When a historical year is selected, DebtAtlas overlays historical data onto the current API response without making additional network requests. The overlay is computed client-side using the embedded data/federal-debt-history.json dataset.
Federal Per-Capita Calculation (Exact)
- ›Federal debt for the selected year is read from the static historical dataset (with linear interpolation for years between data points).
- ›National population for that year is also read from the same dataset.
- ›Federal per capita = (federal debt in millions × 1,000,000) / population.
- ›This figure is exact within the accuracy of the historical dataset. It replaces the live FRED value while historical mode is active.
- ›Because federal debt is a national aggregate, every state displays the same federal per-capita value regardless of which year is selected.
State and Local Per-Capita Calculation (Estimated)
The Census Bureau does not publish consistent annual per-state debt data across decades. Annual Survey of State and Local Government Finance data (the authoritative source used for the 2021 snapshot) is not available in a uniform format for all states across the full historical range. To enable visual exploration of trends while being transparent about this limitation, DebtAtlas uses the following approximation:
- ›National debt index (stateDebtIndex): Each record in
federal-debt-history.jsonincludes astateDebtIndexvalue representing the estimated U.S. total state-and-local debt as a fraction of the 2021 total (where 2021 = 1.0). This index is derived from historical Census Government Finance Statistics aggregate totals and research literature on long-run subnational debt trends. - ›State debt scaling:Each state's 2021 state debt and local debt dollar amounts are multiplied by the stateDebtIndex to estimate the corresponding historical amount. This preserves the relative distribution between states while scaling the absolute levels.
- ›Population scaling:Each state's 2021 population is scaled by the ratio of historical national population to 2021 national population, approximating how state populations have changed proportionally over time.
- ›State per capita (historical) = (2021 state debt × stateDebtIndex) / (2021 state population × historical pop / 2021 pop).
- ›This method assumes that the relative share of state and local debt between states has remained broadly proportional across decades. In reality, individual states have experienced different debt trajectories. The result is an approximation suitable for broad trend visualization, not precise state-level historical analysis.
Map Coloring in Historical Mode
- ›The same sequential color scale is used in historical mode as in current mode — lighter shades indicate lower per-capita burden; darker shades indicate higher burden.
- ›Color ranges (min/max) are computed fresh for each selected year so that the full gradient is always used, even when all absolute values are much lower than today.
- ›On the Federal layer, all states display the same shade (federal debt is uniform). Visual variation between states on the Combined and State layers reflects the estimated state/local debt distribution.
Playback
The Play button increments the selected year automatically at the chosen speed (0.5× = 500ms/year, 1× = 250ms/year, 2× = 125ms/year, 5× = 50ms/year). Playback stops when it reaches 2024 or when the user clicks Pause. Reset returns to 1940.
Historical Events Layer
What Events Are Included
The History page timeline includes 25 major events from 1793 to 2020. Events were selected based on their demonstrated material impact on federal fiscal conditions — either through direct spending obligations (wars, emergency programs) or through revenue and automatic stabilizer effects (recessions, crises). Events are categorized as War or Economic.
How Events Are Displayed
- ›Events appear as dashed vertical lines on the debt timeline chart at the year the event began.
- ›Line color indicates category: red for War events, blue for Economic events.
- ›Hovering over a year with an event in its tooltip shows the event title and a brief description.
- ›The events layer is toggled on and off via the chart controls. It is on by default.
Interpretive Policy
Fallback & Static Data
DebtAtlas has two tiers of fallback to ensure the dashboard always loads even when external APIs are unavailable.
- ›Federal debt falls back from Treasury (daily) to FRED GFDEBTN (quarterly) to a hard-coded constant, in that order.
- ›If the Census state and local debt API (govslocalfin) is unavailable, the embedded 2021 static dataset in lib/staticData.ts is used for both layers.
- ›If the Census population API (ACS 1-year) is unavailable, the embedded national population constant is used and state populations fall back to the static dataset.
- ›Live and static values are never mixed within a single layer: if the live survey responds, every state's figure comes from it. A state absent from one government level within a live response means that level genuinely reports no debt (as with D.C. at the state level), which is different from the survey being down.
- ›The data-source status indicators in the Dashboard controls bar (green = live, amber = static) show which tier is active and which data year is being displayed.
- ›The History page and time slider always use static embedded data — they make no external API calls.
Known Data Limitations
Nominal Dollars Only
All debt figures on DebtAtlas are in nominal (current-year) dollars. No inflation adjustment is applied. This means that comparing 1945 debt ($259 billion) to 2024 debt ($35 trillion) in raw dollar terms substantially understates how much the real burden has grown on a purchasing-power basis — but it also overstates the burden relative to the economy. For context, debt as a percentage of GDP is a commonly used alternative metric not currently displayed. Inflation-adjusted figures are planned for a future release.
Fiscal Year vs. Calendar Year
Federal debt data is recorded at fiscal year end. The federal fiscal year ended June 30 through FY1976, then shifted to September 30 starting FY1977. Annual data points in the historical dataset are aligned to fiscal year end, which means a data point labeled "1980" represents the debt level as of September 30, 1980, not December 31, 1980. Debt at presidential inauguration dates is interpolated between the nearest fiscal-year observations.
State and Local Historical Approximation
Consistent, comparable state-level debt data across decades is not publicly available in a machine-readable format. The stateDebtIndex approximation used for the Dashboard time slider (described in Section 7) is based on national aggregate trends and should not be used for state-level historical comparisons. Only the current Census year on the Dashboard is drawn from actual per-state Census figures.
Reporting Lag
The federal figure is a business-day-current Treasury number, while state and local figures come from an annual Census survey released roughly 12–18 months after each fiscal year closes. The combined per-capita total therefore pairs today's federal debt with the most recent completed state and local survey year — currently 2024. This is unavoidable given how the underlying data is published, and the data year is shown in the Dashboard status bar so the difference is visible rather than implied.
Pre-1939 Federal Debt Data Quality
Federal debt figures before 1939 are sourced from Treasury historical records compiled over more than a century. Early records (pre-1900) have lower precision than modern data. Debt figures during the Civil War era (1861–1866) reflect the extraordinary volatility of wartime financing and are well-documented, but small discrepancies exist across different historical sources. The 1835 value ($33,733) represents the only time in U.S. history the federal debt was effectively eliminated; it is displayed as $0.0M for chart clarity.
State Debt Scope
State debt on DebtAtlas represents long-term debt outstanding (bonds and notes) issued by state governments. It does not include: unfunded pension liabilities, unfunded OPEB (other post-employment benefits) obligations, or contingent liabilities. These off-balance-sheet obligations are significant in many states but are not consistently reported in a format that enables cross-state comparison in this dataset.
Changes in Reporting Methodology
- ›The Census Bureau's Government Finance Statistics methodology has evolved since the survey began in 1902. Earlier vintages may not be fully comparable to modern data.
- ›State government borrowing structures have changed over time — the types of instruments counted as 'long-term debt' have expanded as financial instruments evolved.
- ›FRED's GFDEBTN series uses consistent modern definitions back to 1939. Pre-1939 data uses Treasury's historical reporting conventions, which differ slightly.
- ›Federal fiscal year end shifted from June 30 to September 30 in FY1977, creating a slight discontinuity in annual comparisons around that period.
Coverage Gaps
- ›State and local debt: only the most recent completed Census survey year (2024) is used as an actual per-state figure. All historical slider values are estimated.
- ›Territorial debt is not covered by the Census finance survey. Puerto Rico is shown on the map with real population and federal per-capita figures, but its state and local debt is displayed as "not available" rather than estimated. Other territories (Guam, U.S. Virgin Islands, etc.) are not shown.
- ›Off-balance-sheet federal obligations (Social Security trust fund shortfalls, Medicare obligations) are not included — only debt outstanding is shown. Figures that headline "unfunded liabilities" in the $100T+ range are actuarial projections of future obligations under stated assumptions, which is a different concept from money actually borrowed.
Corrections
Material corrections to previously published figures are recorded here.
govsstatefin endpoint using item code B79, which was believed to be long-term debt outstanding. It is not — Census labels that code "Intergovernmental Revenue from Federal - Public Welfare." Whenever live Census data was in use, the state layer was therefore displaying federal welfare grant revenue rather than debt, which understated the state figure for most states. The state layer now uses govslocalfin AGG_DESC LF0233 ("Debt - Long-term Debt Outstanding"), verified against Census's own published state and local debt totals. The static fallback dataset was unaffected.Data Citations
- U.S. Department of the Treasury. Debt to the Penny. Fiscal Data (Bureau of the Fiscal Service). Retrieved from fiscaldata.treasury.gov.
- Federal Reserve Bank of St. Louis. Gross Federal Debt [GFDEBTN]. FRED Economic Data. Retrieved from fred.stlouisfed.org. (Fallback source.)
- U.S. Census Bureau. State and Local Government Finances by Level of Government: U.S. and States, 2017–2024 [govslocalfin]. Government Finance Statistics.
- U.S. Census Bureau. American Community Survey, 1-Year Estimates, 2024. Table B01003 (Total Population).
- U.S. Department of the Treasury. (Various years). Annual Report of the Secretary of the Treasury on the State of the Finances. Treasury Historical Debt Outstanding.
- U.S. Bureau of the Census. (1975). Historical Statistics of the United States, Colonial Times to 1970. Series Y 493–504 (Public Debt).
- Office of the Historian, U.S. House of Representatives. Presidential Terms of Service.
DebtAtlas is for informational purposes only and does not constitute financial, legal, or investment advice. All figures are approximate and subject to revision as source agencies update their data. Historical approximations for the time slider are editorial estimates and should not be cited as authoritative historical state debt figures.