I would store it remotely using an api, but cache it locally on the device. Storing it remotely makes it easier on users when they switch devices or want to view their data on a computer. You also get the option to send out alerts (email and push notifications) if the data is on a server. There could be some revenue possibilities there (sending out targeted offers for massage or smoothies after workouts, etc). You can also play with analytics on the workout data (e.g. if there are enough people, see how they compare to each other, see activity level by location, etc).
You may be able to use a PaaS backend like Parse to power your API.