9. Buffers¶
Goal: Master the Buffer tool — make polygons at a fixed distance around features.
What buffer does¶
Input point ● Buffer 500m ▢
──→ ⬭
Input line ───── Buffer 100m ▭▭▭▭▭
Input polygon ▭ Buffer 100m ▢▢▢
Tool location¶
Geoprocessing pane → Search "Buffer" → Buffer (Analysis Tools).
Parameters¶
| Parameter | Notes |
|---|---|
| Input Features | Layer to buffer |
| Output Feature Class | Where to save (in the project gdb) |
| Distance | Number + unit, OR a field with per-feature distance |
| Side Type | FULL, LEFT, RIGHT, OUTSIDE_ONLY (lines/polygons) |
| End Type | ROUND, FLAT (lines) |
| Method | PLANAR or GEODESIC |
| Dissolve Type | NONE, ALL, LIST |
Distance: number vs field¶
- Number — same buffer for everything (e.g., 500 meters)
- Field — variable distance per feature. E.g., a
BUFFER_Mfield with different radii for different fire stations.
Planar vs geodesic¶
| Method | When |
|---|---|
| Planar | Layer is in a projected CRS (UTM, State Plane). Fast, accurate locally. |
| Geodesic | Layer is in a geographic CRS (lat/long), or you're buffering across very large distances. Computes great-circle. |
If your buffer looks oddly shaped
You're probably buffering lat/long with PLANAR. Either project the data first (preferred) or use GEODESIC.
Dissolve types¶
- NONE — every input feature gets its own buffer polygon (overlapping zones stay separate).
- ALL — all buffers merge into one big polygon.
- LIST — merge buffers that share an attribute value.
| Use case | Dissolve type |
|---|---|
| "Service zones — keep separate per facility" | NONE |
| "Total area within 500 m of any fire station" | ALL |
| "Zones grouped by district" | LIST |
Multi-ring buffer¶
Need 100, 250, 500 m at once? Use Multiple Ring Buffer (Analysis Tools) instead. Output gets a distance field for each ring.
Common patterns¶
| Workflow | Distance | Side | Dissolve |
|---|---|---|---|
| School proximity zones | 1 mi | FULL | NONE |
| Riparian buffer along streams | 30 m | FULL | ALL |
| Setback inside a parcel | 10 m | OUTSIDE_ONLY | NONE |
| Highway noise zone | 200 m | LEFT/RIGHT | NONE |
| Fire station service-area approximation | 1 mi | FULL | ALL |
After the buffer¶
Buffers are usually a step, not the answer. Follow up with:
- Clip — crop other layers to the buffer
- Spatial Join — count features inside each buffer
- Intersect — calculate overlap with other polygons
Practice¶
Park access analysis
- Add a parks layer (polygons).
- Project to State Plane.
- Buffer 0.5 mi (FULL, ALL).
- Spatial Join the buffer to census blocks → count blocks within 0.5 mi.
- Calculate the % of city population with park access.
→ Next: Clip.