Field notes
Title 24, written down properly.
Working notes on the 2025 Energy Code, CBECC, and the compliance paper trail — the kind of specifics we wish someone had written down for us.
Code Updates
What changed in the 2025 Title 24 Energy Code
A fourth compliance metric, heat-pump baselines in every climate zone, QII in the standard design, and a new name for HERS verification. The 2025 code is a bigger shift than it looks.
Compliance Basics
CF1R, CF2R, CF3R: California's compliance forms explained
Three form families, three responsible parties, one paper trail from permit application to final inspection. Here is who files what, and when.
Software
CBECC 2025 and the .ribd25 file, explained
The 2025 code cycle merged residential and nonresidential compliance software into one CBECC — and gave the residential input file a new extension. Here is how the pieces fit.
Design Strategy
Title 24 compliance credits that still matter in 2025
QII stopped being a credit when it became the baseline. Here is what still earns you margin in a 2025 performance run, and what quietly stopped working.
Project Types
ADUs and Title 24: what new-construction rules apply
A detached new ADU is its own building in the eyes of the energy code — its own model, its own CF1R, and usually its own PV requirement. Attached is a different story.
Plan Reading
How to read a window schedule (and why the AI cross-checks it against elevations)
The schedule says twelve windows. The elevations show eleven. Somebody has to notice before plan check does — here is how to read the sheet like an energy consultant.
Systems
Heat pump water heaters: the 2025 baseline, sizing, and where to put the tank
The energy model assumes you will install one, so the real questions are practical: which size, which closet, and what to do about the cold exhaust air and the condensate line.
Software
The five errors that make CBECC reject your energy model
CBECC does not fail politely. When a .ribd25 will not open, the reason is almost always one of five structural mistakes — and the .log file names the culprit every time.