Abstract. We present the first adaptive data structure for two-dimensional orthogonal range search. Our data structure is adaptive in the sense that it gives improved search performance for data with more inherent sortedness. Given n points on the plane, the linear-space data structure can answer range queries in O(log n+k+m) time, where m is the number of points in the output and k is the minimum number of monotonic chains into which the point set can be decomposed, which is O( √ n) in the worst case. Our result matches the worst-case performance of other optimaltime linear-space data structures, or surpasses them when k = o( √ n). Our data structure can also be made implicit, requiring no extra space beyond that of the data points themselves, in which case the query time becomes O(k log n + m). We present a novel algorithm of independent interest to decompose a point set into a minimum number of untangled, same-direction monotonic chains in O(kn + n log n) time.