Essentially grain is a lot of detail that video compression algorithms have been taught to ignore/remove. H.264 was notorious for virtually removing all grain making it impossible to have authentic film grain on YouTube for years. (I work in advertising).
Exactly like you said - grain is a common first victim of video compression.
The other curious thing - modern movies that are shot on film / have grain actually get it removed during VFX stages. You have to do it so you can integrate CGI - grain is usually “sampled” first by the compositing software (The Foundry’s Nuke in 99% of occasions) and removed since the CGI image won’t have any grain from the CG renderer so you have to integrate it onto a denoised image. You then re add it at the end!
Using the same software you then re-add the sampled noise back onto the image, and since you’ve now integrated the CGI, the noise goes on top of everything helping it all get integrated.
Just saying this because you are right - using noise reduction to remove film grain for release is considered a sin (I myself would agree with the sentiment). Yet actually most films today will go through some denoise stage in VFX. Which is an interesting thing to think about - we actually remove the grain for a lot of the work then re add to keep the filmic texture.