[1] Dike penetration through a succession of upper crustal layers with different densities is studied with a new numerical code. For an individual layer to significantly affect dike ascent, its thickness must be of order 1 when scaled to the characteristic length-scale for the inflated nose region that develops below the dike tip. This characteristic length is L* / (mQ) 1/6 (G/(1 À n)) 1/2 (Drg) À2/3 , where m and Dr are the viscosity and buoyancy of magma, G and n are elastic moduli for the encasing rocks, Q is the magma flow rate and g gravity. For basaltic dikes, L* is %1 km, which is of the same order of magnitude as the typical thickness of sedimentary strata and volcanic deposits. In such conditions, dike ascent proceeds irregularly, with large changes of velocity and width at an interface. Scaling laws for the ascent rate and dike width are derived. Penetration through low-density layers is determined by a local buoyancy balance in the inflated nose region of the dike, independently of the total buoyancy of the magma column between source and tip. In such conditions, a dike develops an internal overpressure that may be large enough to generate a horizontally propagating sill. For this to occur, the thickness of the low-density layers must exceed a threshold value, which depends only on the rock strength and on the average negative buoyancy of magma. For basaltic melt, we estimate that this threshold thickness cannot be less than about 700 m and is 2 km on average.