Pertenece al Condado de Hanover.
Ashland se encuentra ubicada en las coordenadas 37°45′34″N 77°28′38″O / 37.75944, -77.47722.
Según la Oficina del Censo, la localidad tiene un área total de 18,7 km² (7,2 sq mi), de la cual 18,6 km² (7,2 sq mi) es tierra y 0,1 km² (0,04 sq mi) (0,55%) es agua.
Según la Oficina del Censo en 2000,[2] los ingresos medios por hogar en la localidad eran de $36.125, y los ingresos medios por familia eran $43.101.
Los hombres tenían unos ingresos medios de $31.373 frente a los $24.054 para las mujeres.