Wandering AnalogRead() results

Ripple on the supply?
Or is it a battery?
Does using the internal voltage reference improve things?