En la Península Ibérica Vipera aspis se encuentra en la parte nororiental de España; ocupa los Pirineos y toda la región prepirenaica, llegando hasta Burgos y el norte de Soria por el oeste. En el resto de Europa se distribuye de forma más o menos continua en Francia, Italia, Suiza y el extremo suroeste de Alemania.