Total speculation. But I think some of these clients "stage" the data for faster UX.
On the backend, on their ends, ping the relays for updates, mirror the data on their server so it's readily available to user upon request. Rather than having to ping each relay in real time. It seems Primal does this. Maybe on multi-minute interval, or "on_event" logger. But it doesn't seem live.
Also storing settings, preferences, client-side muted words, etc. Just my hunch.
