Establishing reliable correspondences between object surfaces is a fundamental operation, required in many contexts such as cleaning up and completing imperfect captured data, texture and deformation transfer, shapespace analysis and exploration, and the automatic generation of realistic distributions of objects. We present a method for matching a template to a collection of possibly target meshes. Our method uses a very small number of user-placed landmarks, which we augment with automatically detected feature correspondences, found using spin images. We deform the template onto the data using an ICP-like framework, smoothing the noisy correspondences at each step so as to produce an averaged motion. The deformation uses a differential representation of the mesh, with which the deformation can be computed at each iteration by solving a sparse linear system. We have applied our algorithm to a variety of data sets. Using only 11 landmarks between a template and one of the scans from the CEASAR data set, we are able to deform the template, and correctly identify and transfer distinctive features, which are not identified by user-supplied landmarks. We have also successfully established correspondences between several scans of monkey skulls, which have dangling triangles, non- manifold vertices, and self intersections. Our algorithm does not require a clean target mesh, and can even generate correspondence without trimming our extraneous pieces from the target mesh, such as scans of teeth.