How do you people think about the Windows Azure pricing model and the way it is presented to the user? I just found out that Azure keeps charging hours for STOPPED instances. I just received a bill from more than 100 euro for 3 STOPPED instances (not) running "HelloAzure".

I the past I also played around with Amazon Web Services. Amazon doesn't charge for stopped instances. I was wondering: "Should I have known this before, or is Microsoft doing a bad job in clear communication in the pricing model?"

Quote from http://www.microsoft.com/windowsazure/pricing/ :

Compute time, measured in service hours: Windows Azure compute hours are charged only for when your application is deployed. When developing and testing your application, developers will want to remove the compute instances that are not being used to minimize compute hour billing. Partial compute hours are billed as full hours.

I read this, so I stopped all instances after a few hours playing around. Now it seems I should have deleted them, not just "stopped".

Strictly speaking, all depends on the definition of the word "deployed". If you upload an application, but it is not running, can it still be regarded as being "deployed"? May be, but when you read this for the first time, with AWS experience in mind, I don't think it's 100% clear what this means.

Technically speaking, an uploaded application only uses (read: should only use / needs only) a few MB harddrive space. It doesn't require any CPU time. If Azure wants to reserve CPU's for not running instances.. well, that's Azure's choice, not mine.

I don't want to spread a hate campaign at all, but I do want to know how people think about this subject. Should Microsoft be more clear about their pricing model or do you think it's clear enough? Second question: did anyone got refunded for a similar case?

Thanks in advance!

UPDATE 27-01-2011

I sent an email to customer support a few days ago, but I guess that didn't reach anu human being because I didn't hear anything from it. So, I made a telephone call today with a Dutch customer support representative (I live in Holland). She totally understood the problem and she's trying to get a refund for me. However, she mentioned that "usually these refund requests are denied", but she's going to try. She also mentioned that I'm not the first one with this (or similar) problem.

UPDATE 28-01-2011 I just received a phonecall from Microsoft support. The lady told me some good news: the money will refunded. However, the invoice has not been made yet, and my creditcard will first be chardged, after which it will be refunded, but hey, that's no problem for me! I'm glad the way it's solved!

closed as off topic by sysadmin1138 Jan 9 '12 at 21:39

Questions on Server Fault are expected to relate to server, networking, or related infrastructure administration within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here. If this question can be reworded to fit the rules in the help center, please edit the question.

migrated from stackoverflow.com Jan 24 '11 at 21:05

This question came from our site for professional and enthusiast programmers.


I work on the Windows Azure team. I do think this is confusing (and please do contact support... with an honest mistake like this, I suspect they'll refund your money). We did add a warning in the portal, so you should have seen something telling you that stopped instances are still billed.

I'd like to see the "stopped" state go away altogether. What "stopped" means is that the VM is allocated and still has all your bits on it (including log files, etc.), but the code is not running (and the load balancer is not routing traffic). That's occasionally useful (like when you want to shut down a website due to some error but still be able to connect to the VM and check out the logs, or when you want to be able to restart the app quickly), but I don't think it's useful enough to justify the confusion about what "stopped" means.

Sorry about the confusion.

  • Thanks for a really useful response. It is indeed very unclear about what precisely "stopped" means. This clears it up nicely. – Paul McMillan Jan 24 '11 at 19:53
  • Thank you smarx, I really appreciate this comment. I saw the warning, today, a bit late. It's easy to overlook the warning because in my mind the message just said: "warning, their are stopped instances" so I didn't really pay attention to it. The internet is a fast medium and you need to be fast to be productive. This requires that interfaces are intuitive and that I can trust on this. A big red "stopped" sign is not communicating: "you are using expensive resources". But I guess I don't have to persuade you :) Keep up the good work, I let you know whether I succeeded with customer support. – Dirk Jan 24 '11 at 22:10
  • We discovered the issue with billed stopped services right now and I see you added new warning to the management portal but it is very unclear that we are in fact being billed for the stopped services. – Jozef Izso Jan 11 '12 at 13:22

While I don't think this belongs on SO, it appears very clear to me with this line developers will want to **remove** the compute instances that are not being used to minimize compute hour billing

No where in there does it say stopping/starting. Also deployed does not mean running. You can deploy software and not run it.

I also want to add that the reason they may want to dedicate CPU's to your deployed application is to provide more predictability in your processing. Imagine if it did NOT take a CPU for your deployment but rather clustered a 'lot' of cpu's across many deployments. Your deployment is idle, then a sudden influx of computations occur. This will require the CPU's to take away processing power from other deployments to satisfy your computations.

Imagine buying a dedicate server to host a website, but you don't have the domain name setup nor do you have any files on the server. You are still going to pay for that server even if someone cannot access it.

If you were just testing Azure and doing integration tests, they SHOULD have a feature that says, "Deploy my application for 24 hours then delete it". That way you never have to worry about leaving something deployed on accident.

  • If you switch an instance from a "running" state to a "stopped" state, it is still an instance, but not a "compute instance" anymore, is it? – Dirk Jan 24 '11 at 18:48
  • @Dirk in the paragraph you presented I see no mention of "running" or "stopped". Should they have to dedicate a CPU then remove it every time you start and stop the instance? I imagine in their mind you are buying potential processing. I bet when Azure is more mature they will charge by using CPU metrics to determine how much "processing power" you used. – Andrew T Finnell Jan 24 '11 at 18:54
  • "Should they have to dedicate a CPU then remove it every time you start and stop the instance?" Yes, that's what they should do. Why would you reserve a CPU for something that doesn't compute anything? The moment I start an instance should be the time that a CPU is reserved. If the running application doesn's serve any request, but is in RUNNING state, then they can charge me, that's fair because it technically needed because I want to serve a potential request ASAP. – Dirk Jan 24 '11 at 18:55
  • @Dirk I am positive this question will be locked soon. The irony here is that you were charged for 3 test deployments "HelloAzure" and Microsoft specifically mentioned removing Test deployments to not get charged. – Andrew T Finnell Jan 24 '11 at 18:58
  • It's certainly ironic. I'll contact the customer support. – Dirk Jan 24 '11 at 19:10

As others have said, definitely politely contact Azure billing. I had a very positive experience with a similar query - with a different "hello world" issue - they were happy to refund me once.

The Azure portal does now warn you that instances will be billed as long as they are allocated - but it's possible to miss this no matter how big they make that warning.


You really need to call them to sort out your billing problem. Since this wasn't clear to you, it's probably not clear to others as well.

Call the billing department and talk to them. I imagine they're likely to refund the first month in these cases.

Failing that, dispute the charge with your credit card company.

  • I'll try to talk to customer support and try to persuade them to update the pricing page. If this topic isn't closed, I'll post updates. – Dirk Jan 24 '11 at 19:11

Not the answer you're looking for? Browse other questions tagged or ask your own question.