The oils went off
Updated
An old-crayon smell, a sharpness that was not there, a yellowing. The oil phase has oxidized, and unlike contamination this is chemistry rather than biology.
What rancidity is
Oxidation of unsaturated fats, producing aldehydes and other compounds that smell wrong and can irritate skin. It is not microbial and a preservative does nothing about it, which is the distinction people most often miss: an antioxidant is not a preservative and a preservative is not an antioxidant.
Which oils go first
The more unsaturated, the faster. Oils rich in polyunsaturates, rosehip and hemp among them, are the most fragile and are frequently chosen precisely for their actives.
More saturated and more stable oils, jojoba which is technically a wax ester, and the harder butters, last far longer. A formula's shelf life is frequently set by its least stable oil rather than by anything else in it.
The oil that gives your product its story is often the one that limits it.
What accelerates it
Oxygen, light, heat and metal ions, which is the same list that degrades vitamin C and for the same underlying reason. Copper and iron catalyze it.
So a clear jar on a bright shelf with a large headspace is close to a designed oxidation experiment, and every one of those factors is a decision somebody made.
Slowing it down
An antioxidant in the oil phase and a chelator to tie up the catalytic metals. Both cost fractions of a percent.
Then the package: less headspace, less light, less air exchange. An airless system helps here for exactly the reason it helps preservation, which is one of several places in this craft where the same decision pays twice.
And buy oils in quantities you use quickly, stored cool and dark and sealed. A rancid raw material makes a rancid product on day one, and it is the input nobody checks.