Penn township — commute flow to neighboring towns/cities (2023)
Adamstown borough — 0 (Lower-middle)Albany township — 0 (Lower-middle)Alsace township — 2 (Middle)Amity township — 6 (Upper-middle)Bally borough — 0 (Lower-middle)Bechtelsville borough — 0 (Lower-middle)Bern township — 49 (Higher)Bernville borough — 9 (Upper-middle)Bethel township — 22 (Higher)Birdsboro borough — 2 (Middle)Boyertown borough — 1 (Middle)Brecknock township — 1 (Middle)Caernarvon township — 8 (Upper-middle)Centerport borough — 1 (Middle)Centre township — 1 (Middle)Colebrookdale township — 1 (Middle)Cumru township — 22 (Higher)District township — 0 (Lower-middle)Douglass township — 1 (Middle)Earl township — 1 (Middle)Exeter township — 13 (Higher)Fleetwood borough — 6 (Upper-middle)Greenwich township — 0 (Lower-middle)Hamburg borough — 3 (Middle)Heidelberg township — 7 (Upper-middle)Hereford township — 3 (Middle)Jefferson township — 18 (Higher)Kenhorst borough — 0 (Lower-middle)Kutztown borough — 1 (Middle)Laureldale borough — 3 (Middle)Leesport borough — 7 (Upper-middle)Lenhartsville borough — 0 (Lower-middle)Longswamp township — 0 (Lower-middle)Lower Alsace township — 1 (Middle)Lower Heidelberg township — 3 (Middle)Lyons borough — 0 (Lower-middle)Maidencreek township — 13 (Higher)Marion township — 6 (Upper-middle)Maxatawny township — 29 (Higher)Mohnton borough — 0 (Lower-middle)Mount Penn borough — 0 (Lower-middle)Muhlenberg township — 58 (Higher)New Morgan borough — 0 (Lower-middle)North Heidelberg township — 1 (Middle)Oley township — 1 (Middle)Ontelaunee township — 12 (Higher)Perry township — 8 (Upper-middle)Pike township — 0 (Lower-middle)Reading — 84 (Higher)Richmond township — 4 (Upper-middle)Robeson township — 1 (Middle)Robesonia borough — 5 (Upper-middle)Rockland township — 0 (Lower-middle)Ruscombmanor township — 0 (Lower-middle)St. Lawrence borough — 1 (Middle)Shillington borough — 4 (Upper-middle)Shoemakersville borough — 4 (Upper-middle)Sinking Spring borough — 9 (Upper-middle)South Heidelberg township — 14 (Higher)Spring township — 47 (Higher)Tilden township — 10 (Upper-middle)Topton borough — 2 (Middle)Tulpehocken township — 15 (Higher)Union township — 0 (Lower-middle)Upper Bern township — 6 (Upper-middle)Upper Tulpehocken township — 7 (Upper-middle)Washington township — 0 (Lower-middle)Wernersville borough — 0 (Lower-middle)West Reading borough — 45 (Higher)Windsor township — 0 (Lower-middle)Womelsdorf borough — 4 (Upper-middle)Wyomissing borough — 46 (Higher)Penn township — no data (unmeasured)
Where this is
Shading: Total Jobs
Lower-middle (0)Middle (1 to 3)Upper-middle (4 to 10)Higher (12 to 84)No data
Each unit is shaded by its Total Jobs value and grouped into equal-count bands (quantiles) against the other units shown — lighter = lower, darker = higher. It ranks position among the units in view; it does not grade places, and the ranges shift with which units are shown.

The map is bounded to this parent geography — it shows the selected unit among its own siblings only, the same depth rule the drill-down uses. Shading ranks position on the measure among the units shown; it does not grade places.

Click a neighboring town/city to see its own commute flow.

Scroll to Top