Sand Rock is a town in Cherokee and DeKalb counties in the U.S. state of Alabama. It incorporated in 1988. At the 2020 census, the population was 591. A post office called Sand Rock was established in 1855, and remained in operation until it was discontinued in 1903. Legend has it the city was named after a pioneer sat on a rock upon sandy ground.