An interactive Power BI report on autism prevalence among U.S. children (2000–2022), exploring trends over time and differences by state, sex, and race.
This report brings together three public CDC datasets on autism spectrum disorder into a single interactive Power BI dashboard. It lets a viewer explore how reported prevalence among U.S. children has changed from 2000 to 2022, and how it differs by data source, state, sex, and race — all through one page of connected visuals and slicers.
Autism prevalence figures are widely cited but rarely easy to explore. The numbers come from several different surveillance programs, span two decades, and vary considerably from state to state and group to group. The goal of this project was to turn that scattered public data into a clear, interactive view where anyone can answer their own questions: Is prevalence rising? How much does it depend on which data source you look at? Where is it highest? Do the patterns differ for boys and girls, or across racial groups?
Three public datasets published by the CDC's autism data & research program (cdc.gov/autism/data-research), loaded from CSV:
Together they cover U.S. states from 2000 to 2022, with prevalence expressed per 1,000 children. The prevalence figures are drawn from several surveillance sources — the ADDM Network, Medicaid, the National Survey of Children's Health, and Special Education Child Count — each reported with lower and upper confidence intervals.

Sample DAX
StateDim — unified State dimension table
StateDim =
VAR States =
DISTINCT(
UNION(
SELECTCOLUMNS(
'ADDM-Estimates-By-Race',
"State", 'ADDM-Estimates-By-Race'[State]
),
SELECTCOLUMNS(
'ADDM-Estimates-By-Sex',
"State", 'ADDM-Estimates-By-Sex'[State]
),
SELECTCOLUMNS(
'Prevalence-Estimates-Over-Time-by-State',
"State", 'Prevalence-Estimates-Over-Time-by-State'[State]
)
)
)
RETURN
ADDCOLUMNS(
States,
"StateSort",
IF(
[State] = "Total",
0,
RANKX(
FILTER(States, [State] <> "Total"),
[State],
,
ASC
)
)
)StateHighestPreval — highest-prevalence state (KPI)
StateHighestPreval =
VAR StateTbl = (
ADDCOLUMNS(
VALUES('Prevalence-Estimates-Over-Time-by-State'[State]),
"TotalPrev", CALCULATE([TotalPreval])
)
)
VAR TopState =(
TOPN(1,
StateTbl,
[TotalPrev], DESC,
'Prevalence-Estimates-Over-Time-by-State'[State], ASC
)
)
RETURN
CONCATENATEX(TopState,
'Prevalence-Estimates-Over-Time-by-State'[State],
", ")A single page with two KPI cards, four visuals, and three slicers:
Interactivity: a Data Set slicer filters every visual except sex and race; a Year slicer drives the map and the two KPI cards; and a State slicer applies to the line, sex, and race charts.
Note: these figures vary considerably by data source and year, so the slicers should be applied with care — comparisons are only meaningful within a single data source and time frame.