Boundary Atlas

Pennsylvania's 4th congressional district (PA-04)

Pennsylvania's 4th congressional district (PA-04) covers parts or all of Montgomery County and Berks County, and 93 ZIP codes (46 wholly inside it). Its 2020 population was 764,865. This is the map in force for the November 3, 2026 election.

764,865residents (2020 Census)
2counties
93ZIP codes
391voting precincts

Who represents PA-04

OfficeMemberContact
U.S. Representative (PA-04)Madeleine Dean (D)202-225-4731
U.S. SenatorDavid McCormick (R)202-224-6324 · contact form
U.S. SenatorJohn Fetterman (D)202-224-4254 · contact form

Officials serving now (members of Congress until January 3, 2027). Sources: Members of Congress: the @unitedstates project, congress-legislators (CC0).

Counties

CountyShare of the county's residents in PA-04
Montgomery County73%
Berks County33%

ZIP codes

Percentages mark ZIPs only partly in PA-04: the share of that ZIP's residents inside it.

Towns

Abington township, Alsace township, Ambler borough, Amity township, Bally borough, Bechtelsville borough, Bern township, Boyertown borough, Bryn Athyn borough, Cheltenham township, Colebrookdale township, Collegeville borough, Conshohocken borough, District township, Douglass township, Douglass township, Earl township, East Norriton township, Fleetwood borough, Green Lane borough, Greenwich township, Hatboro borough, Hereford township, Jenkintown borough, Kutztown borough, Lansdale borough, Laureldale borough, Leesport borough, Lenhartsville borough, Limerick township, Longswamp township, Lower Frederick township, Lower Gwynedd township, Lower Moreland township, Lower Pottsgrove township, Lower Providence township, Lower Salford township, Lyons borough, Maidencreek township and Maxatawny township and others.

Get this in your AI agent

Your agent can draw every precinct in PA-04, or list them with population shares (related_geographies). Add https://boundarymcp.com/mcp to Claude, ChatGPT, Cursor or Codex (free, no key; how), then:

get_boundaries(id="us:congressional_district:4204", children_level="precinct", include_districts=True)