Submarket report
The submarket report describes how the area around each place is doing: whether jobs are growing, who works there, what people earn and what they pay for housing, compared with the county, the state and the US. Use it to size up a real estate submarket, such as the area around an office building or an apartment site.
What's in it
| Group | Measures |
|---|---|
| Job growth | Change in jobs over 5 years, Change in jobs over 5 years, as a percent, Change in jobs over 10 years, Change in jobs over 10 years, as a percent |
| Jobs in the area | Jobs, Jobs paying $1,250 a month or less, Jobs paying $1,251 to $3,333 a month, Jobs paying more than $3,333 a month, Jobs in farming, forestry and fishing, Jobs in mining, oil and gas, Jobs in utilities, Jobs in construction, Jobs in manufacturing, Jobs in wholesale trade, Jobs in retail, Jobs in transportation and warehousing, Jobs in information and media, Jobs in finance and insurance, Jobs in real estate and rental, Jobs in professional, scientific and technical services, Jobs in management of companies, Jobs in administrative support and waste services, Jobs in education, Jobs in health care and social assistance, Jobs in arts, entertainment and recreation, Jobs in hotels and food service, Jobs in other services, Jobs in public administration |
| Residents at work | Labor force, Unemployment rate |
| Population and age | Population, People under 5, People 5 to 17, People 18 to 24, People 25 to 34, People 35 to 44, People 45 to 54, People 55 to 64, People 65 to 74, People 75 to 84, People 85 and over, Median age |
| Household income | Median household income, Average household income, Income per person |
| Homes, vacancy and ownership | Homes, Vacancy rate, Homes lived in by their owners, Homes lived in by renters |
| Home values and rents | Median home value, Median gross rent |
Compared with: each number for its county, its state and the US, and for rates and medians, where the place ranks among census tracts (neighborhood-sized areas of about 4,000 people).
Usual area: a 3-mile radius around each place (everywhere within 3 miles in a straight line). You can choose another.
Cost: 7 credits a place for its 7 groups.
Job growth
Job growth is the change in the number of jobs located in the area over the last 5 and 10 years, as a number and as a percent. The years count back from the newest year of jobs data in the release, so today they're 2018 to 2023 and 2013 to 2023; each answer's vintage names both years. Jobs come from the U.S. Census Bureau's LEHD Origin-Destination Employment Statistics (LODES), which count jobs where people work.
If an area had no jobs at the start, there's no percent change: the warning no_base says so. If a state's jobs data is missing for one of the years, the change has no value and the warning partial_coverage says why.
Run it in Kadrin Batch
Choose New request, pick your file of places, and choose Submarket report. Batch suggests a 3-mile radius around each place. The Batch quickstart goes through it step by step.
Run it with the API
Send "preset": "submarket_report" to /enrich, with the area around each place. Here is a 3-mile radius around Kendall Square in Cambridge, Massachusetts:
curl https://api.kadrindata.com/v1/enrich \
-H "Authorization: Bearer $KADRIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"areas": [{"id": "kendall-square",
"geometry": {"type": "buffer", "center": [-71.0862, 42.3625], "radius": 3, "unit": "mi"}}],
"preset": "submarket_report"
}'
import os
import requests
r = requests.post(
"https://api.kadrindata.com/v1/enrich",
headers={"Authorization": f"Bearer {os.environ['KADRIN_API_KEY']}"},
json={
"areas": [{"id": "kendall-square",
"geometry": {"type": "buffer", "center": [-71.0862, 42.3625], "radius": 3, "unit": "mi"}}],
"preset": "submarket_report",
},
)
r.raise_for_status()
values = r.json()["results"][0]["values"]
for measure in ("labor.growth.jobs_change_5yr", "labor.growth.jobs_change_5yr_pct"):
v = values[measure]
print(f"{measure} ({v['vintage']}): {v['value']}")
const r = await fetch("https://api.kadrindata.com/v1/enrich", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.KADRIN_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
areas: [{ id: "kendall-square",
geometry: { type: "buffer", center: [-71.0862, 42.3625], radius: 3, unit: "mi" } }],
preset: "submarket_report",
}),
});
if (!r.ok) throw new Error(await r.text());
const { values } = (await r.json()).results[0];
for (const measure of ["labor.growth.jobs_change_5yr", "labor.growth.jobs_change_5yr_pct"]) {
console.log(`${measure} (${values[measure].vintage}): ${values[measure].value}`);
}
With a live key this costs 7 credits. For a whole spreadsheet of places, send it as a file: see Send a file of places.
Reading it
- Each number is for the area around the place, with its margin of error (how far the true number could reasonably be from our estimate) where it's a survey estimate. Job counts and job growth have none, since they count every job rather than surveying some.
benchmarksgives the same number for the county and state holding most of the area's people, and for the US.percentiles, for rates, medians and job growth as a percent, says where the area ranks among census tracts (neighborhood-sized areas of about 4,000 people) in the county, the state and the US: 80 means higher than 80% of them.