First step: hire me.
Joking aside (or maybe not), there are some obvious things to do like: purchasing reserved instances, using scheduled instances or even spot instances.
And some that are not so obvious like right-sizing your instances (EC2 and RDS) or asking for discounted pricing when it comes to CloudFront.
First step is making sure you have the best configuration for your instance. RDS instances ship with default configuration which might be good enough for regular usage, but once you start processing bananas of data it is best to tweak a couple things.
You can find the config under RDS > Parameter Groups.
This website is a good starting point if you are running a PostgreSQL instance: https://pgtune.leopard.in.ua
Beware that some config changes will require a reboot.
Let the instance run with the new config for a couple of days and once you notice that your CPU and RAM usage has gone down, feel free to downsize the instance 1 step (e.g. from xlarge to large).
All you have to do is ask (if you transfer >= 10TB/month)…it is that simple:
Discounted Pricing – For customers who are willing to make certain minimum traffic commits (typically 10 TB/month or higher)https://aws.amazon.com/cloudfront/pricing/