Clayton County moved its county seat many times between 1840 and 1876. The original county seat was in Prairie La Porte, but in 1843 the people voted to have the seat changed to Jacksonville. Later, the county seat moved to Garnavillo and then to Elkader. As soon as Elkader was declared the county seat, the city of Guttenberg petitioned to consider an election between Elkader and Guttenberg. Guttenberg won the election by 1,007 votes. Just as the county records were arriving in Guttenberg, Garnavillo moved to have the county seat relocated. Several other contests between these cities followed, but eventually Elkader was victorious in securing the county seat.
A courthouse had been erected at Garnavillo. It was sold in 1866 to raise money for the building of a courthouse in Elkader. The County Board of Supervisors could only spend $2,000 a year on construction of the Elkader courthouse. However, by 1876, with another county seat contest pressing, the citizens of Elkader and the county came up with the $10,000 needed for the courthouse. This red brick building is the one in use today. Spacious additions and a clock tower have been added. A Civil War monument was erected in 1919.