factor out the percentage change calculation into a separate utility so that it can be easily tested outside of the service