We characterize a three-factor model of commodity spot prices, convenience yields, and interest rates, which nests many existing specifications. The model allows convenience yields to depend on spot prices and interest rates. It also allows for time-varying risk premia. Both may induce mean reversion in spot prices, albeit with very different economic implications. Empirical results show strong evidence for spot-price level dependence in convenience yields for crude oil and copper, which implies mean reversion in prices under the risk-neutral measure. Silver, gold, and copper exhibit time variation in risk premia that implies mean reversion of prices under the physical measure.