According to the U.S. Census Bureau, the county has a total area of , of which is land and (0.5%) is water [REF].
In recent years, average temperatures in the county seat of Carlinville have ranged from a low of in January to a high of in July, although a record low of was recorded in February 1905 and a record high of was recorded in July 1954.