7 cities
| City | Rank | 2025 Pop. ↓ | 2020 Pop. | Annual Change | Density | Area (mi²) | Type |
|---|---|---|---|---|---|---|---|
| Pearisburg | 1 | 2,843 | 2,912 | -0.49% | 891 | 3 | Town |
| Narrows | 2 | 2,027 | 2,090 | -0.64% | 1,600 | 1 | Town |
| Pembroke | 3 | 1,131 | 1,149 | -0.35% | 1,041 | 1 | Town |
| Rich Creek | 4 | 730 | 748 | -0.54% | 891 | 1 | Town |
| Ripplemead | 5 | 344 | 571 | 7.17% | 304 | 1 | CDP |
| Eggleston | 6 | 104 | 67 | 7.22% | 126 | 1 | CDP |
| Glen Lyn | 7 | 92 | 95 | -1.08% | 151 | 1 | Town |
Pearisburg is the largest city in Giles County, with a population of 2,843.
Glen Lyn is the smallest city in Giles County, with a population of 92.
There are 7 cities in Giles County, Virginia.