Some of the most challenging code that I write, is about caches.
Writing good cache support is hard.
But in cases as grandparent describes, you do have significant wiggle room.
It's fairly difficult, for me. The app can do a lot, but sometimes, the data needs to be fresh. Making the decision to run an update can be difficult.
Also, I write free software, for nonprofits, so the hosting can sometimes be a bit dodgy.
But in cases as grandparent describes, you do have significant wiggle room.