Orthogonal range reporting is the problem of storing a set of n points in d-dimensional space, such that the k points in an axis-orthogonal query box can be reported efficiently. While the 2-d version of the problem was completely characterized in the pointer machine model more than two decades ago, this is not the case in higher dimensions. In this paper we provide a space optimal pointer machine data structure for 3-d orthogonal range reporting that answers queries in O(log n + k) time. Thus we settle the complexity of the problem in 3-d. We use this result to obtain improved structures in higher dimensions, namely structures with a log n/ log log n factor increase in space and query time per dimension. Thus for d ≥ 3 we obtain a structure that both uses optimal O(n(log n/ log log n)d−1 ) space and answers queries in the best known query bound O(log n(log n/ log log n)d−3 + k). Furthermore, we show that any data structure for the d-dimensional orthogonal range reporting proble...