Looking at those queries, I see that they are significantly overlapping, but a lot of the data doesn’t have id fields, so Apollo Client cannot know that they describe the same object and can safely be merged together in the cache, or if they describe different objects that cannot be merged.
So Apollo Client goes the safe route of “not merging” and overrides the data. That means that data required to display a different component is lost, though, and the client makes another query.
So, I would suggest that first, you add id everywhere it is possible, and if that doesn’t help that you ensure that you run on a debug build of Apollo Client, as that will warn you on the console in cases where it needs to discard data. This should be enabled by default, but maybe you already disabled that - you can double-check Reducing bundle size - Apollo GraphQL Docs on that.