Henrico County is a county in Virginia, United States, wrapping around the city of Richmond on
its north, west and east sides. It had a population of 334,389 at the 2020 census, an estimated
342,775 by 2025, and covers 237.65 square miles (615.5 km2) of land centred near 37°33′N 77°24′W.
Henrico has no incorporated towns or cities of its own — a 1974 relocation moved county
government to Parham Road and Hungary Spring Road in Laurel, an unincorporated community in the
west end that the Census Bureau lists as the county seat. The county runs on Eastern Time and is
governed by a county manager answering to a five-member Board of Supervisors, one for each
magisterial district.
Towns & Villages in Henrico County
Henrico County has 13 census-designated places (CDPs) on record, and every one is unincorporated
— state law has barred any county this densely populated from creating new towns or cities
since Henrico became the third Virginia county affected by the rule, after Arlington and Fairfax.
Together the 13 CDPs hold about 206,000 residents, roughly 62 percent of the county total; the
rest live in unincorporated neighborhoods that fall outside any CDP boundary. CDP stands for
census designated place, a Census Bureau statistical boundary with no local government of its
own.
| Place | Type | Pop. | ZIP |
|---|---|---|---|
| Tuckahoe | CDP | 48,051 | 23229 |
| Short Pump | CDP | 30,626 | — |
| Laurel | CDP · seat | 17,769 | — |
| Highland Springs | CDP | 16,604 | 23075 |
| Glen Allen | CDP | 16,187 | 23060 |
| East Highland Park | CDP | 15,131 | — |
| Lakeside | CDP | 12,203 | 23228 |
| Wyndham | CDP | 11,087 | 23059 |
| Innsbrook | CDP | 8,998 | 23060 |
| Dumbarton | CDP | 8,506 | — |
| Montrose | CDP | 7,909 | 23231 |
| Sandston | CDP | 7,779 | 23150 |
| Chamberlayne | CDP | 5,581 | — |
“Tuckahoe” names two different things here: the county’s largest CDP, in the west
end, and one of the five magisterial districts, whose boundary runs wider than the CDP itself.
Two more names double up with nearby history rather than each other — Varina and Fair Oaks
are unincorporated communities with no CDP status and no population figure of their own; Varina
served as the original county seat from 1634 until Richmond split off in 1842, and Fair Oaks sits
on the ground of the 1862 Battle of Seven Pines. Both are covered under Geography and History
below rather than in the table, since the Census Bureau does not count them as separate places.
Magisterial Districts
Henrico’s Board of Supervisors has five members, one elected from each magisterial
district. The districts don’t line up one-to-one with the CDPs above — several CDPs,
including Tuckahoe, sit inside a district of the same name but do not fill it.
| District | Supervisor | Party |
|---|---|---|
| Brookland | Dan Schmitt | Republican |
| Fairfield | Roscoe Cooper III | Democratic |
| Three Chopt | Misty Whitehead | Democratic |
| Tuckahoe | Jody Rogish | Democratic |
| Varina | Tyrone E. Nelson | Democratic |
ZIP Codes
- 23229 — Tuckahoe
- 23060 — Glen Allen and Innsbrook (a shared postal area)
- 23059 — Wyndham, also serving part of Glen Allen
- 23075 — Highland Springs
- 23228 — Lakeside
- 23231 — Montrose
- 23150 — Sandston
Short Pump, Laurel, East Highland Park, Dumbarton and Chamberlayne have no ZIP code assigned
to their CDP name specifically; mail there is delivered under a neighboring incorporated post
office’s code, part of the wider patchwork of Richmond-area ZIPs that cross Henrico’s
unmarked internal boundaries.
Geography
Henrico County sits on Virginia’s Piedmont-to-Coastal-Plain fall line, the boundary where
the state’s hillier interior meets its flat tidewater. The Chickahominy River marks the
county’s northern edge, Tuckahoe Creek runs along its western edge, and the James River
forms its southern boundary, with the independent city of Richmond sitting on the opposite
bank and cutting into the county’s southern middle. Of the county’s 237.65 square
miles of land, 7.35 square miles (19.0 km2) are water, about 3 percent, most of it the James
and Chickahominy corridors plus smaller reservoirs and creeks feeding them.
Hanover County and Charles City County lie to the north, Charles City County continues along
the east, New Kent County touches the southeast, Chesterfield County lies across the James to
the south, Powhatan County sits to the southwest, and Goochland County lies to the west. Hanover County, Charles City County, New Kent County, Chesterfield County, Powhatan County and Goochland County all border Henrico
directly; the independent city of Richmond, which Henrico surrounds on three sides, has no
county government of its own to link to.
Demographics
Henrico County had a population of 334,389 at the 2020 census, and the latest estimate puts it
near 342,775 residents. Tuckahoe and Short Pump are the two largest named communities, together
home to more than 78,000 people. The county’s median household income was $68,024 in the
2019 ACS estimate, below Virginia’s statewide 2023 figure of $89,931, reflecting a wide
income range across the county rather than a uniformly affluent suburb. Population density works
out to roughly 1,410 people per square mile of land — dense enough that Henrico is barred
by state law from ever incorporating a new town, since that law applies once a county passes
1,000 residents per square mile. The 2020 census recorded the county’s population as 51.0
percent white, 29.2 percent Black, 9.7 percent Asian and 6.6 percent Hispanic or Latino.
Economy & Local Life
Henrico County Public Schools and Capital One are each the county’s largest employers,
with 5,000 to 9,999 workers apiece; Henrico County government itself employs 1,000 to 4,999
more. Henrico Doctors’ Hospital, Anthem, Bank of America, Wells Fargo, Walmart, the U.S.
Postal Service and Genworth Financial round out the list of employers with 500 or more workers
locally. Short Pump Town Center, an open-air shopping mall that opened in 2003 on the county’s
west side, anchors a retail corridor along West Broad Street that also includes West Broad
Village. Innsbrook, a mixed-use corporate center founded in 1979 northwest of Richmond, is one of
the region’s largest office employment hubs outside the city itself.
History
Henrico Shire was one of Virginia’s eight original shires, established by the colony in
1634 and named for Henry Frederick, Prince of Wales. Its original county seat sat at Varina
Farms plantation, on the north bank of the James, from 1634 until Richmond — itself long
part of Henrico — became a fully independent city in 1842. The county government kept its
offices at 22nd and Main Street in Richmond even after that split, before finally moving out to
Parham Road and Hungary Spring Road in Laurel in 1974, with a second Eastern Government Center
opening on Nine Mile Road in 1988.
The county saw heavy fighting during the 1862 Peninsula Campaign, including the Battle of Seven
Pines, fought partly on ground now called Fair Oaks. Two years later, on 12 May 1864, Confederate
cavalry commander J.E.B. Stuart was mortally wounded at the Battle of Yellow Tavern in the
county’s northwest, a battle that broke Confederate cavalry dominance around Richmond for
the rest of the war. Over its history Henrico’s original territory has produced ten other
Virginia counties and three independent cities, including Richmond itself.
Getting There
Interstate 64 crosses the county east-west, Interstate 95 runs north-south through its
southwestern corner near Richmond, Interstate 195 forms a short western spur, and Interstate 295
loops around the county’s north and east sides as a partial beltway. U.S. Routes 1, 60, 250
and 360 also cross Henrico, along with older roads such as Three Chopt Road that still carry
local traffic today.
- Richmond — adjacent, on the county’s southern boundary
- Mechanicsville — about 12 miles north
- Ashland — about 15 miles north
- Petersburg — about 28 miles south
Richmond International Airport, the region’s main commercial airport, sits inside Henrico
itself, in the Sandston CDP on the county’s east side. Amtrak’s Richmond Staples Mill
Road Station, serving the Northeast Regional and long-distance routes, is also inside the county,
in the west end near Glen Allen and Innsbrook — a rare case of a county hosting both its
region’s airport and its main rail station without leaving its own borders.
Frequently Asked Questions
Where is Henrico County located?
It wraps around the city of Richmond on the north, west and east, bordered by Hanover, Charles
City, New Kent, Chesterfield, Powhatan and Goochland counties.
What is the population of Henrico County?
334,389 at the 2020 census, with a 2025 estimate near 342,775.
How big is Henrico County?
237.65 square miles (615.5 km2) of land, plus 7.35 square miles (19.0 km2) of water.
What is the county seat of Henrico County?
Laurel is the county seat, an unincorporated community in the west end where county government
has been based since 1974.
Why doesn’t Henrico County have any towns or cities?
Virginia law bars new towns from incorporating inside a county once its population density
passes 1,000 people per square mile; Henrico crossed that line decades ago, becoming the third
Virginia county affected by the rule.
How many named places are in Henrico County?
13 census-designated places, led by Tuckahoe (48,051) and Short Pump (30,626), plus
unincorporated communities such as Varina and Fair Oaks that carry no CDP population count.
What ZIP codes does Henrico County use?
23229 for Tuckahoe, 23059–23060 for Glen Allen, Wyndham and Innsbrook, 23075 for Highland
Springs, 23228 for Lakeside, 23231 for Montrose and 23150 for Sandston, among others shared with
neighboring Richmond-area post offices.
More counties in this state: Towns and villages in Virginia.