When setting up my Mastodon instance, I jumped directly to storing all media in object storage (Backblaze B2, in my case), because I didn't want to allocate / estimate local storage requirements.
This is a companion discussion topic for the original entry at https://geek-cookbook.funkypenguin.co.nz/blog/2023/02/09/run-mastodon-and-media-behind-cdn/