Microproduct Data GuideIntermediate

CDC PLACES

Modeled local health estimates for U.S. counties and smaller areas for building community-health comparisons and resource-planning tools.

Report a Problem

At a Glance

Difficulty
Intermediate — some data preparation helps
Size
Small · ≤0.1 GB
Formats
JSON, CSV, GeoJSON
Access
API or Download
API Key
Not Required
Provider
Centers for Disease Control and Prevention
Updates
Annual
Last Verified
Aug 18, 2026
Source Type
Government Source
  • Python Syntax Checked

From Source to Product Signal

Test a Product Idea in Four Steps

CDC PLACES provides consistently modeled health estimates for counties, places, census tracts, and ZIP Code Tabulation Areas. Start with one measure and a few counties from the current release. PLACES values are modeled small-area estimates with uncertainty, not diagnoses or direct local case counts.

1

Check the Setup

  • Python 3.10 or newer
  • A notebook environment such as Jupyter or Google Colab
  • Three county FIPS codes for a bounded comparison
2

Access the Data

  1. 1.Open the current PLACES release and record its year and county dataset identifier.
  2. 2.Choose one documented measure and one prevalence type for a small set of county FIPS codes.
  3. 3.Retain confidence limits and methodology context when comparing the modeled estimates.
Open Official Source
3

Run the Python Example

Install the packages, then run the notebook cell.

python -m pip install pandas requests

import pandas as pd
import requests

response = requests.get(
    "https://data.cdc.gov/resource/swc5-untb.json",
    params={
        "$select": "locationid,locationname,stateabbr,measureid,data_value,data_value_unit,low_confidence_limit,high_confidence_limit",
        "$where": "measureid='DIABETES' AND data_value_type='Age-adjusted prevalence' AND locationid in('06037','06073','06075')",
        "$limit": 10,
    },
    timeout=30,
)
response.raise_for_status()
counties = pd.DataFrame(response.json())
for column in ["data_value", "low_confidence_limit", "high_confidence_limit"]:
    counties[column] = pd.to_numeric(counties[column], errors="coerce")
counties["retrieved_at_utc"] = pd.Timestamp.now(tz="UTC")
print(counties.sort_values("data_value", ascending=False))
4

Test a Useful Signal

Compare Modeled Diabetes Prevalence across Three Counties

Compare age-adjusted diagnosed-diabetes estimates and uncertainty for three California counties.

  1. 01Confirm the release year, DIABETES measure definition, county FIPS codes, and age-adjusted prevalence type.
  2. 02Rank the three estimates while showing their low and high confidence limits.
  3. 03Explain that overlapping uncertainty, model inputs, and small-area estimation prevent treating the values as diagnoses, direct counts, or program effects.

Dataset Details

Centers for Disease Control and Prevention is a government source. Last verified 2026-08-18. Temporal coverage: annual releases using recent survey and population inputs.

Geography

Provider

Centers for Disease Control and Prevention

Data Terms

U.S. Public Domain with CDC attribution and use requirements

Send Feedback