Skip to main content

Prerequisites:

  • You have an AWS EKS or ECS cluster running.
  • You have an AWS provider connected to Costory with your CUR data ingested.
  • You have labels / tags applied (or plan to apply them) to your pod deployments.

Output:

  • Granular cost visibility at the Kubernetes label level (team, app, environment, etc.) without any third-party agent.
  • Ability to track waste ratio per node pool and identify over-provisioned clusters.
  • Foundation for cost allocation and chargeback across teams.

Steps:

1

Step 1: Enable AWS Split Cost Allocation for EKS / ECS

Since November 2025, AWS supports cost allocation tags at the pod label level for EKS and ECS clusters. This means you can get container-level cost visibility without installing any additional tooling.Enable split cost allocation data in your AWS account:
  1. Go to the AWS Cost and Usage Report settings.
  2. Follow the official AWS guide to enable split cost allocation data for containers.
  3. Make sure you activate the relevant cost allocation tags in the Billing console.
2

Step 2: Add labels to your pod deployments

To get meaningful cost breakdowns, ensure your Kubernetes workloads carry labels that reflect ownership and purpose. For example:
metadata:
  labels:
    app: my-service
    team: platform
    env: production
Common label strategies:
  • team: Which team owns the workload.
  • app / service: The application or microservice name.
3

Step 3: Wait for data to flow in

After enabling split cost allocation and labeling your workloads, wait 2-3 days for the data to appear in your Cost and Usage Report.
4

Step 4: without Costory:

5

Step 4: With Costory: Normalize your Kubernetes labels in Costory

Your labels might not have the same name across clusters or across services running inside and outside of EKS. Use Costory’s feature engineering to align them:Feature EngineeringThis allows you to:
  • Merge columns from multiple sources into a single label: for example k8s_label_env with env and environment.
  • Rename values to standardize naming across providers: stgstaging, prodproduction.
6

Step 5: Explore your data in Costory:

  • Use the explorer to visualize your Kubernetes waste ratio per node pool: EKS Waste Ratio See specific use case about k8S waste here
  • Calculate a total cost of ownership per team: Total Cost of Ownership
  • Identify faulty deployments over requesting cpus: Faulty Deployments
  • Set up a weekly Slack report to share with your team: Slack Report
  • Add your K8S labels to the digest tree to get a slack report of your cost changes: Digest Tree
Last modified on February 17, 2026