1.A Tagging Schema That Holds
A tag is a key-value label on an AWS resource. A tagging schema is the small, fixed set of keys every resource must carry, with the exact spelling and the allowed values written down. The schema is what makes tags useful — six keys applied everywhere beat forty keys applied inconsistently, because only the first can be queried.
Key features
- Tag keys and tag values are both case sensitive, so `Environment` and `environment` are two different keys and split every report in half
- AWS warns not to store personally identifiable information or other confidential data in tags, because tags are used for billing and administration services
- Tag policies in AWS Organizations standardise tags across accounts, including the preferred case treatment of keys and values
- A tag policy can enforce noncompliant tagging operations on specified resource types, preventing them from completing
- Untagged resources, and tags not defined in the tag policy, are not evaluated for compliance — a policy is not a coverage guarantee
- IAM adds validation preventing tag keys on IAM resources that differ only in casing, and AWS recommends avoiding such keys generally
Six keys, their allowed values, and what breaks without them
- A table-style diagram of six required tag keys, each paired with the question it answers and an example value.
- Application: which product is this part of? Example, orders-api.
- Environment: can I safely change it? Example, prod.
- Owner: who do I page or ask? Example, team-payments.
- CostCenter: who pays for it? Example, cc-4417.
- DataClassification: what happens if this leaks? Example, confidential.
- ManagedBy: will a manual change be reverted? Example, terraform.
- A note below: keys and values are case sensitive, so Environment and environment are two different keys and split every report.
- A second note: never put personal or confidential data in a tag.
Signature
Application · Environment · Owner · CostCenter · DataClassification · ManagedBy
Six keys — Application, Environment, Owner, CostCenter, DataClassification, ManagedBy — each answering a real question, with fixed values and one casing. Keys and values are case sensitive, teams own resources rather than individuals, and nothing personal or confidential goes in a tag.