The success of imaging vertical seismic profile (VSP) data critically depends upon obtaining and using an accurate subsurface velocity model. First-arrival-time tomography can be used to derive velocities above the receivers. Reflection time tomography can be used to derive velocities below the receivers, but it requires reflection time picking and association with appropriate horizons. We described an alternative, faster way to perform velocity analysis by assessing the residual moveout after migrating walk-away VSP data. We have derived residual moveout equations for migrated common receiver gathers assuming a constant velocity model with a single horizontal reflector. The observed residual moveout in common image gathers in the receiver domain will be aligned and flat if the migration velocity is correct. If the residual moveout is not flat, by digitizing the extreme point on the unstacked, migrated traces in each common receiver gather, we could invert for the velocity of the target layer using our new residual moveout equations. We then extended this method to handle depth and laterally varying layer geometries using an iterative root-mean-square velocity scheme and a layer-stripping strategy. We combined the power of a prestack VSP depth migration using complicated velocity structures with straightforward velocity updating equations. For a range of synthetic cases and geometries, the estimated velocities were within 3% of the actual value.