It was 2016. I was sitting in front of my monitor, staring at an estimated AWS bill: 300 dollars a month for my side project. $300! For an app used by maybe a handful of people. That was the moment I got it: either I give up on the dream of my own startup, or I find a way to tame cloud costs.

Today, after years of fighting with AWS cost optimization, I know one thing for sure: AWS Cost Explorer is only the beginning of your journey, not the end of it.

Painful beginnings with AWS

I came from the Java Enterprise Edition (JEE) world. When I decided to jump into the cloud in 2016 (at first I even gave Azure a shot!), I thought like a typical developer: "I need a server, a database, a load balancer... The standard enterprise setup."

The result? A staggering $300 a month for infrastructure that handled about as much traffic as a small blog.

That's when I discovered serverless on AWS. Lambda, DynamoDB, API Gateway. These technologies solved my cost problem. They also taught me to think "frugally" (as Dr. Werner Vogels put it many years later at re:Invent 2023).

In the cloud context, being frugal means choosing components with their cost in mind, not just their technical merits.

From $300 a month I went down to practically zero. The app ran for free within the Free Tier.

Cost Explorer: friend or foe?

After a few years with AWS, I started helping clients optimize their costs. And that's where the real headache began.

AWS Cost Explorer is a tool that seems powerful. Colorful charts, filtering by service, region, tag. At first glance it looks impressive.

The problem? Every question about the details ends in frustration.

Try answering these seemingly simple questions with Cost Explorer:

  • Why did this month cost more than the last one?
  • What exactly is driving the cost increase in EC2-Other?
  • And what does the usage type "EU-EBS:VolumeUsage.gp3" even mean?

Cost Explorer will show you a chart. It might even tell you that EC2 costs more. But it won't explain why, and it won't tell you how to fix it.

Working intensively on costs, I built my own techniques and checklists of what to check. Unfortunately, Cost Explorer forces (well, forced) me to keep clicking through the same chart configurations over and over again. A huge waste of time. I hate that, and I always try to automate everything. On top of that, when you're just starting out, the sheer number of options is overwhelming, and useful default charts for beginners are nowhere to be found.

The usage types puzzle: 10,000 ways to pay

As I kept digging into costs, at some point Usage Types became my obsession.

That's why today, when I want to check whether someone knows anything about costs yet, my opening question is: do you know what EC2 - Other is?

AWS has an estimated 10,000 different usage types. Ten thousand! From simple ones like S3 storage, through complicated ones like data transfer between regions, all the way to completely incomprehensible combinations that aren't worth dissecting here.

Example? S3 alone has dozens, maybe even hundreds of usage types:

  • TimedStorage-Standard: storing data
  • Requests-Tier1: every GET request
  • Requests-Tier2: PUT/POST requests
  • DataTransfer-Out-Bytes: outbound data transfer

And the AWS documentation? Some usage types aren't described anywhere. I even tried to find out what they mean through AWS Support. No luck.

It's like solving a crossword where half the clues have been hidden.

The turning point: the birth of CloudPouch

In 2021 I'd had enough. I was working with a client who paid serious money for AWS, and Cost Explorer couldn't answer my basic optimization questions.

So I thought: "If AWS won't give me the tools I need, I'll build them myself."

My starting point was simple:

  1. See the costs: better than Cost Explorer
  2. Understand them: explain all the usage types
  3. Optimize: find concrete savings

That's how I came up with the tagline for my app: "See. Understand. Reduce AWS costs." After all these years it still holds up, and it shows the path for anyone who wants to become a cloud cost specialist.

CloudPouch was born as a desktop app that:

  • Connects directly to your AWS account through the API
  • Keeps all the data on your computer, so zero security risk
  • Explains Usage Types in plain language
  • Automatically detects 15 different types of waste (for details, take a look here)
  • Is built with Electron, so it runs on Windows, macOS, and Linux

When data tells a story

One of my favorite CloudPouch features is historical analysis. I can look at a client's costs and tell them what they've been up to over the past few months.

CloudPouch Compare Report

The cost detective

A real-life example: a client had a huge cost drop, $50,000 between September and October. In Cost Explorer, all they'd see is a line going down.

CloudPouch showed the details:

  • "NAT Gateway Bytes" down by $18,000 in Ireland
  • "Data Transfer Regional" down by another few thousand
  • Similar patterns in other regions

My diagnosis? The client had rolled out VPC Endpoints for S3 and DynamoDB. Data stopped going through the expensive NAT Gateways and started flowing straight to AWS services.

When I called the client with this "prediction", they were in shock. The answer I got: "How do you know? That's exactly what we did!"

This story repeats itself quite often, by the way. My clients are surprised that without talking to them, without access to any project documentation, from the costs alone, I can work out what changes they've rolled out over the last 12 months.

Real results: from 13% to 62% savings

After three years of building CloudPouch and working with dozens of clients, I can say one thing: AWS cost optimization is not a myth.

My stats:

  • Smallest saving: 13% of monthly costs
  • Biggest saving: 62% of monthly costs. Here even I was surprised, because my initial estimates pointed to "only" 41%
  • On average it's 18% to 26% savings per AWS account
  • Account range: from $3,000 to 1.5 million USD a month, those are the accounts I've worked on
  • Typical cases of waste:
    • EBS volumes attached to stopped instances
    • Unused NAT Gateways (no traffic for 14 days)
    • RDS with no connections for over 2 weeks
    • EC2 rightsizing
    • Misconfigured DynamoDB (provisioned vs on-demand)
    • Databases or EKS running in Extended Support mode
    • and many more.

One example: a client was paying $262 a month for a NAT Gateway that carried... 2KB of data over two weeks. Two kilobytes!

The future: FinOps as the new standard

Building CloudPouch isn't just about solving my own problem. It's about getting ready for a future where cost awareness becomes a non-functional requirement, just like security is today.

The FinOps Foundation (finops.org) is building the only comprehensive framework for managing cloud costs. These aren't theoretical abstractions, but practical best practices drawn from the experience of the biggest companies.

For developers, architects, and cloud engineers this means one thing: soon every technical decision will have to take cost into account.

More than just savings

CloudPouch taught me that cost optimization isn't just math. It's a detective story, where every usage type tells a piece of your infrastructure's story, and I put on my hat and grab my magnifying glass.

Cost detective

And finally, a small note on sustainability: every dollar saved on AWS means less energy burned. When you switch off servers nobody needs, you save money and help the planet 🌍 at the same time. It may not be the main business motivation, but it does give me personal satisfaction.

Similarly, I like to imagine that with large annual savings (sometimes even millions of USD), thanks to my work companies don't have to lay people off, because they cut cloud costs instead of cutting jobs. And that makes someone's life a little better 😀.

What was your most unexpected saving on AWS? Share it in the comments. Maybe your experience will help others avoid costly mistakes.

CloudPouch offers a 7-day trial, no credit card required. Download it from cloudpouch.dev and **see for yourself* how much you can really save.*