Synthetic spinel harzburgite and lherzolite assemblages were equilibrated between 1040 and 1300° C and 0.3 to 2.7 GPa, under controlled oxygen fugacity (fO2). fO2 was buffered with conventional and open double-capsule techniques, using the Fe−FeO, WC-WO2-C, Ni−NiO, and Fe3O4−Fe2O3 buffers, and graphite, olivine, and PdAg alloys as sample containers. Experiments were carried out in a piston-cylinder apparatus under fluid-excess conditions. Within the P-T-X range of the experiments, the redox ratio Fe3+/ΣFe in spinel is a linear function of fO2 (0.02 at IW, 0.1 at WCO, 0.25 at NNO, and 0.75 at MH). It is independent of temperature at given Δlog(fO2), but decreases slightly with increasing Cr content in spinel. The Fe3+/ΣFe ratio falls with increasing pressure at given Δlog(fO2), consistent with a pressure correction based on partial molar volume data. At a specific temperature, degree of melting and bulk composition, the Cr/(Cr+Al) ratio of a spinel rises with increasing fO2. A linear least-squares fit to the experimental data gives the semi-empirical oxygen barometer in terms of divergence from the fayalite-magnetite-quartz (FMQ) buffer: $$\Delta log (f_{O_2 } )^{FMQ} = 0.27 + 2505/T - 400P/T - 6 log(X_{Fe}^{olv} ) - 3200(1 - X_{Fe}^{olv} )^2 /T + 2 log(X_{Fe^{2 + } }^{sp} ) + 4 log(X_{Fe^{3 + } }^{sp} ) + 2630(X_{Al}^{sp} )^2 /T.$$