The 1 in 10 zip codes
Illegal-dumping reports in Philadelphia don't spread evenly. 8 zip codes — out of 46 — drove most of 2024's reports. Scroll to see what that looks like.
In 2024, residents filed 21,419 illegal-dumping reports across 46 Philadelphia zip codes. The choropleth shows the full distribution — every zip with at least one report. The bar below collapses the top 8 against everyone else. Notice how short the "rest" bar is.
Strip out the rest. The top 8 zips alone — about 1 in 10 of the reporting zip codes — accounted for 39% of 2024's dumping reports.
The shape on the right is the long tail of urban data. A few neighborhoods carry the weight; the rest contribute a trickle. The map echoes the bar: those eight zip codes glow above everything else.
One zip leads them all. 19134 alone filed 1,249 dumping reports in 2024 — about 6% of the citywide total. On the map, it's the only zip painted at full saturation.
That's the citywide concentration. Whether it reflects underlying dumping volume, who's calling 311, or both is something a single ranking can't separate.
When does it actually happen? The bar chart morphs to 19134's day-of-week fingerprint. In 19134, Tue is the busiest reporting day — 267 reports versus 37 on Sat, a 7× spread.
Compare against the median zip on the next beat — whether the leader's Tue skew is special, or a city-wide rhythm, is the kind of texture a flat ranking hides.
Now the median zip joins the picture. 19138 filed 420 dumping reports — about 3× fewer than 19134's 1,249. Both zips light up on the map; the bars below show how differently the two neighborhoods experience the same problem.
That's the takeaway. Citywide totals describe a city. Concentration tells you where to send the cleanup truck — and where, if you live there, this isn't a statistic.
View underlying data
Top 8 illegal-dumping zips, 2024
| ZIP | Reports |
|---|---|
| 19134 | 1,249 |
| 19125 | 1,113 |
| 19140 | 1,070 |
| 19148 | 1,045 |
| 19121 | 1,030 |
| 19147 | 978 |
| 19132 | 961 |
| 19146 | 907 |
Day-of-week breakdown · zip 19134 (leader)
| Day | Reports |
|---|---|
| Sun | 59 |
| Mon | 264 |
| Tue | 267 |
| Wed | 229 |
| Thu | 228 |
| Fri | 165 |
| Sat | 37 |
Day-of-week breakdown · zip 19138 (median)
| Day | Reports |
|---|---|
| Sun | 15 |
| Mon | 76 |
| Tue | 96 |
| Wed | 76 |
| Thu | 84 |
| Fri | 61 |
| Sat | 12 |
Data Sources
Primary dataset: Philadelphia 311 service-and-information requests (public_cases_fc) via phl.carto.com. Filtered to service_name = 'Illegal Dumping', 2024 only. Frozen
at deploy (2026-05-13).
Queries: dumpingAllZipsSql(2024) for the choropleth's universe, dumpingByZipSql(2024) for the top-8 bar chart,
and dumpingByDowForZipSql(2024, '19134') / dumpingByDowForZipSql(2024, '19138') for the
day-of-week breakdowns. Defined in src/lib/data/datasets/philly-311.ts.
Methodology & caveats: The "top 8" bar uses the SQL HAVING count(*) > 100 ORDER BY n DESC LIMIT 8 ceiling, so the array length
is the honest count; we interpolate it everywhere rather than say "eight." Day-of-week
claims compare the leader and median zips against each other — no DOW data is fetched for
the other zips, so the prose intentionally avoids generalising beyond those two.
Scroll-driven morphs are pure prop swaps; no per-step network traffic.