Like in many design decisions, a cache is a trade-off. Caching is a trade-off where you accept stale data to have them available/fast.