The data you already paid for
The United States runs one of the most thorough measurement programs in the world. The Census Bureau surveys income, age, housing, and business activity down to neighborhood scale through the American Community Survey. The Bureau of Economic Analysis publishes county-level income and GDP. The Bureau of Labor Statistics tracks employment monthly for every county. The National Weather Service issues the forecast of record for every point in the country, and state transportation departments count the traffic on nearly every significant road. All of it is public, current, and free through documented APIs.
Almost none of it sits next to company data where it could do work. The reasons were never about value. Each source has its own request format, its own vocabulary of series codes and variable names, its own geographic identifiers, and its own quirks. Getting one of them into a warehouse was an integration project; getting seven in was a roadmap. So trade-area demographics stayed in a consultant’s slide deck, and weather stayed in everyone’s intuition.
That calculus changes when the consumer is an agent instead of a pipeline. The friction was always in the plumbing, and the plumbing is what a governed API gateway removes. Everything that follows in this article is drawn from live calls: the figures below were fetched through a Plexara deployment’s public-data connections while it was being written, and each one names its source and vintage.
An address becomes a join key
The unlock is geographic. The federal statistical system shares a common vocabulary of geography codes, and the Census Bureau publishes a free geocoder that translates the addresses a business already has into it. One call resolves a street address to its census tract and county; a batch call processes ten thousand addresses from a single upload; a reverse call works backward from coordinates.
Here is what that looks like against a real address. Wichita’s city hall resolves, in one call and under a second, to census tract 43.01 in Sedgwick County, Kansas, with the county code, block group, and coordinates attached.
That one translation makes everything else joinable. Demographics, business counts, income, and unemployment all key on the tract and county codes the geocoder returns, and the coordinates are exactly what the weather and traffic services take as input. A store list becomes a set of keys into the entire public statistical system.
A real trace, one call
geocodeAddressToFips · “455 N Main St, Wichita, KS 67202”
- matched address
- 455 N MAIN ST, WICHITA, KS, 67202
- census tract
- 43.01 (GEOID 20173004301)
- county
- Sedgwick County, KS (20-173)
- block group
- 2
- coordinates
- 37.6926, -97.3383
What each source answers
The roster below is not hypothetical. Every source on it runs today as a cataloged connection on production Plexara deployments, where a retail operator’s agents use them for site evaluation and market analysis.
The American Community Survey answers who lives in a trade area: median household income, population, age structure, and housing, down to the block group, with pre-computed profile tables when percentages are all you need. County Business Patterns counts the competition by industry. Population Estimates says whether the market is growing. The Bureau of Economic Analysis adds per-capita income and county GDP; the Bureau of Labor Statistics adds the monthly unemployment series behind local spending power.
The National Weather Service contributes two different things: active severe-weather alerts for operations today, and the official point forecast for the week ahead. State transportation departments publish annual average daily traffic for road segments, which is the number a site-selection analysis wants first. Alongside the government sources sits Open-Meteo, an open archive of hourly weather history deep enough to backtest years of demand against the conditions that shaped it.
Eight sources, zero license fees
Census Bureau
American Community Survey
Median household income, age, population, and housing down to the census tract
API documentationCensus Bureau
Census Geocoder
Turns any street address into the tract and county codes the other sources key on
API documentationCensus Bureau
County Business Patterns
How many competing businesses operate in a county, by industry
API documentationCensus Bureau
Population Estimates
Annual county population and whether a market is growing or shrinking
API documentationBureau of Economic Analysis
Regional accounts
Per-capita personal income and GDP by county and industry
API documentationBureau of Labor Statistics
Local unemployment series
Monthly county unemployment rate, labor force, and employment level
API documentationNational Weather Service
Forecasts and alerts
The official forecast of record and active severe weather warnings for any point
API documentationState transportation departments
Traffic counts
Annual average daily traffic on the road segments near any location
API documentationA trade area in five calls
Put the join spine and the sources together and a market comparison stops being a project. The table below profiles three metro counties in a two-state trade area: five gateway calls, made while this article was being written, no key management, no format wrangling, and every number traceable to a federal table and vintage.
The numbers carry an analysis on their own. One county pairs the region’s highest median income with its lowest retail density per capita. Another trails it by nearly forty thousand dollars of median household income and runs the highest unemployment of the three. A revenue-per-store comparison across those markets that ignores this context is not a comparison; it is a coin flip attributed to management.
This is also what "instantly usable" means in practice. Nothing here was staged into the warehouse first. The agent asked each API for exactly the slice it needed, joined on the county codes, and the analyst read the result minutes after asking the question.
The screen an agent assembles
| Three metro counties | Sedgwick County, KS | Johnson County, KS | Jackson County, MO |
|---|---|---|---|
Median household income ACS 2023 5-year, table B19013 | $67,675 | $107,261 | $67,178 |
Per-capita income ACS 2023 5-year, table B19301 | $36,699 | $58,292 | $38,344 |
Population ACS 2023 5-year, table B01003 | 524,810 | 614,764 | 717,021 |
Retail establishments County Business Patterns 2022, NAICS 44-45 | 1,624 | 1,816 | 2,165 |
Unemployment, June 2026 BLS local area series, preliminary | 4.4% | 3.8% | 3.6% |
Correlation in one session, not one quarter
What makes these sources interesting is never any one of them. It is the join against private data, and weather is the sharpest example. The figure below is twelve weekends of real Wichita precipitation from the Open-Meteo archive, the kind of series an agent lays directly under a weekly sales curve.
For a seasonal retailer, one bar in that strip matters more than the rest: seven tenths of an inch of rain on the July 4 weekend itself, the highest-stakes trading days of the year. A demand dip on that weekend explains itself differently with the precipitation series in view, and a staffing plan for the next holiday reads differently next to the forecast of record and an active heat advisory. Questions that once justified a consulting engagement become questions an analyst asks before lunch.
When a result should outlive the session, it does. The agent exports the assembled dataset as a portal asset, queryable with SQL beside the warehouse, and the analysis it supports is shared from the portal rather than pasted into a thread.
Twelve weekends in Wichita
Weekend precipitation, inches · 37.69N 97.33W · the July 4 weekend is highlighted
Why a gateway and not a script
An engineer could script any one of these calls in an afternoon, which invites the question of what the gateway adds. The answer is everything around the call. Each source is a cataloged connection whose operations the agent finds by intent, so "median household income for this tract" locates the right survey table without anyone memorizing variable codes. Requests are authenticated by the platform, and any credential a source requires stays server-side, never in a prompt. The Census Bureau’s data API now requires a registered key, which is exactly the kind of detail that belongs in a connection, not in every analyst’s environment.
The lessons accumulate too. The batch limits on the geocoder, the field mappings that differ between two states’ traffic services, the preliminary flag on the latest unemployment month: on the deployments described here, each of those lives in a knowledge page attached to the connection, teaching every future session what the first one had to learn.
The result is public data with the same standing as the warehouse: discoverable through the same search, governed by the same personas, documented in the same knowledge graph, and available to the same agent that can also act on what it finds. The best data your analysis is missing was free all along. What it cost was friction, and the friction is what the platform absorbed.
Further Reading
American Community Survey 5-Year Data API
U.S. Census Bureau
Tables B19013, B19301, and B01003 supplied the income and population figures in this article.
Census Geocoder
U.S. Census Bureau
The address-to-geography service behind the trace shown in this article, including batch geocoding.
County Business Patterns API
U.S. Census Bureau
Source of the retail establishment counts (NAICS 44-45, 2022 vintage).
BLS Public Data API
U.S. Bureau of Labor Statistics
The timeseries endpoint behind the local area unemployment figures.
Regional data API
U.S. Bureau of Economic Analysis
County per-capita personal income, total personal income, and GDP by industry.
API web service documentation
National Weather Service
Point-to-grid resolution, the forecast of record, and active alerts.
Open-Meteo historical weather API
Open-Meteo
The open archive behind the weekend precipitation figure.
