Moulton is located east of San Antonio and south of Flatonia at the intersection of Hwy 95 and Farm roads 532 and 1680, on the Southern Pacific Railroad 16 miles northwest of Hallettsville in northwestern Lavaca County. It was founded in the mid-1850s two miles northwest of its present location.
The town incorporated in 1940, when it had a population of 643 and sixty businesses. Moulton remained that size until the 1960s, when it began to grow, reaching a population of 968 in 1970 and 1,009 in 1980. Thereafter the town declined somewhat; in 1990 Moulton had 923 inhabitants and twenty businesses.