Shelby is a city located in Cleveland County, North Carolina. Shelby has a 2026 population of 22,778. It is also the county seat of Cleveland County. Shelby is currently growing at a rate of 3.26% annually and its population has increased by 3.76% since the most recent census, which recorded a population of 21,953 in 2020.