Check the Setup
- Python 3.10 or newer
- A notebook environment such as Jupyter or Google Colab
- An internet connection
County counts of new privately owned housing units authorized by building permits for building local housing-supply and market-sizing tools.
Report a ProblemFrom Source to Product Signal
The Building Permits Survey publishes comma-delimited county files for new privately owned residential construction. Start with the latest annual county file and a few rows. Annual files impute nonresponse, and monthly files cover only a sample of permit offices.
Install the packages, then run the notebook cell.
python -m pip install pandas
import pandas as pd
permits = pd.read_csv(
"https://www2.census.gov/econ/bps/County/co2025a.txt",
skiprows=3,
header=None,
names=[
"year",
"state_fips",
"county_fips",
"region",
"division",
"county_name",
"bldgs_1",
"units_1",
"value_1",
"bldgs_2",
"units_2",
"value_2",
"bldgs_34",
"units_34",
"value_34",
"bldgs_5plus",
"units_5plus",
"value_5plus",
],
usecols=range(18),
nrows=30,
skipinitialspace=True,
)
permits["retrieved_at_utc"] = pd.Timestamp.now(tz="UTC")
print(
permits[
[
"year",
"state_fips",
"county_fips",
"county_name",
"units_1",
"units_5plus",
]
].head(20)
)Test a Useful Signal
Test whether annual permit counts can power a bounded housing-supply comparison.
U.S. Census Bureau is a government source. Last verified 2026-08-20. Temporal coverage: monthly and annual county files from 1990-present.