What are the best practices for avoiding unexpected costs in cloud environments?

For those who manage cloud environments, what best practices have you found most effective in avoiding unexpected costs? I’ve heard things like monitoring usage, optimizing storage, and scaling automation are crucial, but I’d love to hear any additional tips or tools you use to keep cloud costs predictable and manageable.