It does change due to deletes. Otherwise, it would be obscenely expensive to never delete data. Garbage collection is hard but since it’s async it’s also possible to do efficiently while on SMR.
If the deletion is meant as a security feature, then you can "delete" a file by making it encrypted and deleting it's decryption key.
If a cloud storage provider doesn't charge for infinite version, that's not very different from offering "unlimited storage" plans: They have pretty good statistics of how much the average user really uses on an "unlimited" plan and will price their services accordingly. Revision history just adds another term to the same equation.
In the early days at one such provider I know that garbage collecting deleted user files was considered a relatively low priority cost-wise.