← The Berkeley Housing Clock

What could change

This page argues. The rest of the site measures.

Three changes Berkeley could make, each with the evidence behind it and the finding that would prove it wrong. Two of the three started out as something else and were rewritten when the City's own records disagreed with them.

Two things here work differently from the main page, and both are worth knowing before you weigh any of it. The recommendations are my reading of what the measurements imply, not measurements themselves. And the permit-workflow figures below are the one part of this site not computed live in your browser: they come from a script run against the City's permit records, committed as tools/adu_review_times.py and data/adu-records.json so the numbers can be re-derived without taking the City's word or mine.

Where the time actually goes · median, projects of 5+ homes
5.9 moapply → approve
1.6 yearsapproval → permit
to 3.3if you count
the still-waiting
2.1 yearspermit → move-in
approved, no permit yet · no clock covers this construction · outside the City
03 Correction cycles sit inside the approval step
01 · 02 Measurement and financing act on the gap

The premise

Berkeley is not slow to approve, by the only comparison available. It clears an apartment building in about six months, faster than most of California, and has permitted a higher share of its state allocation than the median of the 539 jurisdictions filing the same report. That is true, and it cuts against everything below.

But approval time is counted from the day an application arrives, while every deadline the City is actually held to starts later, when the application is deemed complete. On small projects the City's own permit records put the wait to reach completeness at a median of 116 days, on the same order as the entire application-to-approval time the State ever sees. The years that follow approval are not measured by anyone. The six-month figure is not wrong. It is describing a process whose slowest stretches sit outside every clock that governs it.

The levers Council reached for in April 2026 were all cost levers, and the City's own consultant put the feasibility gap on a ten-unit condominium at sixteen points of return while finding that removing the in-lieu fee entirely closes two to five. RAND, measuring 140 completed projects, found time to be the dominant cost driver and priced a month of California predevelopment at roughly $1,284 per home. If that is right, the unpulled levers are the ones that shorten time and reduce uncertainty, and all three below need the same precondition: knowing where the time goes.

01

Measure the part that no clock is running on

Every statutory deadline that applies to Berkeley starts at the same moment: when an application is deemed complete. AB 2234 gives 30 business days for projects of 25 homes or fewer and 60 for larger ones. The state ADU statute gives 60 days. AB 1332 gives 30 days where an applicant uses a preapproved plan. All of them run from completeness.

Completeness is not approval, and the two stages are different kinds of work. Reaching completeness is the intake gate: the City confirming an application has everything it needs, the right drawings, forms, fees and studies, before anyone assesses whether the project is any good. The decision that follows is the actual review against zoning and code.

The intake gate is the longer of the two, and nothing measures it. Reading the City's own permit workflow records, the median wait from submittal to being deemed complete is 116 days. The decision that follows takes 52.

The clock starts after the part that takes longest
Median days, Berkeley permit records naming an accessory dwelling unit
116 dayswaiting to be accepted as complete
52 daysthe decision itself
no statute measures this every clock covers only this
▲ THE STATUTORY CLOCK STARTS HERE
Computed from the workflow milestones Berkeley's permit system publishes for each record: n = 89 for submittal to completeness, n = 84 for completeness to decision, spanning 2008 to 2025. Only the final completeness event is stored, not the round trips to reach it, so this shows where the time sits and not whose fault it is. Sampled from 1,000 addresses; 26% returned the 10-record maximum, so busy addresses are under-represented. Reproduce with tools/adu_review_times.py against data/adu-records.json.

A city in this position can report perfect compliance with every deadline it is subject to, and the report will be true, and it will describe about a third of the wait. That is the reason to ask for something more than statutory metrics.

The opportunity is a procurement already underway. On 20 January 2026 Council awarded Clariti Cloud $5,359,128 to replace Accela over twenty months. The report says the system will deliver "compliance with State laws (e.g. AB 2234 electronic submittal and permit tracking requirements)" and is "necessary to improve transparency and reduce permit processing times." Compliance tracking alone would measure the 52 days and miss the 116.

What the specification asks for
Occurrences in the 38-page RFP body
"AB 2234"
0
"open data"
0
"public portal"
0
"transparency"
0
"export"
0
internal reports specified
124
RFP 24-11661-C, released 11 October 2024. The business-intelligence section is explicit about its audience: the data warehouse "feeds management with real-time data … enable staff to focus on exceptions". Appendices C, D and E are separate spreadsheets not examined here.

And some of it is not missing so much as switched off. The permit portal Berkeley runs today ships with a record-comment facility, a timeline and an activity view. Its published configuration marks all three unavailable.

Features the current portal is configured not to show
Availability flags returned by the permit portal's own configuration endpoint
Record comments where a plan-check correction would be explained
off
Timeline
off
Activity centre
off
Record geosettings
off
Resourcer
off
Read from the portal's public configuration in August 2026. This is the reason the reason for a correction cannot be recovered from outside: the field exists in the product and is not rendered. It is not established that Berkeley chose this. Of the other tenant sites reachable on the same platform, Fremont's carries the same three flags off, so it may be a vendor default rather than a local decision. Either way it is answerable by the City in a sentence.

Before

No public measure of the 116-day stage, and no obligation to produce one.

Live permit status reachable only through an undocumented vendor front end. The State's copy runs about 16 months behind.

A resident had to reconstruct all of this from workflow milestones.

After

Both halves published: how long an application waits to be accepted as complete, and how long the decision takes once it is.

Plan-check round counts published, which is the mechanism behind the first half.

A documented machine-readable feed, so nobody has to reconstruct it again.

The cheap path is already in the specification. Section 4.14 asks for "API integration with GIS" and "the ability to drill down from spatial maps into the Permitting system to view open, expired, or pending permits." Berkeley's ArcGIS is already publicly queryable. If permit data is going to flow there anyway, public visibility is a decision about which layer is public, not a new integration.

Cost close to nothing. The measurement is funded and the implementation is underway, so this is a requirements decision rather than new development.  Wrong if the contract already requires a public API and published metrics beyond statutory compliance. The Council item does not mention either and the RFP body does not contain them, but three appendices were not examined.

02

Make the funding commitment outlast the process it has to survive

Where the State's file gives a reason for a project stalling, it is overwhelmingly money: 2,390 homes across 16 sites, 42% of the waiting room, recorded as awaiting public financing. Berkeley does commit money ahead of that, through Housing Trust Fund reservations. The problem is how long they last.

HTF policy limits a reservation to 24 months, a rule the City describes as being there "to ensure that City funds are not indefinitely committed to projects that are not moving forward." That is a reasonable guard against dead projects. It is also calibrated below the process it is meant to survive.

A 24-month commitment against the timelines it has to cover
Months
Berkeley HTF
reservation term
24 monthsby policy
First funding
application → LIHTC award
~24 months3–5 extra sources
Berkeley approval
→ building permit
19 monthsobserved
The same, counting
those still waiting
40 monthscensored
Reservation term from the 10 February 2026 Council item and the HTF Guidelines · LIHTC assembly time from Terner Center, Reducing the Complexity in California's Affordable Housing Finance System, Reid and Tran, 21 April 2025, which also finds each additional public source adds about four months and $20,460 per unit · Berkeley waits computed on the main page

The consequence is visible in the City's own agenda. On 10 February 2026 staff asked Council to extend every active reservation it holds.

All four reservations outran the clock
Extensions requested 10 February 2026
Ashby Loftsreserved 14 Dec 2021 · extended Dec 2023 · second extension
$850,000
Supportive Housing in People's Parkextended Dec 2023 · second extension
$14,359,593
Ephesian Legacy Courtreserved 13 Jun 2023 · term ran to Jun 2025 · won 4% tax credits Dec 2025
$14,531,301
North Berkeley BARTreserved 25 Jun 2024 · $49m AHSC award secured since
$21,500,000
Local money whose commitment had expired$51,240,894
City of Berkeley, Extending Reservations for Housing Trust Fund Projects, Consent Calendar, 10 February 2026. Ephesian's reservation term ran out roughly six months before the tax credit award it was helping to win.

Before

24-month term against a funding assembly that takes about as long, with renewal requiring a Council item.

Funding rounds released "when there are sufficient funds in the HTF to warrant releasing a NOFA", not on a calendar and not aligned to state deadlines.

Revenue is volatile: $10.7m in FY24, $831,000 in FY25.

After

A term matched to observed timelines, or renewal delegated to the City Manager with notice to Council.

A commitment a developer can carry through a full state application cycle without it expiring mid-round.

Longer term, a revolving construction fund, where the constraint is turnover rather than annual revenue.

On size, which is the obvious objection. At roughly $9m a year against a LIHTC median development cost near $250,000 a unit, Berkeley cannot be a large single source. Montgomery County, Maryland is the counter-example worth reading: a $100m revolving construction fund, financed by housing-authority bonds the county services, which converts to permanent financing at lease-up and repays itself so the same capital lends again. It targets 6,000 units over twenty years, 30% of them permanently affordable, and made its first loan of $14.3m in December 2021. A revolving fund does not need to be large. It needs to turn over.

Rests on the City's own reservation policy and the February 2026 extension item, plus Terner's measurement of how long assembling several public sources takes.  Wrong if the 24-month term is a formality nobody enforces, or if Terner is right that this is state-level fragmentation and local scheduling changes are wasted effort. They study the problem and deliberately do not recommend local fixes, which is the strongest argument against this item.

03

Cut the correction cycles, which is where the delay actually is

Accessory dwelling units are the quiet majority of Berkeley's permitting workload: 801 separate filings produced 827 homes between 2018 and 2025, about 103 homes a year, steady across eight years and 18.3% of every home the city permits. This page originally recommended that Berkeley adopt preapproved plans for them. It already has. AB 1332 required every California city to run such a programme by 1 January 2025, and Berkeley's gallery is that programme.

So the question is not whether to build one. It is whether the one that exists touches the thing causing the delay. The permit records say the delay is revision cycles.

Permits that need a revision take eleven weeks. Ones that don't are issued at once.
Median days, submittal to ready-to-issue
No revision cycle
n = 41
0 dayssame day
One or more
revisions · n = 70
78 days63% of all records
n = 111 records carrying both a submittal and a ready-to-issue milestone. Overall median 35 days, mean 68, longest 494. Same sample and same caveats as the figure in 01: 1,000 addresses, 26% returning the 10-record maximum. Reproduce with tools/adu_review_times.py.

The obvious explanation would be that an application crawls from desk to desk. It does not. The technical reviews run concurrently, and the desk that consolidates them adds a single day.

There is no queue to remove. The review itself is the time.
Median days per stage, once an application has been routed
Routing → last technical
desk clears · n = 86
38 days
Last desk →
consolidation · n = 83
1 day
Consolidation →
ready to issue · n = 83
4 days
The gap between the first technical desk finishing and the last is a median of 4 days, which is what concurrent review looks like. Consolidation is last in 81% of records because that is its job, not because it is slow. Streamlining the handoffs would recover almost nothing. Reproduce with tools/adu_review_times.py.

What the number of desks does change is the chance of a correction. Each additional reviewer is another independent opportunity to find something, and finding something is what costs the eleven weeks.

Every extra reviewer is another chance of a correction
Share of records needing at least one revision, by how many review desks saw them
2 desks · n = 38 63%
3 desks · n = 17 76%
4 desks · n = 6 83%
5 desks · n = 5 60%
6 desks · n = 25 96%
The four-desk and five-desk buckets hold six and five records and are shown greyed because they are too small to carry weight; the trend rests on the 2, 3 and 6 buckets. This is an association, and bigger projects both cross more desks and are harder, so it is not evidence that reviewers cause each other's corrections.

That leaves one lever. Review is already concurrent, consolidation is already fast, and the handoffs are already cheap, so there is no process streamlining left to win. The only thing that shortens this is reducing what a reviewer can flag, before the application is filed. What prevents a correction is knowing the requirement in advance, which is precisely what AB 2234 already obliges the City to publish: a checklist of what makes an application complete, plus worked examples. Preapproved plans are one form of that, and Berkeley's version is narrow.

What is actually in Berkeley's preapproved gallery
Designs available. Prefabricated means built in a factory and delivered by truck; site-built means framed on the lot by a contractor.
Prefabricated 12
Site-built none0
Berkeley ADU Plans Gallery, read August 2026. All twelve are commercial prefabricated products. Using one earns a 50% plan-check fee reduction and plans "will often proceed more quickly", with no published time standard. The gallery's own notice states that "all ADU plans, even pre-approved plans, will require further review and approval." Against this, none of the 141 Berkeley ADU permit records carrying a description names a prefabricated or modular unit: about 45% describe a new structure built on the lot, 28% a conversion of an existing one, and 28% are too terse to classify. A description that omits the word is not proof the unit was not factory-made, but nothing in the record suggests the gallery matches what Berkeley builds.

Before

Twelve factory-built designs, nothing for a unit framed on the lot, covering ADUs only.

The benefit is a fee discount plus "often more quickly", with no service standard and no published uptake.

63% of permits still go through at least one revision, and nothing tests a design against the lot before filing.

After

Standard plans for units framed on the lot, which is what the permit record shows Berkeley actually builds.

A published cap of two plan checks absent a written health-or-safety finding, adopted voluntarily.

The programme extended to duplexes and fourplexes before it is required to be.

A check that runs a design against the actual parcel before anything is filed.

The last one already exists and does not need building. A preapproved plan is generic and a lot is not, so the gap between "this design is approved" and "this design works here" is where a correction lives. Symbium runs that check for any address in California, with the state ADU rules and the local ordinance compiled into it, and sells a staff-side version that produces the applicable checklist and the comment letter. Chula Vista has adopted a tool of this kind. Berkeley links a calculator today, but it estimates costs, fees and rents and does not test whether anything fits.

Worth being exact about the technology, because the wrong framing invites the wrong objection. The useful layer is deterministic, the zoning code compiled into rules, which is what makes a setback finding auditable and defensible by a planner. Generative and AI-assisted tools have a real place around it, in drafting a compliant massing against the lot's topography and existing structures and in writing the correction letter, but not in making the determination.

Precedents AB 1621 would cap plan checks at two statewide; Chicago lets licensed architects self-certify code compliance and skip detailed plan review, with zoning review still applying; Pew counts about 40 US jurisdictions running preapproved-plan programmes, worth 1 to 2% of development cost.  Due anyway AB 748 passed the Assembly 75–0 on 10 May 2026 and would extend preapproval to single-family and multifamily, with large jurisdictions required to comply by 1 July 2027.  Where this rests on inference the cost of a revision, the concurrency of review and the rise in correction risk with reviewer count are all measured. That a pre-submittal parcel check would prevent those corrections is not. Establishing it needs the reason each correction was issued, which is the field 01 shows is switched off.  Wrong if gallery uptake is already high and the revision cycles fall on projects that would never use a standard plan. Nobody publishes uptake, which is 01 again.

What this page deliberately does not say

It does not argue for lowering the inclusionary requirement, and the evidence here would not support that if it did. Berkeley's own consultant found fee relief closes only a small share of the feasibility gap, and the in-lieu fee is the Housing Trust Fund's main dedicated income.

It does not claim these three would restart the stalled projects. Interest rates and construction costs are larger forces sitting entirely outside the City's control.

It does not know whose fault the 116 days is. The record stores the date an application was finally deemed complete, not the exchanges that got it there, so the figure locates the delay without attributing it. That distinction matters and is easy to lose.

And it does not treat the City as the villain. Berkeley approves faster than most of California and permits more of its allocation than most, which is on the main page too, because it is true and because it cuts against the argument on this one.

Every Berkeley figure here is computed from public records · The Berkeley Housing Clock
Council item 16, 20 January 2026 (Clariti) · Council item, 10 February 2026 (HTF reservations) · RFP 24-11661-C · Housing Trust Fund Guidelines, adopted 19 January 2021 · Assembly Bills 2234 (2022), 1332 (2023), 748 and 1621 (2025–26) · Berkeley ADU Plans Gallery · Berkeley's permit workflow records · Strategic Economics and Street Level Advisors, Residential Feasibility Analysis, 21 May 2024 · RAND RRA3743-1, April 2025 · Terner Center, Reid and Tran, 21 April 2025 · Housing Opportunities Commission of Montgomery County · Pew Charitable Trusts, May 2026 · BMC 23.328 and 23.404