Boundary Atlas

Tennessee's 4th congressional district (TN-04)

Tennessee's 4th congressional district (TN-04) covers parts or all of 11 counties, including Bledsoe County, Cannon County, Coffee County, Franklin County, Grundy County and Marion County, and 85 ZIP codes (38 wholly inside it). Its 2020 population was 767,871. This is the map in force for the November 3, 2026 election.

767,871residents (2020 Census)
11counties
85ZIP codes
197voting precincts

Who represents TN-04

OfficeMemberContact
U.S. Representative (TN-04)Scott DesJarlais (R)202-225-6831
U.S. SenatorBill Hagerty (R)202-224-4944 · contact form
U.S. SenatorMarsha Blackburn (R)202-224-3344 · contact form

Elected in 2024 under TN's previous congressional map; this district's lines changed for the 120th Congress (seated January 3, 2027).

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 TN-04
Bledsoe County100%
Cannon County100%
Coffee County100%
Franklin County100%
Grundy County100%
Marion County100%
Sequatchie County100%
Van Buren County100%
Warren County100%
Rutherford County89%
Davidson County32%

ZIP codes

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

Towns

District 1, District 1, District 1, District 1, District 1, District 1, District 1, District 1, District 1, District 1, District 10, District 11, District 12, District 12, District 13, District 13, District 14, District 15, District 16, District 17, District 18, District 2, District 2, District 2, District 2, District 2, District 2, District 2, District 2, District 2, District 2, District 20, District 21, District 27, District 28, District 29, District 3, District 3, District 3 and District 3 and others.

Get this in your AI agent

Your agent can draw every precinct in TN-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:4704", children_level="precinct", include_districts=True)