Google Play Services is a monolith, which has many running services and eats battery as a result. If you have Developer Options enabled, go to 'Settings - Developer Options - Running Services' to see how many processes and services are running on your device.
Like abcZ said, this isn't specific to GrapheneOS. I would try and get away from using Google Play Services as much as possible. microG is lighter and better for battery in this regard because they do not implement all Play Service APIs and do not have as many running services. Because not all Play Service APIs are implemented, microG isn't as compatible with some apps that depend on Play Services.
If I could do it with both, I would run microG for apps that required push notifications in one profile and in another profile, I would run Play Services for apps I need support for such as Google Voice. However, such a setup is not possible at this time. I know some of the GOS users would probably disagree with this approach, but this is what would work for my needs.
What I currently do is I have only Play Services installed in another profile. Whenever I am done checking certain apps, I end that profile's session. In an ideal world, I wish there was a way we could pick and choose which Google Play Services were running at any given time. I only really care about the GCMService for notifications. The rest like the Exposure Matching Service I would want to stop.