Cloud Provider Request: Notification of Exceeded Cost Threshold

I wonder if one of the things that keeps some developers from constantly playing with shiny cloud technologies is a nagging concern that they’ll accidentally ring up a life-altering usage bill.  We’ve probably all heard horror stories of someone who accidentally left an Azure web application running for a long time or kept an Amazon AWS EC2 image online for a month and were shocked by the eventual charges.  What do I want? I want a way to define a cost threshold for my cloud usage and have the provider email me as soon as I reach that value.

Ideally, I’d love a way to set up a complex condition based on various sub-services or types of charges.  For instance, If bandwidth exceeds X, or Azure AppFabric exceeds Y, then send me an SMS message.  But I’m easy, I’d be thrilled if Microsoft emailed me the minute I spent more than $20 on anything related to Azure.  Can this be that hard?  I would think that cloud providers are constantly accruing my usage (bandwidth, compute cycles, storage) and could use an event driven architecture to send off events for computation at regular intervals. 

If I’m being greedy, I want this for ANY variable-usage bill in my life.  If you got an email during the summer from your electric company that said “Hey Frosty, you might want to turn off the air conditioner since it’s ten days into the billing cycle and you’ve already rung up a bill equal to last month’s total”, wouldn’t you alter your behavior? Why are most providers stuck in a classic BI model (find out things whenever reports are run) vs. a more event-driven model? Surprise bills should be a thing of the past.

Are you familiar with any providers who let you set charge limits or proactively send notifications?  Let’s make this happen, please.


Author: Richard Seroter

Richard Seroter is Director of Outbound Product Management at Google Cloud, with a master’s degree in Engineering from the University of Colorado. He’s also an instructor at Pluralsight, a frequent public speaker, the author of multiple books on software design and development, plus former editor and former 12-time Microsoft MVP for cloud. As Director of Outbound Product Management at Google Cloud, Richard leads a team focused on products that help teams build and run modern software. Richard maintains a regularly updated blog on topics of architecture and solution design and can be found on Twitter as @rseroter.

10 thoughts

  1. Totally agree.I think a good way would have been to be able to have a server in “Developer mode”, whrere everything would be gone after 2-3 hours.

  2. In addtiona to a defined usage theshold, you could have a “past usage characteristics” alert. Eg: “in the past 12 months Richard has been averaging about $100/month, but in the past two days he’s racked up $200, let’s alert him”

  3. Yes, Brian, that’d be part of the intelligent processing that I’d love to see. Take into account historical usage, raise the threshold if I sign up for more services with the provider, etc.

  4. But big bills are meat and potatoes to businesses.
    Together with this form of warning, you also need a marketing campaign (expensive) to tell people what you’re doing and attract more users to your service and so alleviate the reduction in revenue.
    And incidentally, my bank does this (emails when account balance gets low), my cell provider does (emails when usage goes over plan, suggesting an upgrade), my water co and electic company compares my usage with past years (bit late to change my immediate behavior, though) so this is coming. Just keep asking…

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.