Where the region’s nonprofits are — and where they aren’t
Key finding The region’s nonprofit infrastructure is heavily concentrated in two urban cores: Spokane County and Kootenai County together host about three-quarters of all active nonprofits in the seven-county region. But density tells a different story — the small university and rural counties (Whitman, Latah, Lincoln) actually have more nonprofits per resident than the urban core — Spokane County itself has the region’s thinnest per-capita coverage, with fast-growing Kootenai County next.
Every dot is an active nonprofit at its registered (geocoded) address. Filter by category or county, and click any dot for details. Human services organizations (NTEE groups I, J, K, L, O, P) can be highlighted in red.
mapUpdate = {const {map, layer, renderer, div} = dotMap; layer.clearLayers();// Leaflet needs the container to have been laid out before sizing correctlysetTimeout(() => map.invalidateSize(),60);const hsSet =newSet(["I","J","K","L","O","P"]);for (const d of mapFiltered) {const isHS = highlightHS && hsSet.has(d.ntee_major);const m = L.circleMarker([d.lat, d.lon], { renderer,radius: isHS ?4.5:3.5,color:"#ffffff",weight:0.8,fillColor: isHS ? GU.red: GU.s1,fillOpacity:0.75 }); m.bindPopup(`<strong>${d.name}</strong><br>`+`${d.city??""}, ${d.state}${d.zip}<br>`+`${d.subsector_name}${d.ntee?" · NTEE "+ d.ntee:""}<br>`+ (d.revenue>0?`Most recent revenue: ${fmoney(d.revenue)}`:"No revenue reported") ); layer.addLayer(m); }return mapFiltered.length;}
md`<span style="color:${GU.muted}; font-size:0.85rem;">Showing **${fnum(mapUpdate)}** organizations${highlightHS ?html` — <span style="color:${GU.red}">●</span> human services, <span style="color:${GU.s1}">●</span> all other`:""}. Dots mark registered mailing addresses.</span>`
Nonprofit density by ZIP code
Circle size shows the number of active nonprofits in each ZIP; color shows nonprofits per 1,000 residents (darker = denser). Downtown ZIPs act as the sector’s “headquarters districts” — nonprofit addresses cluster where offices, mail service, and visibility are, not necessarily where clients live.
md`<span style="color:${GU.muted}; font-size:0.85rem;">Circle size = number of nonprofits; color = nonprofits per 1,000 residents (${html`<span style="color:${GU.seq[0]}">■</span>`} lowest quintile → ${html`<span style="color:${GU.seq[6]}">■</span>`} highest). ZIPs with under 100 residents excluded.</span>`
County comparison: totals vs. density
Raw counts put Spokane far ahead; per-capita density flips the ranking. High per-resident counts in Whitman, Latah, and Lincoln counties reflect how many civic institutions — granges, booster clubs, fraternal groups, college-town organizations — small communities sustain relative to their size.