Iola is at (37.923, -95.400). The city is along the eastern bank of the Neosho River. it is between Deer Creek, to the north, and Rock Creek, to the south, with Coon Creek going through the city. U.S. Route 54 goes through Iola along Madison Street. It interchanges with U.S. Route 169, which goes near the east side of the city. The smaller cities of Gas and La Harpe are a few miles to the east along US-54. The tiny city of Bassett is near Iola's southern border. The city of Humboldt is about to the south along US-169.