Skip to content

Project 6 — Site Suitability Analysis

Difficulty

🔴 Advanced. ~16–20 hours.


Goal

"Find the best 5 sites for a new community park in [your city] using multiple criteria: proximity to population, slope, land use, and floodplain."

This is the classic GIS portfolio project — multi-criteria, raster-based, decision-support analysis.

Data needed

Layer Source
DEM USGS 3DEP, 10 m
Land use / land cover NLCD (USA, 30 m)
Population grid (centroids of blocks) TIGER/Line + Census
Existing parks OSM leisure=park, or local
Roads OSM
Floodplain (FEMA) https://msc.fema.gov
Parcels (vacant) Local open data

Tools used

  • Spatial Analyst: Slope, Reclassify, Euclidean Distance, Weighted Overlay
  • Polygon to Raster, Extract by Mask, Raster Calculator
  • Cartography: discrete and continuous symbology

Workflow

Step 1 — Set up

  1. Project: site_suitability_park.
  2. Project all data to State Plane (US Survey Feet works fine for this).
  3. Set Environments → Cell Size = 10 m, Snap Raster = DEM.

Step 2 — Define criteria & scoring

Each criterion gets a 1–10 score (10 = best for park).

Criterion 10 (best) 1 (worst)
Slope < 5% > 25%
Distance to existing park > 1 mile (underserved) < 0.25 mi (already served)
Land cover NLCD = Open Space, Hay/Pasture Developed High Intensity, Open Water
Distance to road < 0.25 mi (accessible) > 1 mi
In floodplain No Yes (score 1)
Distance to population Close Far

Step 3 — Build each criterion raster

Slope

  1. Slope tool on the DEM, output in percent.
  2. Reclassify: 0–5 → 10, 5–10 → 8, 10–15 → 6, 15–25 → 3, > 25 → 1.

Distance to existing parks

  1. Euclidean Distance from parks layer.
  2. Reclassify: < 0.25 mi (1320 ft) → 1, 0.25–0.5 mi → 4, 0.5–1 mi → 8, > 1 mi → 10.

Land cover

  1. Use NLCD raster directly.
  2. Reclassify by class code:
21  Developed Open Space    → 10
71  Grassland               → 9
81  Pasture/Hay             → 8
41  Deciduous Forest        → 7
22  Developed Low           → 5
23  Developed Medium        → 3
24  Developed High          → 1
11  Open Water              → 1

Distance to road

  1. Euclidean Distance from roads.
  2. Reclassify favoring close-to-road.

Floodplain

  1. Polygon to Raster on the FEMA polygon.
  2. Reclassify: in flood = 1, out = 10.

Distance to population

  1. Convert blocks to a point feature class with POP field.
  2. IDW or Kernel Density with POP weight → population density raster.
  3. Reclassify favoring high density.

Step 4 — Weighted Overlay

Open Weighted Overlay:

Criterion Weight (must sum to 100%)
Slope 15
Distance to existing park 25
Land cover 20
Distance to road 10
Floodplain 15
Distance to population 15

Adjust weights to fit your stakeholder priorities. Document them.

Step 5 — Identify top sites

  1. Find cells with score ≥ 8 (high suitability).
  2. Raster to Polygon on those cells.
  3. Filter polygons by area (e.g., > 1 acre — must be big enough for a park).
  4. Pick the top 5 by area or by mean suitability score.

Step 6 — Validate against parcels (vector check)

For each candidate:

  • Is the parcel vacant?
  • Is it publicly owned (or at least available)?

Filter your top sites against parcels. Often half drop out at this step.

Step 7 — Map and report

A multi-frame layout:

  1. Headline map: city + final 5 recommended sites.
  2. Methodology insets: small thumbnails of each criterion raster.
  3. Table: the 5 sites with parcel ID, area, score, parcel status.

Skills learned

  • Raster reclassification
  • Euclidean distance / IDW
  • Multi-criteria weighted overlay
  • Combining vector and raster analysis
  • Decision-support narrative
  • Stakeholder-aware weighting

Portfolio value

This is the gold-standard portfolio project. Demonstrates raster fluency, decision-modeling thinking, and the ability to deliver actionable recommendations.

Stretch goals

  • Run the same model with 3 different weight sets ("equity-weighted", "cost-weighted", "ecology-weighted") and compare results.
  • Build a ModelBuilder workflow so the entire analysis can re-run with one click when criteria change.
  • Wrap it in a Python script tool for stakeholders to run themselves.
  • Publish as a public Story Map.

→ Next: Environmental Risk Analysis.