Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a dynamic environment setup on AWS where hundreds, if not thousands, of machines are started and terminated everyday. This includes a number of services like EC2 (both spot and on-demand instances), S3, SES etc. Most of these machines/services are part of the production environment but from time to time we use many machines/services for development work.

Now I want to get the AWS cost separately for production setup and for development setup. What is the best way to do this? Maybe use different keys to start instances in different environments or use some AWS feature?

share|improve this question
up vote 1 down vote accepted

You have couple of options:

The first is to use different accounts. It makes sense if you have a small number of environments (~10-20). It will allows you not just to have different bills, but also to protect the resources of the different accounts (less errors).

The second options is to use the recently added feature of Tags. You can add tags to various EC2 resources when you launch them (and also while they are running), and then use this Tags to analyze your environments and billings. See more information here:

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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