Oxidation State Of O2: The Straight Answer
The oxidation state of O2 is zero. That is the entire answer. When you are writing out redox equations for your lab notebook or grading exam papers at 11pm, just remember that any molecule made of a single element — O2, N2, H2, S8, P4 — has an oxidation state of zero by definition. Oxidation state is a bookkeeping system. It tracks how many electrons each atom would effectively "own" if every bond in the molecule were treated as completely ionic. In O2, the two oxygen atoms are identical. The bond is covalent, but even more importantly, it is nonpolar. Neither atom is more electronegative than the other, so there is no reason to shift electron density to one side or the other. Each oxygen gets one electron from the double bond, which is exactly the number it brings to the table. The math works out to zero, and that is why we say the oxidation state is zero. This is different from formal charge, by the way. Students keep confusing the two. Formal charge on each oxygen in O2 is also zero, but that is a coincidence of the symmetrical Lewis structure. The oxidation state rule and the formal charge calculation arrive at the same number here, but they are not the same thing.
How to Assign Oxidation States in Practice
Here is the step-by-step method I use when I have a messy compound and need to work backward from a known oxidation state to find an unknown one. First, write down the standard rules in order of priority. Elements in their standard state are zero. Fluorine is always minus one. Hydrogen is plus one when bonded to nonmetals, minus one when bonded to metals. Oxygen is minus two in almost everything except peroxides, superoxides, and compounds with fluorine. The sum of all oxidation states in a neutral molecule is zero. The sum in an ion equals the charge of the ion. Then you just solve the algebra. For example, in potassium permanganate, KMnO4, you know potassium is plus one, oxygen is minus two, and the molecule is neutral. So plus one plus x plus four times minus two equals zero. X equals plus seven. Manganese is in the plus seven oxidation state.
The real complexity comes when you hit exceptions. Peroxides like H2O2 and Na2O2 have an oxygen oxidation state of minus one because the O-O bond means those two oxygens are bonded to each other instead of to more electropositive atoms. Superoxides like KO2 drop to minus one-half. And in OF2, oxygen is bonded to fluorine, which is more electronegative, so oxygen takes on a positive oxidation state of plus two. I once spent twenty minutes debugging a redox titration calculation because I had blindly assigned oxygen as minus two in a compound that turned out to be a peroxide. The stoichiometry was completely wrong. The workaround was simple: check for the presence of an O-O single bond in the structure before applying the default minus two rule. If you see that bond, the oxidation state is minus one for each oxygen involved. This mistake cost me a full lab period and I have not repeated it since.
Get the Full Details

Common Pitfalls
The biggest trap is assuming oxygen is always minus two. It is not. In peroxydisulfuric acid, H2S2O8, there are two oxygen atoms in a peroxide bridge between the sulfur centers. Those two oxygens are minus one each, while the other six are minus two. If you assign all eight as minus two, your sulfur oxidation state comes out wrong and the whole equation falls apart. Another trap is the difference between oxidation state and actual partial charge. The oxidation state is a formal number used for balancing equations. It does not describe the real electron distribution in the molecule. In O2, the actual charge on each atom is essentially zero, but in ozone, O3, the central oxygen carries a formal positive charge and the terminal ones carry negative charges, yet we still treat this as a resonance hybrid and the oxidation state assignments follow the bonding rules rather than the actual electron density map. A third issue people run into is when they try to apply the oxidation state rules to transition metal oxides with non-stoichiometric formulas, like FeO0.95 or TiO1.9. The oxidation state of oxygen is still technically minus two, but the iron or titanium has to juggle mixed oxidation states to make the numbers work. You end up with Fe2+ and Fe3+ in the lattice, and the average oxidation state is a mathematical construct, not a description of any single atom.
Edge Cases Where O2 Changes Things
When O2 itself participates as a reactant in a combustion or respiration reaction, it goes from oxidation state zero to minus two in the product. That is a four-electron reduction per O2 molecule. In biological systems, the enzyme cytochrome c oxidase handles this four-electron reduction directly. In a lab flask, you typically just write the balanced equation and move on. But if you are working with singlet oxygen or reactive oxygen species, the oxidation state bookkeeping gets messier because you are no longer dealing with ground-state triplet O2 and the products can include superoxide, hydrogen peroxide, and hydroxyl radical, each with different electron counts and different oxidation state assignments for the oxygen atoms in them. The takeaway is straightforward. The oxidation state of O2 is zero. It is zero because it is an element in its standard molecular form. Use that as your anchor point whenever you are balancing redox equations involving oxygen gas, and be careful about exceptions when oxygen appears in peroxides, superoxides, or compounds with fluorine.