El Elba nace en el norte de la República Checa, a 1386 m de altitud, en la vertiente meridional de los montañas de los Gigantes, y tras discurrir primero en dirección sureste y virar al noroeste, desemboca no lejos de Hamburgo en el mar del Norte.