, situated on the Mississippi River, is a city in and one of the county seats of Lee County, Iowa, United States. The other county seat is Keokuk. The population was 10,715 at the 2000 census. Fort Madison and Keokuk are principal cities of the Fort Madison–Keokuk Micropolitan Statistical Area, which includes all of Lee County, Iowa, and Clark County, Missouri.
According to the United States Census Bureau, the city has a total area of 12.9 square miles (33.5 km²), of which, 9.2 square miles (23.9 km²) of it is land and 3.7 square miles (9.7 km²) of it (28.88%) is water.