Methodology & Data Sources

Current Source Contract

Every figure currently served by PlainFoster is rebuilt from these official ACF AFCARS files:

  • The AFCARS Trends in Foster Care and Adoption release supplies the state and national FY2013–FY2022 workbooks. The state workbook contains annual counts for children served, in care on September 30, entries, exits, waiting for adoption, terminated parental rights, and adoptions.
  • The archive of state AFCARS reports supplies one FY2022 report for every state, the District of Columbia, and Puerto Rico. PlainFoster reads placement-setting counts, discharge-reason counts, and median time in care from those reports.
  • ACF's AFCARS archived information page documents Report No. 30 and the FY2022 preliminary-estimate vintage.

From-Scratch Pipeline

  1. node scripts/etl.mjs --download downloads both official workbooks and 52 jurisdiction reports with size and file-type checks.
  2. The ETL reads the official XLSX worksheet XML directly and extracts all seven count series for FY2013–FY2022.
  3. It reads the table coordinates in pages 2 and 4 of every jurisdiction report to extract placement counts, discharge counts, and median months among exits.
  4. Reunification, adoption, and aging-out rates are calculated from their discharge counts divided by total exits. Placement shares are calculated from placement counts divided by children in care on September 30.
  5. The state profile grade averages four equal-weight within-release percentile ranks: reunification and adoption (higher ranks favorable), aging out and median length of stay (lower ranks favorable). Scores map to A/B/C/D/F at 80/60/40/20. This is a PlainFoster display, not a federal grade.
  6. The rebuild stops if row counts, national checkpoints, Alabama checkpoints, trend cardinality, source cardinality, or exit conservation fail.
  7. A source_provenance table records each source URL, local path, retrieval date, scope, and SHA-256 hash.

Hard Checkpoints

The FY2022 rebuild must match 368,530 children in care, 186,602 entries, and 201,372 exits nationally. Alabama must match 5,260 children in care, 3,350 entries, and 3,278 exits. The public state table covers the 50 states plus D.C.; the national aggregate also includes Puerto Rico, matching the ACF workbook total.

What Is Deliberately Withheld

PlainFoster formerly displayed per-capita rates, an NCANDS maltreatment overlay, and four additional performance indicators: re-entry, placement stability, maltreatment recurrence, and timely permanency. Their prior database values could not be recreated from the archived files that the site claimed to use. Those fields are now null and absent from public tables. They will return only when an exact publisher file, period, definition, unit, and parser are wired into the rebuild.

Three Populations (Do Not Mix Blindly)

Figures share AFCARS agency codes but are not one interchangeable caseload. Ratios, grades, and Dataset temporalCoverage must name which population they use:

  1. Multi-year count trends (FY2013–FY2022) - annual workbook series for children served, in care on September 30, entries, exits, waiting for adoption, TPR, and adoptions. Homepage Dataset coverage 2013/2022 is this union.
  2. FY2022 point-in-time stock - children in care on September 30, FY2022, plus that year's entries and exits. State profile headcounts and placement shares use this stock (placement % = placement counts / in-care stock).
  3. FY2022 exit outcomes - reunification, adoption, and aging-out rates are discharge-reason counts divided by total exits among children who left during FY2022. Median length of stay is also among exiters, not everyone still in care. Never read these rates as shares of the in-care stock.

National FY2022 aggregates include Puerto Rico; the public 50-state + D.C. table does not, so state sums will not equal the national checkpoint. Present-tense "currently in care" language is forbidden for FY2022 stock.

Corpus placement (#N of M)

Every state profile states where that jurisdiction sits in PlainFoster's own 51-jurisdiction corpus. Placement is computed with SQL ROW_NUMBER over the same FY exit-outcome rows the detail pages render - never hand-picked and never invented as a quality score.

  • Reunification share of exits - rank among all 51 jurisdictions by FY reunification discharge share (highest = #1). This is one exit pathway among children who left care during the fiscal year, not a share of the in-care stock.
  • Adoption share of exits - rank among the same 51 by FY adoption discharge share (highest = #1). Reunification and adoption are competing shares of the same exits denominator, so the two ladders diverge hard (a high-reunification state often ranks low on adoption, and the reverse).

The Callout on each state page names both signals and links here so the derivation stays visible. Neither rank is an overall child-welfare quality verdict.

Vintage and Interpretation

The current comparable state series ends at FY2022. Counts describe children and events in a federal fiscal-year reporting system; they are not current caseload estimates. See § populations for the stock vs exit-outcome split.

A ranking of one measure does not establish child safety, service quality, causation, or overall system performance. State rules, data systems, case mix, courts, and reporting practices differ. PlainFoster is independent and is not affiliated with ACF or any government agency.

Corrections

The reproducible rebuild replaced a superseded database whose national and state values did not match the cited FY2022 source. Legacy research pages that depended on those values were retired rather than silently rewritten. Questions about the correction can be sent through the contact page.

A correction begins at the data layer. We compare the reported value with the publisher file, reproduce the parser output, update the ETL when necessary, and rebuild the database under the same checkpoints. This keeps page copy, downloads, rankings, and structured data aligned instead of masking an upstream error with a one-page edit.

Open data extract: foster-care-statistics.csv (AFCARS jurisdiction extract · public domain).