DXF Layer Conventions for Site Plans That Survive Review
A site plan carries two audiences: the human reviewer flipping through a PDF, and
increasingly, software reading the CAD file directly. Both of them understand
your drawing through its layers. A plan where the pool deck lives on
LANDSCAPE, the property line shares a layer with the fence, and half the
geometry sits on layer 0 will be misread by both audiences, and the
consequences range from an annoyed reviewer to a coverage calculation that's
silently wrong.
None of this requires adopting a heavyweight standard. It requires about a dozen layers and three habits.
The principle: one meaning per layer
Every layer should answer the question "what is this thing?" without opening the drawing. That means:
- Separate by meaning, not by appearance.
EXISTING-BUILDINGandPROPOSED-BUILDINGare different meanings even if they share a linetype. Two things that are checked differently belong on different layers. - Geometry apart from annotation. Dimensions, labels, leaders, and hatches go on their own layers, never mixed with the boundary geometry they describe.
- Nothing meaningful on layer 0. Layer 0 is for block definitions. Geometry parked there has no declared meaning, and every reader has to guess.
If you use the AIA/NCS naming system (C-PROP-LINE, C-BLDG-NEWW), keep using
it; it encodes the same idea with more ceremony. For residential site plan work,
plain descriptive names do the job.
A minimal layer set for residential site plans
| Layer | Contents |
|---|---|
PROPERTY-LINE | The boundary, and nothing else |
EASEMENT | Every easement, labeled |
SETBACK | Setback lines as drawn on the plat or computed |
BUILDING-EXIST | Existing structure footprints |
BUILDING-PROP | Proposed structure footprints |
ACCESSORY | Sheds, detached garages, pergolas, equipment pads |
DRIVEWAY / WALKWAY | Paved surfaces, split if the code counts them differently |
POOL | Water line of the pool |
POOL-DECK | Coping and apron, separate from the water |
DECK-WOOD | Wooden decks, since many codes count them at 50% |
WALL-RETAIN | Retaining walls, with heights labeled |
STREAM-BUFFER | Buffer lines where any exist |
ANNO / DIMS | Text, labels, dimensions |
The split between POOL and POOL-DECK, and the dedicated DECK-WOOD layer,
exist for one reason: impervious coverage
math. Jurisdictions count these
surfaces at different rates, and a calculation can only apply different rates to
surfaces it can tell apart.
The three habits
Close your polylines. Any boundary that represents an area, the lot, a
footprint, a deck, must be a closed polyline. An unclosed footprint has no
computable area: the coverage number derived from it is fiction, and automated
checkers will either reject it or, worse, guess. In AutoCAD, PEDIT with the
Close option, or check Closed in properties. If two vertices sit a hair
apart, the polygon looks closed at every zoom level a human uses and is open to
every algorithm.
Stamp your units. DXF files carry a header variable, INSUNITS, that
declares the drawing unit. When it is unset (INSUNITS = 0), every consumer of
the file has to guess whether a 20-unit wall is 20 feet or 20 meters. Surveys
in meters, architectural files in inches, and site plans in feet all circulate
in the same review queues, so the guess is genuinely uncertain. Set it in
UNITS before exporting, and confirm the export preserved it.
Make labeled dimensions match the geometry. If a dimension string reads 25'-0", the measured distance at drawing scale should be 25 feet. Overridden dimension text, the kind typed over a measured value during a rushed revision, creates a drawing that contradicts itself. Reviewers who catch one override stop trusting every number on the sheet, and automated scale verification flags the mismatch immediately.
What breaks, specifically
The failure modes we see most in uploaded plans, roughly ordered by frequency:
- Surfaces on the wrong layer, so the pool deck on
LANDSCAPEnever enters the coverage calculation. - Unclosed footprints, so areas cannot be computed at all.
INSUNITSunset, forcing a units guess or a units-confirmation round trip.- Property line and fence line on one layer, making the setback baseline ambiguous.
- Retaining walls drawn but heights only in a detail sheet, not labeled in the plan.
- Everything exploded into loose lines, so no entity encloses anything.
Each of these costs a revision cycle when a human catches it, and produces a wrong answer when software doesn't.
Before you export
- Walk the layer list: does every surface type the code treats differently have its own layer?
- Select each area boundary and confirm it reads
Closed. - Set and verify
INSUNITS. - Spot-check three labeled dimensions against measured distances.
- Purge unused layers and blocks; a clean layer list is part of the message.
How Muniscan reads your file
Muniscan parses the DXF, detects the layers, and asks you to map each one to a semantic category (main building, accessory structure, pool water, wooden deck, impervious surface) before any check runs. Clean layers make that mapping a 30-second confirmation instead of archaeology. It also validates the geometry itself: unclosed boundaries, slivers, missing units, and dimension-scale mismatches get flagged before any reviewer sees the plan.
This guide is general information about common CAD and zoning-review practices, not legal advice. Requirements vary by jurisdiction; verify against your jurisdiction's current standards before relying on any of it.