County · North Dakota

McHenry County, North Dakota

McHenry County, North Dakota. McHenry County had 5,130 residents in 2025 by the Census Bureau's estimate, down 4.2% since 2020, while North Dakota grew 2.6%. It holds 58 places (12 cities, villages and boroughs, 45 towns and townships and 1 census-designated) and 2 census tracts. GEOID 38049.

McHenry County is one of the 3 counties of the Minot, ND metropolitan statistical area (the Census Bureau's July 2023 delineation).

Residents, July 2025 estimate

5,130

Census Bureau estimate (no margin published)
2020 Census count: 5,345 · ACS 2020-2024: 5,207

Median household income

$80,733

±$9,698 (90% margin)
North Dakota: $76,657

Median home value

$151,000

±$15,956 (90% margin)
North Dakota: $249,900

Median gross rent

$713

±$164 (90% margin)
North Dakota: $954

How many people live in McHenry County, and is it growing?

The 2020 Census counted 5,345 residents in McHenry County. The Census Bureau estimates 5,130 for July 1, 2025, down 4.2% since 2020, while North Dakota grew 2.6%. The 2020-2024 American Community Survey puts the population at 5,207 over 1,874 square miles of land.

  • July 2020→2021 −95 (5,241)
  • 2021→2022 −16 (5,225)
  • 2022→2023 −59 (5,166)
  • 2023→2024 −13 (5,153)
  • 2024→2025 −23 (5,130)
McHenry County in North Dakota. Boundaries: Census Bureau 2024.
Counts, ACS 2020-2024 5-year estimates, with the change from 2015-2019
MeasureMcHenry CountyNorth DakotaChange since 2015-2019
Total population5,207784,841−671
Households2,244±97331,063−350
Average household size2.29±0.102.28no clear change
Housing units2,833±39377,281−338

McHenry County's population since 2000

From 5,987 in 2000 to 5,130 in 2025: down 14.3%. The 2000, 2010 and 2020 figures are census counts. The 2005 figure is the Census Bureau's intercensal estimate, revised to fit the 2000 and 2010 counts and drawn on 2010 boundaries; 2015 and 2025 are July 1 estimates made from the census before them.

  • 2000 Census 5,987
  • 2005 (estimate) 5,568
  • 2010 Census 5,395
  • 2015 (estimate) 5,975
  • 2020 Census 5,345
  • 2025 (estimate) 5,130

Source: The 2000, 2010 and 2020 Census counts and the Census Bureau's population estimates (intercensal 2000-2010, Vintage 2020, Vintage 2025) · Census population estimates

Source: American Community Survey 2020-2024 5-year estimates, U.S. Census Bureau (released January 2026); PEP Vintage 2025 (CO-EST2025); 2020 Census · Check it at data.census.gov

What cities and towns are in McHenry County?

McHenry County holds 58 places: 12 cities, villages and boroughs (incorporated places), 45 towns and townships (county subdivisions with their own government) and 1 census-designated place. The largest is Velva with 1,046 residents (2025 estimate). Places that cross a county line are listed with the share of their 2020 residents who live in this county.

Places in McHenry County, ACS 2020-2024 5-year estimates. Ring: estimate with a coefficient of variation over 40%.
Velvacity1,0861,083±132$83,060$194,6008.2%100%
Townercity479467±114$49,500$78,40015.4%100%
Drakecity292300±70$46,000$75,60021.3%100%
Velva TownshipGEOID 3804981660township278227±85$115,750$316,70024.2%100%
Granvillecity240278±76$82,500$94,2009.0%100%
AnamooseGEOID 3802220city230309±95$78,750$87,00019.4%100%
Norwich TownshipGEOID 3804958660township145103±45$62,273$183,3000.0%100%
UphamGEOID 3880860city135102±34not published$53,8009.8%100%
Newport TownshipGEOID 3804956540township10764±59$250,000 or more$158,7000.0%100%
North Prairie TownshipGEOID 3804958100township9983±50$39,688$308,8000.0%100%
DeeringGEOID 3818620city9468±28$88,125$120,8001.5%100%
Egg Creek TownshipGEOID 3804922580township8857±35$71,875not published0.0%100%
KarlsruheGEOID 3841380city8762±25not published$102,5006.5%100%
Deering TownshipGEOID 3804918660township86150±60not published$517,90018.7%100%
Berwick TownshipGEOID 3804906580township810±10not publishednot published–100%
Brown TownshipGEOID 3804909860township7830±30not publishednot published0.0%100%
Lebanon TownshipGEOID 3804945500township7658±37not publishednot published0.0%100%
Riga TownshipGEOID 3804966780township7393±46$52,500$188,3000.0%100%
Granville TownshipGEOID 3804932700township7247±28$31,731$117,3008.5%100%
Pratt TownshipGEOID 3804964420township6138±28not published$321,4000.0%100%
Kottke Valley TownshipGEOID 3804943460township6135±29$113,750not published0.0%100%
Normal TownshipGEOID 3804957500township6042±49not publishednot published0.0%100%
Denbigh TownshipGEOID 3804919020township598±10not publishednot published0.0%100%
Odin TownshipGEOID 3804959180township5630±29not publishednot published10.0%100%
Meadow TownshipGEOID 3804951660township55106±69$71,250$54,5006.7%100%
Schiller TownshipGEOID 3804971180township488±10$71,250$275,0000.0%100%
VoltaireGEOID 3882380city4643±24not published$211,4000.0%100%
Anamoose TownshipGEOID 3804902260township4662±49$155,852$342,2000.0%100%
Hendrickson TownshipGEOID 3804937260township4521±21not publishednot published0.0%100%
Willow Creek TownshipGEOID 3804986420township4322±17not publishednot published0.0%100%
Deep River TownshipGEOID 3804918540township4168±60not published$312,50064.7%100%
Land TownshipGEOID 3804944660township4134±18$45,500$112,5000.0%100%
Lake Hester TownshipGEOID 3804943860township4121±20not publishednot published0.0%100%
Spring Grove TownshipGEOID 3804975020township3934±27not publishednot published0.0%100%
Little Deep TownshipGEOID 3804947260township3915±14not publishednot published0.0%100%
Layton TownshipGEOID 3804945380township37261±118$87,292$605,3000.0%100%
Bantry TownshipGEOID 3804904780township3725±20$59,286not published0.0%100%
Karlsruhe TownshipGEOID 3804941420township365±6not publishednot published0.0%100%
Olivia TownshipGEOID 3804959300township3597±93not publishednot published0.0%100%
Bjornson TownshipGEOID 3804907300township3489±63$145,855not published0.0%100%
Lake George TownshipGEOID 3804943820township3418±11not published$120,0000.0%100%
Wagar TownshipGEOID 3804982580township340±10not publishednot published–100%
Grilley TownshipGEOID 3804933700township3233±17$139,500$235,7003.0%100%
Voltaire TownshipGEOID 3804982420township3226±24not publishednot published0.0%100%
Balfour TownshipGEOID 3804904500township3021±20not publishednot published9.5%100%
Strege TownshipGEOID 3804976700township29100±60$57,656not published9.0%100%
Falsen TownshipGEOID 3804925620township270±10not publishednot published–100%
Round Lake TownshipGEOID 3804968660township2515±15not publishednot published0.0%100%
Rose Hill Township, McHenry CountyGEOID 3804968310township2360±50$200,625not published0.0%100%
BalfourGEOID 3804460city203±4not publishednot published66.7%100%
Villard TownshipGEOID 3804982220township1510±8not publishednot published50.0%100%
Saline TownshipGEOID 3804970340township1440±35not publishednot published0.0%100%
Gilmore TownshipGEOID 3804930300township1428±38not publishednot published0.0%100%
Mouse River TownshipGEOID 3804954980township140±10not publishednot published–100%
BergenGEOID 3806180city101±3not publishednot published0.0%100%
Cottonwood Lake TownshipGEOID 3804916260township910±12not publishednot published0.0%100%
KiefGEOID 3842660city80±10not publishednot published–100%
BantryGEOID 3804740CDP65±6not publishednot published0.0%100%

Source: American Community Survey 2020-2024 5-year estimates, U.S. Census Bureau (released January 2026); 2020 place-by-county parts · Check it at data.census.gov

Who lives in McHenry County?

The median resident of McHenry County is 43.4 years old; 24.2% are under 18 and 22.1% are 65 or older. The largest group is non-Hispanic white residents at 94.0%, then Hispanic or Latino residents (of any race) at 2.2%. 1.1% of residents were born outside the United States.

Age, origin and education, ACS 2020-2024 5-year estimates. Race groups are non-Hispanic; Hispanic includes any race.
MeasureMcHenry CountyNorth DakotaChange since 2015-2019
Median age43.4±1.135.9no clear change
Under 18 years24.2%±0.7 pts23.5%–
65 years and over22.1%±0.4 pts16.5%–
Hispanic or Latino (any race)2.2%4.7%no clear change
White alone, not Hispanic94.0%±0.3 pts81.7%−1.2 pts
Black or African American alone, not Hispanic0.8%±0.4 pts3.3%–
Asian alone, not Hispanic0.2%±0.2 pts1.6%–
American Indian and Alaska Native alone, not Hispanic0.7%±0.6 pts4.2%–
Native Hawaiian and Other Pacific Islander alone, not Hispanic0.0%±0.5 pts0.1%–
Two or more races, not Hispanic1.9%±0.6 pts4.0%–
Some other race alone, not Hispanic0.2%±0.3 pts0.3%–
Born outside the United States1.1%±0.7 pts4.7%no clear change
Speak a language other than English at home (age 5+)3.7%±1.2 pts6.7%–
Civilian veterans (age 18+)10.6%±2.1 pts7.1%–
With a disability12.2%±1.7 pts12.0%–
No health insurance coverage8.3%±2.5 pts6.5%+3.8 pts
High school graduate or higher (age 25+)91.2%±1.8 pts94.0%–
Bachelor's degree or higher (age 25+)20.3%±2.6 pts32.7%no clear change
Graduate or professional degree (age 25+)3.3%±0.9 pts9.7%–
Moved from another state in the past year1.1%±0.7 pts4.2%–

Source: American Community Survey 2020-2024 5-year estimates, U.S. Census Bureau (released January 2026) (Data Profiles DP02, DP05) · Check it at data.census.gov

What do households in McHenry County earn?

Half of McHenry County's 2,244 households earn less than $80,733 a year (±$9,698), against $76,657 in North Dakota. In 2015-2019 it was $78,985 in 2024 dollars; the margins of error cannot tell the two periods apart. 9.7% of residents live below the poverty line.

Income and poverty in 2024 dollars, ACS 2020-2024 5-year estimates
MeasureMcHenry CountyNorth DakotaChange since 2015-2019
Median household income$80,733±$9,698$76,657no clear change
Mean household income$92,720±$6,511$101,793–
Per capita income$40,377±$2,386$43,389no clear change
People below the poverty line9.7%±2.3 pts10.8%no clear change
Children under 18 below the poverty line14.8%±5.4 pts11.1%+8.8 pts
Households receiving SNAP6.3%±1.3 pts6.6%–
Households with a broadband subscription82.3%±3.8 pts88.7%–

Source: American Community Survey 2020-2024 5-year estimates, U.S. Census Bureau (released January 2026) (Data Profile DP03) · Check it at data.census.gov

What does housing cost in McHenry County?

Owners occupy 81.4% of McHenry County's occupied homes and renters 18.6%. The median owner-occupied home is valued at $151,000 by its owner (±$15,956). The median renter pays $713 a month including utilities, and 18.4% of renters pay 35% or more of their income on rent.

Housing, ACS 2020-2024 5-year estimates
MeasureMcHenry CountyNorth DakotaChange since 2015-2019
Median home value (owner-occupied)$151,000±$15,956$249,900no clear change
Median gross rent$713±$164$954no clear change
Renters paying 35% or more of income on rent18.4%±9.6 pts31.1%no clear change
Median monthly owner costs, with a mortgage$1,423±$180$1,762–
Owner-occupied homes81.4%±3.5 pts62.9%no clear change
Housing units2,833±39377,281−338
Homeowner vacancy rate0.8%±0.6 pts1.2%–
Rental vacancy rate14.0%±6.8 pts8.3%–
Single-family detached homes83.0%±2.9 pts56.7%–
Mobile homes9.8%±2.4 pts6.6%–
Built 2020 or later0.0%±0.9 pts1.8%–
Built 1939 or earlier23.2%±3.8 pts11.5%–

Source: American Community Survey 2020-2024 5-year estimates, U.S. Census Bureau (released January 2026) (Data Profile DP04) · Check it at data.census.gov

How many new homes is McHenry County building?

Builders took permits for 12 new housing units across McHenry County in 2025 (12 single-family), 2.3 per 1,000 residents.

  • 2019 3 units
  • 2020 6 units
  • 2021 2 units
  • 2022 5 units
  • 2023 6 units
  • 2024 11 units
  • 2025 12 units

Source: Building Permits Survey, annual county files 2019-2025, U.S. Census Bureau · Census Building Permits Survey

How do people in McHenry County get to work?

70.7% of McHenry County's workers drive alone and 16.4% work from home. The average trip to work takes 29.7 minutes. The unemployment rate in 2020-2024 averaged 4.1%.

Work and commuting, ACS 2020-2024 5-year estimates
MeasureMcHenry CountyNorth DakotaChange since 2015-2019
In the labor force (age 16+)63.1%±2.5 pts68.6%–
Unemployment rate4.1%±1.7 pts2.8%no clear change
Drove alone to work70.7%±4.5 pts77.9%–
Carpooled6.8%±1.8 pts8.8%–
Public transportation0.0%±1.0 pts0.3%–
Walked5.1%±2.2 pts3.2%–
Worked from home16.4%±4.2 pts8.1%+10.5 pts
Mean travel time to work29.7 min±2.317.9 min+5.2 min

Source: American Community Survey 2020-2024 5-year estimates, U.S. Census Bureau (released January 2026) (Data Profile DP03) · Check it at data.census.gov

What are McHenry County's census tracts?

McHenry County is divided into 2 census tracts. Among those with a reliable estimate, median household income runs from $76,875 (Tract 9559) to $81,453 (Tract 9556).

Census tracts of McHenry County, ACS 2020-2024 5-year estimates; sort by any column
Tract 955638049955600Towner (6%)2,4252,404±147$81,453$125,000$6278.0%
Tract 955938049955900Drake (5%)2,9202,803±147$76,875$171,300$91311.2%

Source: American Community Survey 2020-2024 5-year estimates, U.S. Census Bureau (released January 2026) · Check it at data.census.gov

How does McHenry County compare with North Dakota's other counties?

McHenry County's rank among North Dakota's counties with a reliable estimate (1 = highest)
MeasureRank
Population23rd of 53
Growth 2020-202545th of 53
Residents per square mile33rd of 53
Median household income14th of 53
Median home value31st of 53
Median gross rent35th of 53
Poverty rate29th of 53
Bachelor's degree or higher46th of 53
Median age27th of 53

Every county in North Dakota

Source: PlainCities ranks from the American Community Survey 2020-2024 5-year estimates, U.S. Census Bureau (released January 2026) and PEP Vintage 2025 · How ranks are computed

How these figures are made: methodology and release checks · reading a margin of error · every state · corrections

Not on this page: crime, weather and schools for McHenry County are other agencies' records. Crime: the FBI's Crime Data Explorer · climate: NOAA's U.S. Climate Normals · schools: the National Center for Education Statistics' school search.