Coverage is not completeness: what 44 US permit sources actually publish
Every permit-data provider publishes a coverage count. None of them publishes whether the fields inside that coverage are actually filled in. So we measured it: four fields, across the 44 largest building-permit sources in the United States, counted directly against the permits themselves.
2 of 44 clear all four bars.
What we measured, and why these four
These are not our criteria. They came from an appraisal company that wrote to us asking a question no coverage list answers: which jurisdictions carry declared valuation, both a filing and an issue date, a work description detailed enough to tell a re-roof from a kitchen remodel, and enough history for comparable sales. Those four turn out to be the same things an insurer, a lender and a contractor need.
- Declared valuation — the stated cost of the work. Without it you cannot say anything about scale. Bar: 80% of permits.
- Both dates — when it was applied for and when it was issued. One date alone tells you nothing about how long approval took. Bar: 80%.
- Work description — at least 20 characters of real text. A three-character stub passes a null check and tells you nothing. Bar: 50%.
- History — years between the oldest and newest record. Bar: 5 years.
The results
| Jurisdiction | Permits | Valuation | Both dates | Description | History | Score |
|---|---|---|---|---|---|---|
| San Francisco, CA | 1,146,465 | 88.7% | 95.1% | 76.2% | 119.8y | 4/4 |
| Chicago, IL | 844,363 | 93.1% | 100% | 95.2% | 20.6y | 4/4 |
| Austin, TX | 2,370,553 | 49.1% | 100% | 89.2% | 104.9y | 3/4 |
| Fort Worth, TX | 1,545,691 | 24.1% | 95.3% | 61.5% | 25.3y | 3/4 |
| Portland, OR | 1,458,456 | 0.1% | 88% | 100% | 37y | 3/4 |
| San Diego, CA | 1,014,560 | 20.6% | 87.7% | 85.9% | 25.1y | 3/4 |
| Raleigh, NC | 980,405 | 5.2% | 98.6% | 62.7% | 32.1y | 3/4 |
| New Jersey, NJ | 811,406 | 93.9% | 100% | 6.9% | 122.1y | 3/4 |
| Cape Coral, FL | 790,334 | 70.5% | 97.6% | 57.1% | 31.6y | 3/4 |
| New York City, NY | 789,400 | 71.1% | 99.9% | 74.6% | 37.2y | 3/4 |
| Pierce County, WA | 679,852 | 29.6% | 86% | 96.8% | 40.8y | 3/4 |
| Boston, MA | 657,630 | 96.8% | 0% | 92.6% | 19.9y | 3/4 |
| Cook County, IL | 655,530 | 96.9% | 0% | 65.6% | 111.9y | 3/4 |
| NYC (DOB NOW Electrical Applications), NY | 575,902 | 0% | 84.4% | 89.8% | 8.7y | 3/4 |
| Pasadena (CA), CA | 499,572 | 11.5% | 81.1% | 94.5% | 47y | 3/4 |
| New Hanover County, NC | 483,769 | 32.5% | 89.8% | 95.3% | 50.6y | 3/4 |
| New Orleans (Active), LA | 454,728 | 49.8% | 86.9% | 86.5% | 24.7y | 3/4 |
| Bellevue, WA | 440,058 | 8.1% | 80.7% | 92.2% | 26.6y | 3/4 |
| San Antonio, TX | 438,983 | 3.3% | 100% | 66.5% | 6y | 3/4 |
| Jacksonville, FL | 3,618,194 | 60% | 0% | 57.2% | 49.5y | 2/4 |
| Los Angeles, CA | 2,226,141 | 67.6% | 0% | 95.8% | 37.7y | 2/4 |
| California (Statewide Solar), CA | 2,161,468 | 57.2% | 100% | 24% | 29.7y | 2/4 |
| Riverside County, CA | 1,268,628 | 0% | 79.4% | 77.4% | 119.3y | 2/4 |
| Prince William County, VA | 1,228,360 | 0.8% | 65.9% | 65.2% | 52.6y | 2/4 |
| Orlando, FL | 1,105,673 | 70.3% | 99.3% | 0% | 119.1y | 2/4 |
| Washington DC, DC | 943,452 | 0% | 27.6% | 62.4% | 20.9y | 2/4 |
| Kansas City, MO | 837,670 | 65.7% | 96.2% | 43.6% | 124.4y | 2/4 |
| Fort Lauderdale, FL | 691,122 | 0% | 0% | 90.3% | 26.6y | 2/4 |
| Columbus, OH | 677,658 | 43.8% | 0% | 77.7% | 16.6y | 2/4 |
| Los Angeles County, CA | 647,776 | 31.7% | 51.9% | 89.6% | 27y | 2/4 |
| Omaha, NE | 513,583 | 0% | 0% | 74.6% | 10.6y | 2/4 |
| Thousand Oaks, CA | 511,724 | 12.2% | 97.3% | 23.9% | 72.8y | 2/4 |
| Wake County, NC | 504,890 | 11% | 75.6% | 92.9% | 73.9y | 2/4 |
| Richmond (VA), VA | 499,893 | 38.4% | 99.5% | 4.7% | 60.8y | 2/4 |
| Seattle Electrical, WA | 499,100 | 40% | 60.7% | 87.8% | 24.1y | 2/4 |
| Charlotte (Mecklenburg), NC | 483,026 | 99.9% | 0% | 16.3% | 36.6y | 2/4 |
| Shelby County, TN | 479,004 | 0% | 0% | 83.9% | 10.6y | 2/4 |
| Laredo, TX | 471,323 | 38.2% | 52.3% | 54.5% | 18.5y | 2/4 |
| Los Angeles County, CA | 464,678 | 8.1% | 75.3% | 96% | 46.7y | 2/4 |
| Coral Springs, FL | 464,315 | 66.8% | 0% | 73.1% | 41.6y | 2/4 |
| Prince George's County (2013+), MD | 458,440 | 46% | 0% | 60.7% | 13.1y | 2/4 |
| Philadelphia, PA | 930,438 | 0% | 0% | 20.2% | 19.6y | 1/4 |
| Grand Prairie, TX | 545,674 | 0.4% | 65.7% | 10.7% | 30y | 1/4 |
| Oklahoma City, OK | 492,746 | 0% | 0% | 7.1% | 10.6y | 1/4 |
Not measured: NYC (DOB Permit Issuance, legacy BIS). The profiling query exceeded its time budget on this source. Reported as unmeasured rather than as zero, because we did not observe an empty field — we failed to ask the question.
What a zero in this table means — including when it is our fault
This measures what PermitStack currently exposes, which is not always the same as what the city publishes. A zero has three possible causes and they are not equally flattering:
- The city does not collect it. Most zeros in the valuation column are this. Washington DC publishes no construction valuation at all.
- The city publishes it in a field we had not mapped. This happens, we find it by auditing, and we fix it. Boston’s work descriptions went from 23% to 92.6% the week this was written, because we were storing a field that restates the permit type (“Gas Permit” → “Gas”) while the actual scope of work sat unused in the next column. Milwaukee’s went from 0% to 37.8% for the same reason.
- We mapped the wrong field entirely. The worst case, because it produces a plausible number rather than a blank. Our Washington DC valuation was the permit fee — a median of $55 on a construction permit. It is now removed, which is why DC reads 0% here rather than the 99% it used to read.
We publish this table knowing it contains the second and third kinds. That is the point: a provider who cannot show you which of their fields are empty cannot show you which are wrong either. If you find a source in this table that publishes something we are not exposing, tell us and we will map it — that is how three of these rows improved this week.
Three things the numbers show
1. Valuation is the field that fails
Median coverage is 32.5%, and 8 of the largest sources in the country publish none at all. If your model needs the cost of the work, coverage counts will mislead you badly: a provider can hold every permit in a city and still be unable to tell you what any of it was worth.
2. A populated field is not a useful field
Some sources publish a work description on every row that is a category label rather than a description — “Gas”, “Electrical” — which is why we measure a length floor rather than a null check. Others publish a permit fee in a field named like a valuation. That is the more dangerous failure, because a fee is a plausible number that happens to be 50 to 100 times too small.
3. Depth and currency are independent
A source can be current to yesterday and hold two years of history, or hold thirty years and have stopped updating in 2024. Median history across these sources is 32.1 years, but the spread is enormous, and neither number tells you anything about the other.
How to check this yourself
Do not take our table on faith. Pull a hundred permits from any provider for a city you know and count four things: how many have a non-zero valuation, how many have both dates, how many have a description longer than a few words, and what the oldest record is. That is the whole method. It takes ten minutes and it will tell you more than any coverage page.
Questions
What is the difference between permit data coverage and completeness?
Coverage counts how many jurisdictions a provider holds. Completeness measures whether the fields inside those jurisdictions are populated. Across the 44 largest US sources we measured on 2026-09-30, the median source populates declared valuation on just 32.5% of its permits, so a jurisdiction can be fully 'covered' and still unusable for any question about the value of the work.
Which US cities publish the most complete building permit data?
Of the largest sources measured, San Francisco, CA and Chicago, IL clear all four bars: declared valuation, both filing and issue dates, a work description long enough to distinguish a re-roof from a remodel, and five or more years of history.
Why do so many permit sources have no declared valuation?
Many cities simply do not collect or publish construction cost. 8 of the 44 largest sources we measured publish none at all. Others publish a permit FEE in a field that looks like a valuation, which is worse, because it is a plausible number that is 50 to 100 times too small.
How was this measured?
Directly, against the permits themselves, on 2026-09-30. For each jurisdiction we counted how many building permits carry a non-zero declared valuation, both a filing and an issue date, a work description of at least 20 characters, and how many years separate the oldest and newest record. No sampling of vendors' marketing pages, and no estimates.
See the completeness figures for your jurisdictions
PermitStack publishes per-jurisdiction data status and freshness rather than a single headline number. The free tier is 100 requests a day with no card.
Get an API key