In the classical obstacle problem, the free boundary can be decomposed into "regular" and "singular" points. As shown by Caffarelli in his seminal papers [C77, C98], regular points consist of smooth hypersurfaces, while singular points are contained in a stratified union of C 1 manifolds of varying dimension. In two dimensions, this C 1 result has been improved to C 1,α by Weiss [W99].In this paper we prove that, for n = 2 singular points are locally contained in a C 2 curve. In higher dimension n ≥ 3, we show that the same result holds with C 1,1 manifolds (or with countably many C 2 manifolds), up to the presence of some "anomalous" points of higher codimension. In addition, we prove that the higher dimensional stratum is always contained in a C 1,α manifold, thus extending to every dimension the result in [W99].We note that, in terms of density decay estimates for the contact set, our result is optimal. In addition, for n ≥ 3 we construct examples of very symmetric solutions exhibiting linear spaces of anomalous points, proving that our bound on their Hausdorff dimension is sharp.