Abstract-Place recognition addresses the problem of determining whether a robot is in a map, and if so, globally localizing, without being given any prior estimate. An efficient method of solving this problem involves selecting a set of keypoints which encode the local region, and then utilizing a sublinear-time nearest neighbors search into a database of keypoints previously generated from the global map to find places with common features. We present an algorithm to embed arbitrary keypoint descriptors in a metric space, which is required in order to frame the problem as a nearest neighbor search. Given that there are a multitude of possibilities for keypoint design, we propose a general methodology for comparing keypoint location selection heuristics and descriptor models that describe the region around the keypoint. With respect to keypoint locations, we introduce a metric that encodes how likely it is that the keypoint will be found in independent mapping passes given the presence of noise and occlusions. Metrics for keypoint descriptors are used to assess the separation between the distributions of matches and non-matches and the probability the correct match will be found in a k-nearest neighbors search. We apply our design evaluation methodology to three keypoint selection heuristics and five keypoint descriptor models. Verification of the test outcomes is done by comparing the various keypoint designs on a kilometers-scale place recognition problem.