Azure FinOps Essentials

The FinOps Anti-Playbook

Hi there,

FinOps advice is everywhere. You’re supposed to tag everything, track everything, forecast better, and set alerts for every possible threshold. But let’s be honest — most teams don’t fail because they ignored best practices. They fail because they fell into familiar, well-intentioned traps.

That’s why this edition takes a different route.

Instead of repeating the same advice, I’m sharing the anti-patterns I’ve seen most often in real-world Azure environments. These aren’t theoretical mistakes. They’re the habits that slowly turn your cloud bill into a mystery no one wants to solve.

The goal is simple.

Recognize what’s holding your cost visibility back.

Fix what’s in your control.

And avoid repeating what many teams silently regret.

Let’s get into it.

Michiel

What not to do when managing cloud costs

There’s no shortage of FinOps best practices. Tag everything. Set budgets. Review usage weekly. Shift left. Show back. Right size.

And yet, many teams still struggle to get a grip on cloud cost. Not because they don’t know what to do. But because they’re too busy doing everything else.

So this edition flips the script.

Instead of walking through best practices, I’m sharing this unofficial FinOps Anti-Playbook. The habits, shortcuts, and decision patterns that silently inflate your Azure bill while everyone’s looking the other way.

If any of these sound familiar, you’re not alone. The goal isn’t to shame. It’s to surface the real blockers so we can replace them with better habits.

Let’s start with the most common lie teams tell themselves.

“We’ll optimize it later.”

Anti-Pattern #1

“Just lift and shift. We’ll optimize later.”

This is how every expensive cloud story starts.

The team is under pressure. Deadlines are tight. The migration has to happen. So the goal shifts from building the right architecture to getting it running. Cost is something Future You will worry about.

Only Future You is too busy handling support issues from that same rushed migration.

The application is stable, but inefficient. It runs on oversized VMs. It pulls in PaaS services with default SKUs. Autoscaling is disabled because it caused one incident three months ago. And nobody dares touch it.

What started as a temporary lift-and-shift becomes the long-term setup.

Optimizing “later” turns into never. And the bill grows month by month.

This doesn’t mean you can’t move fast. But if you don’t stop to question default configurations, or review architecture within the first few sprints post-migration, you’re not doing FinOps. You’re just funding technical debt with cloud spend.

Anti-Pattern #2

“Tag nothing. Trust tribal knowledge.”

It always starts the same. A dev spins up a resource group to test something. A PaaS service gets deployed. Nobody tags it. The environment lives on.

Weeks later, someone notices a cost spike.

The dashboard shows a vague service name in a random region. No tags. No notes. No one knows who owns it. The only documentation is someone’s vague memory of a project from Q2.

Now the team spends hours tracing back the deployment pipeline, sifting through audit logs, or just deleting the resource and hoping nothing breaks.

Tagging isn’t just about showback reports or policy compliance.

It’s a survival tool.

It tells you who owns what. Why it exists. Whether it’s safe to delete. It’s how you separate production from test, shared from dedicated, and long-term from temporary.

When you skip tagging, you’re not saving time.

You’re borrowing confusion.

Anti-Pattern #3

“Our alerts are working. They went to someone once.”

You’ve set up cost alerts in Azure.

There’s a budget threshold on the subscription. The alert fires. Emails are sent. The system works.

Until no one sees it.

Or it lands in an inbox labeled “monitoring@” that nobody checks.

Or it gets routed to an engineer who left six months ago.

Alerts without ownership are noise.

They don’t create awareness. They create fatigue. After the second unexplained spike, teams stop paying attention. Everyone assumes someone else will handle it.

And even when the alert is seen, it’s often missing the one thing that matters: context.

What changed? Who deployed? Is it normal? Should we care?

Good alerting isn’t just about sending a signal.

It’s about getting the right signal to the right person, in the right place, with just enough context to act.

Otherwise, your cost monitoring setup is just automated guilt with no impact.

Anti-Pattern #4

“Buy a 3-year reservation right before budget resets.”

The quarter is ending. The budget isn’t fully spent. Someone suggests locking in savings by committing to Reserved Instances. It’s fast, it looks smart, and it gives finance a clean win.

Until the service gets deprecated next year.

Or the workload moves regions.

Or the project never scales the way it was forecasted to.

Commitment-based discounts like Reserved Instances and Savings Plans can absolutely save money. But only when they’re backed by real usage data, workload stability, and cross-team alignment.

Buying reservations in a rush is like buying a 3-year gym membership on December 31st.

It feels productive. But it often ends up unused.

Smart FinOps isn’t about spending the budget.

It’s about knowing when not to.

Time to burn the anti-playbook

None of these anti-patterns happen out of malice.

They happen because teams are busy. Processes are unclear. And cost often feels like someone else’s problem — until it isn’t.

But here’s the thing.

You don’t need a perfect FinOps setup. You just need to stop doing a few things that silently sabotage your visibility and control.

Skip the rushed commitments.

Tag your stuff.

Route alerts where teams actually live.

Don’t wait for “later” to optimize.

Good FinOps starts when you stop making cloud cost someone else’s cleanup job.

It becomes part of how you build. How you review. How you learn.

Burn the anti-playbook.

Write your own rules.

And make cost a decision, not a surprise.

Interested in sponsoring yourself, then visit the sponsor page.

Thanks for reading this week’s edition. Share with your colleagues and make sure to subscribe to receive more weekly tips. See you next time!

Want more FinOps news, then have a look at FinOps Weekly by Victor Garcia

FinOps WeeklySave on Your Cloud Costs with 5 Minutes every Sunday

Reply

or to participate.