If you use any of the OCI compliant runtimes (docker, cri-o, moby etc.) be aware that there's an issue where btrfs subvolumes are not removed after a container is destroyed.
I wrote about this issue last year on my blog : https://nanibot.net/posts/docker-and-btrfs-enemies/
Relevant github...