The Permit Friendliness Index: 188 Jurisdictions, One Steep Curve

Of the 178 California jurisdictions we could grade on housing permitting, 141 earned a D or an F. That is 79.2 percent. The median score was 36.4 out of 100.
I build houses for a living, which means my calendar belongs to permitting counters in a way my bank has never fully accepted. I expected mediocrity when we set out to compare the permitting track record of the jurisdictions in our research set. I did not expect the curve to look like a ski slope.
This is the first release of the HABU California Permit Friendliness Index 2026: what we measured, what the grades say, and why ten jurisdictions received no grade at all.
Scope before score
The study covers HABU's 188-jurisdiction California target set. That is the universe our research screens; it is not every California city, county, or permitting authority.
The study also is not the same thing as HABU's current product footprint. The index compares jurisdiction-level public data. The HABU property tool answers parcel-level questions in the areas where its source coverage has passed review.
The data builders want most—consistent review times, resubmittal cycles, and the reasons applications stall—is not published statewide. What is public is each jurisdiction's annual housing reporting to the California Department of Housing and Community Development, Census Building Permits Survey data, housing-stock estimates, and HCD compliance and Prohousing designations.
We graded what the public record can support and refused to imply the rest.
The formula, in public
Model v1 scores each jurisdiction from three observed inputs:
- ADU activity — 30%: applications and permits normalized to existing housing stock, including a smoothed permit-to-application signal when there are enough applications to support it.
- Residential permit velocity — 20%: new units permitted relative to the jurisdiction's existing housing stock.
- Cycle-adjusted RHNA progress — 25%: progress toward the jurisdiction's housing allocation, adjusted for time elapsed in the planning cycle.
The available factor weights are normalized for each jurisdiction. An HCD Prohousing designation adds five points. A noncompliant housing element caps the score at 55. An A requires a score of 80 or better.
The application-rate term participates only when a jurisdiction has at least ten applications. Three applications and two permits is not a track record; it is an anecdote with a percentage sign.
The formula is versioned and deterministic: same inputs, same grade. Disagreement can focus on the weights instead of our motives.
What the grades say
The July 2026 reviewed snapshot produced this distribution:
| Grade | Jurisdictions | |---|---:| | A | 6 | | B | 11 | | C | 20 | | D | 58 | | F | 83 | | Insufficient data | 10 |
Of the 178 graded jurisdictions, 141—79.2%—received a D or F. Only 17, or 9.6%, earned an A or B.
The six A-tier jurisdictions were Santa Maria (87.40), Roseville (85.10), San Marcos (83.69), Folsom (82.85), Murrieta (82.55), and South San Francisco (82.13). The leaders did not win on ADU volume alone. Strong permit velocity and RHNA progress appeared together.
The Sacramento-area comparison is especially revealing:
| Jurisdiction | Score | Grade | |---|---:|:---:| | Folsom | 82.85 | A | | Elk Grove | 76.71 | B | | Rancho Cordova | 68.07 | B | | Sacramento | 47.12 | D | | West Sacramento | 30.52 | F |
Five cities within one regional economy are separated by more than 52 points. Lumber prices, interest rates, and weather cannot explain that spread by themselves.
“Insufficient” is a first-class result
Ten jurisdictions received no grade—not an F and not a zero. The evidence could not support a defensible score.
That distinction matters. Zero ADUs permitted might mean nobody applied, applications did not convert, a county administers the permits, or a reporting field was incomplete. Identical digits can tell opposite stories. A model that cannot distinguish among them should not turn them into an F.
The 5,000-housing-unit confidence floor also protects the index from pretending that tiny permit counts are stable signals. Smaller jurisdictions remain visible in the research set, but they are not forced into a ranking.
A report card that grades everyone regardless of evidence is a horoscope. A useful model has to know when to say, “I don't know.”
What this index does not tell you
The Permit Friendliness Index is not live permit status. It is not a processing-time estimate, and it cannot tell you whether a particular project will receive a permit. Parcel zoning, overlays, utilities, site geometry, and the proposed scope outrank any citywide letter grade.
Permit counts also measure demand as well as process. A hot market can make a slow counter look busy; a quiet market can make a helpful counter look idle. Normalizing by housing stock reduces that distortion without eliminating it.
A low score is not proof that a planning department is obstructive. A high score is not a promise that a project will sail through. The grade is where the questions start.
Why it belongs beside the NAI
The Nimble Attainability Index measures whether a market's housing aligns with household purchasing power. Permit friendliness describes one piece of the delivery environment behind that outcome.
We are publishing the permit grade as a separate, inspectable research layer. That keeps the composite readable and lets anyone examine the evidence before deciding how much weight the signal deserves.
For a parcel-level check, visit HABU. The jurisdiction grade describes the wind; the parcel analysis tells you about your boat.
Sources and release notes
The index uses HCD Annual Progress Reports, the Census Building Permits Survey, Census housing-stock data, and HCD compliance and Prohousing lists. Results reflect the reviewed July 2026 Model v1 snapshot and should be read with the methodology and limitations above.
The Field Notes newsletter
Get HPC in your inbox
Notes from a builder running a homebuilding company on AI — attainable housing, construction ops, and the systems behind them. No spam, unsubscribe anytime.