What this code requires
CBC 1015.2 is the California Building Code section that requires guards at any open-sided walking surface more than 30 inches above the floor or grade below. Those guards must be at least 42 inches tall in commercial, multi-unit, and mixed-use occupancies. The section covers decks, balconies, open corridors, mezzanines, and elevated walkways. If your permitted plans show an unprotected open edge or a guard that does not meet the 42-inch minimum, a plan-checker will cite CBC 1015.2 and send the correction back.
How to fix it
Identify every open edge that triggers the 30-inch rule
Walk the floor plan and mark every walking surface -- deck, balcony, corridor, mezzanine, roof terrace, and exterior walkway -- that is more than 30 inches above the floor or grade below. The 30-inch measurement is from the finished walking surface to the floor or finished grade at the base of the drop. Include side-yard grade transitions, not just primary decks. Circle or cloud each location on your site plan and floor plan sheets so nothing gets missed during the redline pass.
Add a dimensioned guard height at each flagged location
On the floor plan or site plan, draw the guard line at every flagged edge and label it with the height. For most commercial and multi-unit occupancies under the CBC, that height is 42 inches minimum measured vertically from the walking surface to the top of the guard. If your project is a one- or two-family dwelling covered by the CRC, the residential code also requires 42 inches under CRC R321.1.2, except where the top of the guard serves as the handrail on the open side of a stair (34 to 38 inches). Put the height right on the plan, not in a catch-all general note.
Provide a guard detail with opening limits per CBC 1015.4
Create a detail at 1/4 inch = 1 foot or larger showing the guard profile, top rail height (42 inches min), and intermediate rail or baluster spacing. CBC 1015.4 sets the opening limit: a 4-inch sphere must not pass through any opening in the guard. Show the baluster or cable spacing that achieves this. If the guard is glass, note the glass type and thickness per CBC 2407. Place the detail on a sheet that is clearly referenced from the floor plan.
Show the structural connection per CBC 1607.9
The guard must resist a concentrated load of 200 pounds applied in any direction at the top rail, per CBC 1607.9. Show the post base connection, the post size, the connection to the floor framing or deck ledger, and the fastener schedule. If you are using a proprietary post base, call out the manufacturer model number and the ICC ESR number. Plan-checkers will ask for this if it is missing, and it is the single most common structural reason a 1015.2 correction comes back a second time.
Add a compliance note on your general notes sheet
On your general notes sheet, add a line referencing CBC 1015.2 and stating the design guard height for the project (for example: "All guards per CBC 1015.2. Minimum guard height 42 inches at locations shown on floor plan."). Some plan-checkers look for this explicitly as a compliance statement. It takes 30 seconds to add and can prevent a follow-up question during review.
Coordinate the guard locations with the structural engineer
If your project has a stamped structural package, the guard post connections should appear in the structural drawings. Coordinate with the engineer of record to make sure the structural set shows the same guard locations and heights as the architectural set. Inconsistencies between the architectural plans and the structural package will put the review on hold while the plan-checker waits for a revised structural page.
Resubmit with a cloud-and-triangle response letter
When you resubmit, cloud every change you made in response to the 1015.2 correction and add a revision triangle with the revision number. Write a response letter that lists the correction, the action taken, and the sheet and detail number where the change appears. A clear response letter cuts your next review cycle down. If you leave the plan-checker hunting for your change, you risk another 60-day round.
Take the CBC 1015.2 fix steps with you
All 7 steps in one email, so you have them on site instead of on this page.
Why you got flagged
The most common reason plan-checkers flag CBC 1015.2 is a guard that is shown but not dimensioned. A plan might show a railing symbol on a deck or corridor but leave the height as a generic note like "guard per code." That is not enough. The plan-checker cannot verify compliance without a stated height, so they cite 1015.2 and ask for a dimensioned detail.
A second common flag is omission. Elevated decks, roof terraces, and open-sided mezzanines are sometimes drawn without any guard at all when the designer assumes the contractor knows to add one in the field. The code requires the guard to appear on the permitted plans, not just show up during construction. Multi-unit projects get this correction often on secondary balconies and roof-deck access points that are not on the main floor plan.
A third scenario involves the 30-inch trigger. Some designers correctly add guards to main-level decks but miss a side yard transition where a grade change pushes a walkway more than 30 inches above the adjacent surface. That gap between the finished walking surface and the lower grade counts, and the plan-checker will cite 1015.2 if no guard is shown at that edge.
Structural integration is the fourth pattern. A guard gets shown at 42 inches but the connection detail to the framing is absent or calls out an undersized post. Plan-checkers look at both the guard height and the structural path down to the framing, because CBC 1607.9 requires the guard assembly to resist a 200-pound concentrated load at the top rail. A height-compliant guard with an undersized post base still gets flagged.
The official code
California Building Standards Code 2025 (Title 24 Part 2) -- CBC Section 1015.2 Guards Required
Read the source →