What is the difference between application cache and data? Every app has data and cache.

In Android, what is the difference between the two?
App developers decide what information to be kept in "data" and what to be kept in "cache".

Usually, "data" is used for account info, settings, saved activity data, game scores, and whatever is need to be kept permanently. Clearing data will make your app "forget" everything like you have reinstalled it.

"Cache" holds all information and files that can be retrieved somehow (from the internet, or other way). For example social apps can cache all your feed data (photos, comments, and so on). Clearing cache may lead your app to reload all the lost (and necessary) data from it's original source. It shouldn't make your app behave bad.