Shape invariance is a property of demand functions that is convenient for semiparametric demand modelling. All known shape invariant demands are derived from utility functions that, up to monotonic transformation, are called IB/ESE (independent of base - equivalence scale exact) utility functions, because they yield IB/ESE equivalence scales, which are widely used in welfare calculations. This paper provides a counterexample, i.e., a shape invariant demand system that is not derived from a transform of IB/ESE utility. A general theorem is then provided that characterizes all shape invariant demand systems. The usual practice of equating shape invariance with the IB/ESE utility class is shown to be not quite right, but it can be made valid by testing for the small class of exceptions noted here. In particular, all the exceptions have rank two, so any rank three or higher shape invariant system must be derived from transforms of IB/ESE utility.