I present a layer-stripping Kirchhoff migration algorithm which is capable of obtaining accurate images of complex structures by downward continuing the data and imaging from a lower datum. I use eikonal traveltimes in a Kirchhoff datuming algorithm for the downward continuation. After downward continuation, I perform Kirchhoff migration. The method alternates steps of datuming and imaging. Because traveltimes are computed for each step, the adverse effects of caustics, headwaves, and multiple arrivals do not develop. In principal, this method only requires the same number of traveltime calculations as a standard migration. By breaking up the complex velocity structure, I am able to calculate traveltimes under conditions where finite-differencing the eikonal equation is valid. This results in images comparable to those obtained by shot-profile migration, at a reduced computational cost. Tests on the Marmousi data set produce excellent results.