Anderson is a town in Lauderdale County, Alabama, United States. It is part of the Florence - Muscle Shoals Metropolitan Statistical Area known as "The Shoals". As of the 2010 U.S. Census, the town had a population of 282, down from 354 in 2000.
The town is situated along Anderson Creek, which empties into the Elk River near the Lauderdale-Limestone county border. Both the town and creek were named for Samuel Anderson, who built a gristmill along the creek in the early 19th century. The town was first settled around 1825 and was named Andersons Creek for the afore mentioned creek. The name was shortened to Anderson, and a post office was established in 1860. Anderson incorporated as a town in 1973.
Anderson is located at 34°55′12″N 87°16′13″W (34.920029, -87.270358).
According to the U.S. Census Bureau, the town has a total area of 1.3 square miles (3.4 km2), all land.
Anderson is situated near Anderson Creek, which is loosely paralleled by Alabama State Route 207.
Anderson first appeared on the 1980 U.S. Census as an incorporated town. It also included its unincorporated population from 1970, which was not originally listed on that census.