Geochemical data suggest that oxygenation of the Earth's atmosphere occurred in two broad steps. The first rise in atmospheric oxygen is thought to have occurred between ~2.45 and 2.2Gyr ago, leading to a significant increase in atmospheric oxygen concentrations and concomitant oxygenation of the shallow surface ocean. The second increase in atmospheric oxygen appears to have taken place in distinct stages during the late Neoproterozoic era (~800-542Myr ago), ultimately leading to oxygenation of the deep ocean ~580Myr ago, but details of the evolution of atmospheric oxygenation remain uncertain. Here we use chromium (Cr) stable isotopes from banded iron formations (BIFs) to track the presence of Cr(VI) in Precambrian oceans, providing a time-resolved picture of the oxygenation history of the Earth's atmosphere-hydrosphere system. The geochemical behaviour of Cr is highly sensitive to the redox state of the surface environment because oxidative weathering processes produce the oxidized hexavalent [Cr(VI)] form. Oxidation of reduced trivalent [Cr(III)] chromium on land is accompanied by an isotopic fractionation, leading to enrichment of the mobile hexavalent form in the heavier isotope. Our fractionated Cr isotope data indicate the accumulation of Cr(VI) in ocean surface waters ~2.8 to 2.6Gyr ago and a likely transient elevation in atmospheric and surface ocean oxygenation before the first great rise of oxygen 2.45-2.2Gyr ago (the Great Oxidation Event). In ~1.88-Gyr-old BIFs we find that Cr isotopes are not fractionated, indicating a decline in atmospheric oxygen. Our findings suggest that the Great Oxidation Event did not lead to a unidirectional stepwise increase in atmospheric oxygen. In the late Neoproterozoic, we observe strong positive fractionations in Cr isotopes (δ53Cr up to +4.9‰), providing independent support for increased surface oxygenation at that time, which may have stimulated rapid evolution of macroscopic multicellular life.