Backup will never contain cache data.
Cache data is CPU specific and instance specific. For the same app, different CPU may create different cache depending on what part of the app is running as a process. Moreover, even the same CPU running at different instances may have different app cache. If you open an app, keep it running in the background, but never open it in foreground, the cache created will be different from the one created if the app has been running in foreground. Moreover, once the app has been closed and its process has been killed, then cache space for that data is allowed to be overwritten by new incoming data. So, cache data is never constant.