Census data, without the pain.
A Census API that returns metrics and trends—not tables and variable codes. Get answers, not ingredients.
What's broken today
Working with Census data means wrestling with cryptic variable codes, multi-table joins, and manual calculations. Every team rebuilds the same logic—and most get it wrong.
Example: "What percent of workers in ZIP 60004 work from home?"
With the Census API, you need to know the exact table (B08301), variable codes, pull multiple years, map ZIP to ZCTA, compute ratios, and handle margins of error. With our API? One request.
Census API (today)
// Step 1: Know the exact variables
// B08301_001E = total workers
// B08301_021E = worked from home
// Step 2: Get current year data
{
"B08301_001E": 31500,
"B08301_021E": 4200
}
// Step 3: Get data from 5 years ago...
// Step 4: Get data from 10 years ago...
// Step 5: Compute percentage manually
// Step 6: Calculate change over time
// Step 7: Handle margins of error
// Step 8: Document your assumptions
// 🔴 This is not an answer. It's an ingredient list.Requires table knowledge, multiple API calls, manual calculations, and MOE handling.
Our API
{
"metric": "pct_worked_from_home",
"geo": "zcta:60004",
"year": 2023,
"value": 0.133,
"change_5y_pp": 0.041,
"change_10y_pp": 0.077,
"prior_5y": 0.092,
"prior_10y": 0.056,
"confidence": "high",
"moe": 0.012,
"source": "ACS 5-Year Estimates",
"notes": "ZCTA boundary stable across period"
}One call. Semantic metric name. Trends computed. Confidence assessed. Done.
Example: "Top 3 growing industries in Cook County"
Industry data requires decoding 50+ occupation categories (B24030 table), computing growth rates, and ranking. We do this automatically.
Census API (today)
// You must pull 50+ industry variables
{
"B24030_001E": 2645000, // Total
"B24030_003E": 89200, // Agriculture
"B24030_007E": 142300, // Construction
"B24030_010E": 278500, // Manufacturing
"B24030_027E": 412800, // Healthcare
"B24030_034E": 198400, // Finance
// ... 45 more variables
}
// Then repeat for prior years
// Then map codes to industry names
// Then compute growth rates
// Then sort and rank
// 🔴 Hours of work for one question50+ variables, multiple year pulls, manual mapping to industry names, growth calculation, and ranking.
Our API
{
"geo": "county:17031",
"metric": "industry_growth_5y",
"year": 2023,
"results": [
{
"industry": "Transportation & Warehousing",
"growth_5y_pct": 28.4,
"current_share": 0.067
},
{
"industry": "Healthcare & Social Assistance",
"growth_5y_pct": 18.2,
"current_share": 0.156
},
{
"industry": "Professional & Technical Services",
"growth_5y_pct": 14.7,
"current_share": 0.132
}
],
"source": "ACS 5-Year, B24030 series"
}Ranked results, human-readable labels, growth rates pre-computed.
Table hunting
Which of 1,400+ tables has your variable?
Variable decoding
B08301_021E is not self-documenting
Time alignment
Pooled estimates require careful handling
Formula errors
Most teams miscalculate derived metrics
How it works
We do the hard work once—so you never have to. Our pipeline transforms raw Census data into reliable, documented, ready-to-use metrics.
Ingest ACS
We pull raw data from the Census Bureau API—every ACS 5-year release, plus 5 and 10 years prior.
Normalize Schema
Variable codes mapped to semantic names. Geographies standardized. Edge cases handled.
Metric Registry
Curated definitions for 50+ derived metrics with documented formulas and guardrails.
Compute Trends
5-year and 10-year changes pre-computed with proper pooled estimate handling.
Serve with Confidence
Every response includes confidence levels, MOE, source, and provenance metadata.
Metric Packs
Pre-built collections of related metrics, ready to query. Each metric includes documented formulas, source tables, and confidence assessments.
Demographics
- Population by age
- Race & ethnicity
- Household composition
- Education attainment
Housing
- Median home value
- Owner vs renter
- Vacancy rates
- Housing vintage
Affordability
- Median income
- Rent burden
- Cost of living index
- Poverty rate
Labor
- Employment rate
- Labor force participation
- Work from home
- Self-employment
Commuting
- Commute time
- Mode of transport
- WFH rate
- Vehicle availability
Industry
- Industry mix
- Top employers
- Industry growth
- Occupation distribution
All metrics support time-series queries: ?trend=5y or ?trend=10y
Built for developers
No SDKs to install. No magic to learn. Just clean REST endpoints with semantic URLs and predictable JSON responses.
RESTful & predictable
Consistent URL patterns. JSON responses. No surprises.
Fast & cached
Pre-computed metrics served from edge cache. Sub-100ms responses.
Transparent provenance
Every response includes source tables, formulas, and confidence.
Machine-readable
TypeScript types. OpenAPI spec. Designed for automation.
// Consistent URL pattern for any metric
GET /v1/geo/{geo_type}/{geo_id}/metrics/{metric}
// Point-in-time query (latest)
GET /v1/geo/zcta/60004/metrics/median_household_income
// Same endpoint, add trend parameter
GET /v1/geo/zcta/60004/metrics/median_household_income?trend=10y
// Works for any geography
GET /v1/geo/county/17031/metrics/median_household_income
GET /v1/geo/tract/17031081700/metrics/median_household_income
GET /v1/geo/state/17/metrics/median_household_income
// Batch multiple metrics
GET /v1/geo/zcta/60004/metrics?include=median_income,pct_worked_from_home,vacancy_rateDefine your own metrics
Need a metric we don't have? Enterprise customers can define custom formulas in the metric registry. Once defined, your custom metrics work exactly like built-in ones—with automatic trend computation across all geographies.
Define your metric
Specify a YAML definition with your formula type, numerator/denominator variables, and guardrails. We validate against our variable registry.
We materialize it
Your metric is computed across all geographies and time periods. Trends are pre-calculated. Confidence flags are applied.
Query like any metric
Use the same endpoints. Add ?trend=10y. Batch with other metrics. Your custom metric is a first-class citizen.
Example: "How remote-friendly is the professional workforce here?"
Want to identify metros where professional workers have embraced remote work? Define a custom ratio metric targeting WFH rates specifically for professional industries.
Your definition
metric_id: pct_remote_friendly_professional_workers
label: "Remote-Friendly Professional Workforce"
formula_type: ratio
numerator:
- worked_from_home_professional_industries
denominator:
- total_professional_workers
denom_min: 200
unit: percent
description: "Share of professional workers who work from home"API response
{
"metric": "pct_remote_friendly_professional_workers",
"label": "Remote-Friendly Professional Workforce",
"geo": "zcta:60004",
"year": 2023,
"value": 0.312,
"display_value": "31.2%",
"change_5y_pp": 0.148,
"change_10y_pp": 0.224,
"confidence": "high",
"moe": 0.024,
"custom_metric": true,
"definition_id": "cm_a1b2c3d4"
}Example: "How risky is this market for rent growth?"
Identify markets where a large share of renters are severely cost-burdened and low-income—a leading indicator for rent collection risk and tenant turnover.
Your definition
metric_id: pct_renters_highly_cost_burdened_low_income
label: "High-Risk Renter Population"
formula_type: ratio
numerator:
- renters_income_below_50k_rent_burden_50plus
denominator:
- total_renter_households
denom_min: 100
unit: percent
description: "Share of renters with <$50k income paying 50%+ on rent"API response
{
"metric": "pct_renters_highly_cost_burdened_low_income",
"label": "High-Risk Renter Population",
"geo": "county:17031",
"year": 2023,
"value": 0.187,
"display_value": "18.7%",
"change_5y_pp": 0.032,
"confidence": "high",
"notes": "High rent-growth risk indicator",
"custom_metric": true
}Why define custom metrics?
- Proprietary insights — Build metrics that match your unique business logic
- Automatic trends — 5yr and 10yr changes computed automatically
- Full coverage — Run across all 33K+ ZCTAs, 85K+ tracts instantly
- Same guardrails — MOE propagation, confidence flags, provenance
Custom metrics are available on Enterprise plans.
Request Early AccessFrequently asked questions
Everything you need to know about the API and Census data.
We use the official U.S. Census Bureau API, specifically the American Community Survey (ACS) 1 and 5-year estimates. We pull the latest releases plus 5 and 10 years prior to enable trend analysis. All data is sourced directly from Census and transformed using documented formulas.
Still have questions? Reach out
Ready to skip the Census headaches?
Join the early access list. Be the first to build with semantic Census metrics.
Request Early AccessNo spam. We'll reach out when your spot is ready.