Windows Azure billing formally starts today, which means that all US CTP accounts become read-only, and you'll need to convert to commercial accounts.  You can find instructions to do so here: http://blogs.msdn.com/windowsazure/archive/2010/01/04/sign-up-for-a-windows-azure-platform-offer-today-and-get-visibility-into-your-usage.aspx 

Once you've converted to a Commercial account, you'll have the distinct pleasure of actually paying for your usage (if you go over your free allocation for the Intro, Accelerator, or MSDN offers)... which is really neither distinct nor a pleasure, as we all know.  And given how new the pay-as-you-go model of computing is new to many of us, it's important to understand how you're being billed and how to minimize those costs.

Here's some guidance that may help:

  • Consumption billing is done in one hour chunks.  I like to use the analogy of booking a hotel room for a day (yes, some charge hourly... but let's not go there...).  Even if you only use it for part of that time, you still get charged for the whole time period.  Period.
  • You get charged for anything that is deployed to Windows Azure... it doesn't matter if it's running, suspended, or in staging.  Again, think of it as a hotel room - it doesn't matter how you use the room, the hotel still has to reserve the resources for you, whether you're sleeping there, doing work, or somewhere out on the town.


Some guidance on how to keep your costs down:

  • Develop and test locally - the local dev fabric and storage that comes with the SDK works very well, and is really your only option for debugging anyway. 
  • Only deploy to Windows Azure when you are ready - You wouldn't book and pre-pay for a hotel room if you weren't sure you were going to use it.  Think of Windows Azure the same way.
  • Avoid deploying, deleting, and redeploying iteratively - every new deployment locks you in to a full hour of cost for every instance deployed, whether you use it or not.
  • Remember to delete your application when not in use... this hotel doesn't check you out automatically, and if you just leave your room, you'll be still be charged every day.
  • Use only the number of instances you need - yes, it's fun to spin up 20 instances just to see what they can do (come on, admit it.. it's fun)... but it can also be expensive.  Make sure you have a good reason for your instance count.
  • Actively manage your account on the MOCP Portal - this is absolutely critical, particularly if you're using the Intro or Dev Accelerator accounts, as you'll want to know if you're getting close to the end of your free usage.  To do this:
    • Log into the MOCP Portal using your Microsoft alias (https://mocp.microsoftonline.com/)
    • Click on “view my bills” (it’s on the right side of the screen)
    • Click “view online bill\invoice”
    • Click “Daily usage” under your account detail  (note – there is a 12 hour delay in updates to the report)

Consumption/pay-as-you-go billing will be a great way to manage costs and deliver a positive ROI - and the better you manage your resource usage, the faster the ROI will be realized.  You'll want to avoid simple mistakes that could add up to unexpected charges at the end of the month, and the best way to do that is through active and diligent management.

-Dan

 ps.  Eric Nelson has some nice visuals of this guidance on his blog - definitely check it out:

http://geekswithblogs.net/iupdateable/archive/2010/01/20/qanda-how-do-you-avoid-being-charged-unnecessarily-for-windows.aspx

http://geekswithblogs.net/iupdateable/archive/2010/01/19/qanda-when-do-i-get-charged-for-compute-hours-on.aspx