I will always prefer to do with LifeCycle rules. with two main reason
- its free of cost if you are deleting standard data with no hold flag.
- deletion also is free NO CLASS A operation cost of 30 M Like your case
gsutil dont use batch delete as per my understanding causing too much money for deletion