Home › Data Quality
Data quality & methodology
Every record on feedam.org passes through three tiers of trust verification before it surfaces in search.
Tier 3: Federal primary sources (highest trust)
- USDA Food and Nutrition Service — SNAP retailers, NSLP schools, SFSP summer sites, FDPIR commodity sites
- HRSA — Federally Qualified Health Centers (FQHCs)
- State WIC agencies — clinic locations
- NCES Common Core of Data — schools serving meals
- OpenFEMA — disaster declarations + D-SNAP eligibility
Tier 2: Curated nonprofit partners
- Plentiful.org directory
- 211 state networks
- Salvation Army USA
- Regional food banks (Houston Food Bank, Feeding South Florida, etc.)
Tier 2b: Open-data sources
- OpenStreetMap — community fridges, soup kitchens, and food banks tagged
social_facility=food_bank,social_facility=soup_kitchen, andamenity=food_sharing. Imported via the Overpass API. Records carrydata_source=openstreetmapin the directory. Used under the Open Database License (ODbL 1.0). Attribution: © OpenStreetMap contributors.
Tier 1: Community-contributed (lowest, but verified)
Manual submissions via /submit-resource. Every Tier 1 record is reviewed against Tier 2/3 data for duplicates before surfacing.
Self-healing data
- Hours auto-downgrade — records not verified in 180 days have their hours marked "unknown" so users don't waste trips on stale info
- Crowd verification — a "this was helpful" tap from a search user resets the 180-day staleness timer
- Auto-deactivation — 2 "wrong info" reports in 30 days, or 3 "closed" reports, automatically hide a record
- Website HEAD checks — nightly cron checks every URL on every record; 3 failures clear the URL field
- Geocode drift detection — records >0.8° off their ZIP centroid get flagged; 2 drift observations auto-deactivate
- Dead-end pruning — records that are unverified AND have no phone AND no website are auto-deactivated. Without any way to actually contact the listing, they're dead-end results. 3,048 such records pruned in April 2026 via
scripts/deactivate-dead-end-resources.sh - Pantry-operator overrides — operators can claim listings (/pantry) and tap "Open Today / Closed Today / Low Stock" to override the inferred status
Deduplication
Every import passes through scripts/import-with-dedup.sh. Duplicates are identified by (LOWER(TRIM(name)), address, zip, resource_type) and the older record is kept (by min ID). 585+ duplicates removed in the deduplication system rollout (Feb 2026).
Refresh cadence
| Source | Refresh interval |
|---|---|
| USDA SNAP retailers | Quarterly |
| HRSA FQHC | Quarterly (UDS update cycle) |
| NCES schools | Annually (school year start) |
| State WIC clinics | Bi-annually (varies by state) |
| FEMA disasters | Live (cron every 6h) |
| Pantry operator updates | Live (operator-controlled) |