The Town Files

Keokuk, Iowa

City in Lee County · population 9,900 (2020 Census)

Map: where Keokuk is in IowaKeokuk
Median home
$104,300
Household income
$52,711
Jan low / Jul high
17° / 86°
Snow a year
22 in
Tornadoes ≤10 mi since 1950
28
Median age
43.1

Keokuk is a city of 9,900 people in Lee County, Iowa. The median home is worth $104,300, below the typical Iowa town ($156,300). It ranks better for cycling than 98% of Iowa towns, more walkable than 96% of Iowa towns, more vibrant than 94% of Iowa towns.

Keokuk in our rankings:

How Keokuk ranks

Percentile among Iowa towns with at least 500 people on The Town Files lifestyle rankings. 50 is typical for the state; 90 means better than 90% of Iowa towns.

Keokuk lifestyle rankings vs other Iowa townsRetirement9th pctFamilies4th pctQuiet8th pctWalkability96th pctFirst-time buyers75th pctYoung professionals83rd pctVibrancy94th pctHip & trendy90th pctCollege town75th pctUpscale12th pctVacation homesbottomSeaside characterbottomCycling98th pctTransit90th pctDriving25th pcttypical
The Town Files lifestyle rankings, built from federal demographic, school, crime and housing data (2025).

Homes and cost of living

The median home in Keokuk is worth $104,300, below the typical Iowa town ($156,300). Homes cost about 2.0 times the median household income of $52,711, which is more affordable than 71% of Iowa towns. Median rent is $871 a month. 63.6% of households own their home.

Keokuk vs Lee County vs typical Iowa townKeokukLee CountyTypical Iowa townHome value$104,300$141,400$156,300Household income$52,711$62,382$69,254Monthly rent$871$835$820
Census ACS 5-year estimates, 2020–2024. "Typical town" = median of Iowa towns with 500+ people.
HousingKeokukTypical Iowa town
Median home value$104,300$156,300
Median rent$871$820
Median household income$52,711$69,254
Home value ÷ income2.0×2.2×
Homeownership63.6%77.1%
Median year built19511962
Seasonal / vacation homes1.3%—

Who lives in Keokuk

PeopleKeokukTypical Iowa town
Median age43.140.2
Age 65 and over21.4%20.0%
Under 1821.6%—
Bachelor's degree or higher17.4%21.8%
Below the poverty line18.3%9.3%
Veterans8.4%—
Born outside the U.S.2.5%—
Work from home6.2%7.1%
Average commute16.0 min21.6 min
Homes with broadband88.7%88.5%

Weather in Keokuk

July highs average 85.6°F and January lows 16.7°F. About 39.8 inches of rain and melted snow fall a year, with 21.9 inches of snow (typical Iowa town: 32.5 in). Expect about 26 days a year at 90°F or hotter and 117 nights at or below freezing.

Keokuk monthly temperatures and precipitation10°20°30°40°50°60°70°80°90°32° freezing33°17°Jan38°20°Feb50°31°Mar62°41°Apr73°53°May82°63°Jun86°67°Jul84°65°Aug77°56°Sep65°44°Oct51°33°Nov38°23°DecPrecipitation (in) · snow (in) in blue1.67.01.85.92.52.24.20.45.35.24.13.83.43.30.12.61.11.95.3
NOAA 1991–2020 climate normals: average daily high and low by month; precipitation and snowfall in inches. Temperatures from the Keokuk Lock Dam 19 station (1.7 mi away); snowfall estimated from the 4 nearest snow stations, weighted by distance.

Tornadoes, storms and disasters

28 tornadoes have passed within 10 miles of Keokuk since 1950, compared with 24 for the typical Iowa town. 4 rated (E)F2 or stronger. The strongest, an F3, struck on April 8, 1999 about 1.7 miles from the town center. The most recent was on June 17, 2026.

Tornadoes within 10 miles of Keokuk by decade21950s01960s41970s21980s61990s62000s32010s52020s
NOAA Storm Events Database, tornado tracks (start to end point) passing within 10 miles of the town center, 1950–2026.

Hail of 1 inch or larger has been reported within 10 miles 67 times; the largest was 2.75 inches on May 19, 2013.

Severe weather in Lee County since 1996

Storm events in Lee County since 1996 by typeHail125Flood54Drought16Tornado25Dense Fog9Ice Storm9Heavy Snow13Flash Flood36
NOAA Storm Events Database, Lee County, 1996–2026 (all event types recorded since 1996).

Lee County has been included in 22 federal disaster or emergency declarations since 1953, most often for flood, hurricane, biological.

DeclaredIncidentDeclaration
August 25, 2023FloodDR-4732: Flooding
March 23, 2020BiologicalDR-4483: Covid-19 Pandemic
March 13, 2020BiologicalEM-3480: Covid-19
March 23, 2019FloodDR-4421: Severe Storms And Flooding
September 12, 2018Severe StormDR-4392: Severe Storm And Tornadoes

Jobs and pay in Lee County

Lee County had 13,719 jobs in 2024, paying an average of $57,333 a year. Unemployment was 4.1% in 2023; in Keokuk itself the ACS puts it at 4.9%.

Largest industries in Lee CountyManufacturing3,794 jobs · $81,110Retail1,572 jobs · $33,899Hotels & restaurants990 jobs · $16,573Construction878 jobs · $71,445Wholesale trade406 jobs · $75,222Administrative & support391 jobs · $37,898
BLS Quarterly Census of Employment and Wages, 2024, private-sector jobs and average annual pay.
Unemployment rate in Lee County, 2000–20230%2%4%6%8%10%12%2000200420082012201620202023Lee 4.1%
Annual average unemployment rate (BLS Local Area Unemployment Statistics via USDA ERS).

Public schools in Keokuk

5 public schools with 1,763 students, about 14.0 students per teacher.

SchoolGradesStudentsPer teacher
Keokuk High School9-1259417.0
Hawthorne Elementary SchoolK-346211.3
Keokuk Middle School6-836612.6
George Washington Elementary School4-525814.3
Torrence ElementaryPK-PK8327.7

Towns near Keokuk

Keokuk questions

Is Keokuk, Iowa a good place to retire?

On The Town Files lifestyle rankings, Keokuk scores better for retirees than 9% of Iowa towns and quieter than 8%. 21.4% of residents are 65 or older (median age 43.1).

How much does a house cost in Keokuk?

The median owner-occupied home in Keokuk is valued at $104,300 (Census ACS 2020–2024), against a median household income of $52,711, so homes cost about 2.0 times income. Median rent is $871 a month.

What is the weather like in Keokuk?

July highs average 85.6°F and January lows 16.7°F (NOAA 1991–2020 normals). It gets about 39.8 inches of precipitation a year and 21.9 inches of snow.

Does Keokuk get tornadoes?

28 tornadoes have passed within 10 miles of Keokuk since 1950 (NOAA Storm Events); the strongest was a F3 on April 8, 1999. The typical Iowa town has had 24.

How this page is made. Every number comes from public data, matched to Keokuk's Census boundary (GEOID 1940845). Comparisons use the median of Iowa towns with at least 500 people. Weather comes from the nearest NOAA normals station; storm counts use NOAA tornado tracks within 10 miles of the town center. Data snapshot 2026-11-13.