Metrics Glossary
Cost Metrics
Monthly Cost
Definition: Projected cost for entire month based on current resource allocation.
Formula:
1Monthly Cost = Hourly Cost × 24 hours × 30 daysExample:
1Hourly Cost: $0.384
2Monthly Cost: $0.384 × 24 × 30 = $276.48Note: Uses 30 days as standard month (not actual calendar days).
Hourly Cost
Definition: Cost per hour for running resources.
Formula:
1Hourly Cost = (CPU Cost + Memory Cost + Storage Cost)Components:
CPU Cost:
1CPU Cost = CPU Cores Requested × Cost per Core per HourMemory Cost:
1Memory Cost = Memory GB Requested × Cost per GB per HourStorage Cost:
1Storage Cost = Storage GB × Storage Cost per GB per Month / 720 hoursExample:
1Pod requesting:
2- 2 CPU cores @ $0.04/core/hour = $0.08/hour
3- 4 GB memory @ $0.005/GB/hour = $0.02/hour
4- 50 GB storage @ $0.08/GB/month = $0.0056/hour
5
6Hourly Cost = $0.08 + $0.02 + $0.0056 = $0.1056/hour
7Monthly Cost = $0.1056 × 720 = $76.03/monthDaily Cost
Definition: Cost per 24-hour period.
Formula:
1Daily Cost = Hourly Cost × 24Example:
1Hourly Cost: $0.384
2Daily Cost: $0.384 × 24 = $9.22Allocated Cost
Definition: Cost based on resource requests (what's reserved).
Formula:
1CPU Allocated Cost = CPU Request × CPU Unit Cost ($/core/hour)
2Memory Allocated Cost = Memory Request × Memory Unit Cost ($/GB/hour)
3
4Allocated Cost = CPU Allocated Cost + Memory Allocated CostExample:
1Pod requests: 500m CPU (0.5 cores), 1Gi memory
2
3Pricing (from cloud provider or Kubeadapt-opencost deployment):
4- CPU unit cost: $0.024/core/hour
5- Memory unit cost: $0.006/GB/hour
6
7CPU allocated cost = 0.5 cores × $0.024/core/hour = $0.012/hour
8Memory allocated cost = 1 GB × $0.006/GB/hour = $0.006/hour
9
10Allocated cost = $0.012 + $0.006 = $0.018/hour
11Monthly: $0.018 × 720 = $12.96/monthActual Cost
Definition: Cost based on resource usage (what's actually used).
Formula:
1CPU Actual Cost = CPU Usage × CPU Unit Cost ($/core/hour)
2Memory Actual Cost = Memory Usage × Memory Unit Cost ($/GB/hour)
3
4Actual Cost = CPU Actual Cost + Memory Actual CostExample:
1Pod using: 200m CPU (0.2 cores), 600Mi memory (0.6 GB) - actual usage
2
3Pricing (same as above):
4- CPU unit cost: $0.024/core/hour
5- Memory unit cost: $0.006/GB/hour
6
7CPU actual cost = 0.2 cores × $0.024/core/hour = $0.0048/hour
8Memory actual cost = 0.6 GB × $0.006/GB/hour = $0.0036/hour
9
10Actual cost = $0.0048 + $0.0036 = $0.0084/hour
11Monthly: $0.0084 × 720 = $6.05/monthNote: For right-sizing recommendations, Kubeadapt uses percentile-based usage (P95 for CPU, P99 for memory) rather than instantaneous values to ensure reliable cost optimization.
Where used:
- Efficiency calculations
- Right-sizing recommendations
- Waste identification
Idle Cost
Definition: Cost of unused/wasted resources.
Formula:
1Idle Cost = Allocated Cost - Actual CostExample:
1Allocated: $0.018/hour (based on requests)
2Actual: $0.0084/hour (based on usage)
3Idle: $0.018 - $0.0084 = $0.0096/hour wasted
4
5Monthly waste: $0.0096 × 720 = $6.91/month
6Waste percentage: ($0.0096 / $0.018) × 100% = 53% wasteWhere used:
- Waste reports
- Over-provisioning detection
- Optimization opportunities
Resource Metrics
CPU Request
Definition: CPU cores reserved for a pod (guarantee from Kubernetes).
Unit: Millicores (m) or cores
Example:
1500m = 0.5 cores = 50% of 1 CPU core
21000m = 1 core = 1 full CPU core
32000m = 2 coresWhere used:
- Cost calculations (allocated)
- Scheduling decisions
- Resource quotas
CPU Usage
Definition: Actual CPU cores consumed by a pod.
Unit: Millicores (m) or cores
Measurement: Average over time period (typically 5-minute window)
For right-sizing: Kubeadapt analyzes historical usage patterns (30-day lookback) and uses P95 percentile for production workloads, P50 for non-production.
Example:
1Pod requests: 1000m (1 core)
2Pod using: 420m (42% of request)
3Utilization: 42%Where used:
- Efficiency calculations
- Right-sizing recommendations
- Performance monitoring
CPU Utilization
Definition: Percentage of requested CPU actually used.
Formula:
1CPU Utilization = (CPU Usage / CPU Request) × 100%Example:
1CPU Request: 1000m
2CPU Usage: 420m
3CPU Utilization: (420 / 1000) × 100% = 42%Where used:
- Right-sizing recommendations
- Performance analysis
- Efficiency scoring
Memory Request
Definition: Memory reserved for a pod (guarantee from Kubernetes).
Unit: Bytes (Ki, Mi, Gi)
Example:
1512Mi = 536,870,912 bytes = ~512 MB
21Gi = 1,073,741,824 bytes = ~1.07 GB
32Gi = 2,147,483,648 bytes = ~2.14 GBWhere used:
- Cost calculations
- Resource quotas
Memory Usage
Definition: Actual memory consumed by a pod.
Unit: Bytes (Ki, Mi, Gi)
Measurement: Working set memory (RSS + cache)
For right-sizing: Kubeadapt analyzes historical usage patterns (30-day lookback) and uses P99 percentile for production workloads (conservative to prevent OOM), P50 for non-production.
Example:
1Pod requests: 2Gi
2Pod using: 1.4Gi (working set)
3Utilization: 70%Where used:
- Efficiency calculations
- OOM risk detection
- Right-sizing
Memory Utilization
Definition: Percentage of requested memory actually used.
Formula:
1Memory Utilization = (Memory Usage / Memory Request) × 100%Example:
1Memory Request: 2Gi
2Memory Usage: 1.4Gi
3Memory Utilization: (1.4 / 2) × 100% = 70%Where used:
- Right-sizing recommendations
- OOM prevention
- Efficiency scoring
Storage Capacity
Definition: Total size of persistent volume claim.
Unit: Bytes (Gi, Ti)
Example:
1PVC size: 100GiWhere used:
- Storage cost calculations
- Capacity planning
Storage Usage
Definition: Actual disk space used in volume.
Unit: Bytes (Gi, Ti)
Measurement: Used bytes on filesystem
Example:
1PVC capacity: 100Gi
2Used: 42Gi
3Utilization: 42%Where used:
- Storage efficiency
- Growth trends
- Resize recommendations
Storage Utilization
Definition: Percentage of volume capacity used.
Formula:
1Storage Utilization = (Storage Used / Storage Capacity) × 100%Example:
1Capacity: 100Gi
2Used: 42Gi
3Utilization: 42%Interpretation:
- < 70%: Normal utilization
- 70-85%: Good utilization
-
85%: Consider expansion
Where used:
- Resize recommendations
- Waste detection
- Capacity alerts
Efficiency Metrics
Resource Efficiency
Definition: How well resources are utilized (not wasted).
Formula:
1Resource Efficiency = (Observed Usage / Allocated Requests) × 100%How Usage is Measured:
Kubeadapt uses percentile-based analysis to calculate observed usage:
- CPU Usage: Based on P95 percentile of actual consumption
- Memory Usage: Based on P99 percentile of actual consumption
- Time-weighted: Recent data carries more weight than older data (30-day lookback with recency bias)
The percentile approach varies by environment:
- Production workloads: P95 for CPU, P99 for memory (conservative)
- Non-production workloads: P50 for both CPU and memory (aggressive cost optimization)
For combined CPU + Memory:
1Overall Efficiency = (CPU Efficiency + Memory Efficiency) / 2Example:
1CPU: 420m usage (P95) / 1000m request = 42%
2Memory: 1.4Gi usage (P99) / 2Gi request = 70%
3Overall: (42% + 70%) / 2 = 56%Target Ranges:
- CPU: 60-75% efficiency (optimal balance between cost and performance)
- Memory: 70-85% efficiency (optimal balance between cost and OOM risk)
Where used:
- Optimization scoring
- Cluster efficiency
- Right-sizing recommendations
Bin-Packing Efficiency
Definition: How well pods fit on nodes (minimize fragmentation).
Formula:
1Bin-Packing Efficiency = (Used Resources / Allocatable Resources) × 100%Cluster-level:
1Cluster Bin-Packing = Σ(All Pod Requests) / Σ(All Node Capacity)Example:
1Cluster total allocatable: 100 cores, 400 GB
2Total pod requests: 68 cores, 288 GB
3CPU bin-packing: 68 / 100 = 68%
4Memory bin-packing: 288 / 400 = 72%
5Overall: (68% + 72%) / 2 = 70%Interpretation:
- < 60%: Poor utilization
- 60-75%: Good utilization
-
75%: Excellent utilization
Where used:
- Node optimization
- Cluster scaling decisions
- Instance type recommendations
Cost Efficiency
Definition: How much of allocated cost is actually used.
Formula:
1Cost Efficiency = (Actual Cost / Allocated Cost) × 100%Example:
1Allocated Cost: $0.018/hour (based on requests)
2Actual Cost: $0.0084/hour (based on usage)
3Cost Efficiency: (0.0084 / 0.018) × 100% = 47%
4
5Interpretation: 47% efficiency means 53% wasteWhere used:
- Savings calculations
- Waste reports
- Optimization ROI
Savings Metrics
Available Savings
Definition: Potential monthly cost reduction from optimization opportunities.
Formula:
1Available Savings = Σ (Optimization Opportunities)Categories:
- Over-provisioned workloads
- Orphaned resources
- Unused resources
- Storage inefficiencies
Example:
1Over-provisioned: $1,100/month
2Orphaned: $180/month
3Unused: $40/month
4Total Available Savings: $1,320/monthWhere used:
- Optimization dashboard
- ROI calculations
- Executive reporting
Savings Percentage
Definition: How much cost can be reduced as percentage of total.
Formula:
1Savings % = (Available Savings / Total Cost) × 100%Example:
1Available Savings: $1,320/month
2Total Cost: $7,240/month
3Savings %: (1,320 / 7,240) × 100% = 18.2%Where used:
- Optimization ROI
- Comparison metrics
- Executive dashboards
Implemented Savings
Definition: Actual savings achieved from implemented optimizations.
Formula:
1Implemented Savings = Baseline Cost - Optimized Cost
2Savings % = (Implemented Savings / Baseline Cost) × 100%Example:
1Baseline Cost: $7,240/month
2Optimized Cost: $6,380/month
3Implemented Savings: $7,240 - $6,380 = $860/month (11.9%)Where used:
- Tracking optimization progress
- ROI validation
- Success metrics
Allocation Metrics
Allocated %
Definition: Percentage of cluster resources allocated to specific dimension (team, namespace, etc.).
Formula:
1Allocated % = (Dimension Cost / Total Cluster Cost) × 100%Example:
1Team Cost: $3,240/month
2Total Cluster Cost: $7,240/month
3Allocated %: (3,240 / 7,240) × 100% = 44.8%Where used:
- Cost allocation
- Chargeback reports
- Team dashboards
Unallocated Cost
Definition: Cost of resources not attributed to any cost dimension.
Causes:
- Resources missing required labels
- System components (kube-system, monitoring)
- Shared infrastructure
Formula:
1Unallocated Cost = Total Cost - Σ(Allocated Costs)
2Unallocated % = (Unallocated Cost / Total Cost) × 100%Example:
1Total Cost: $7,240/month
2Allocated Costs: $6,890/month
3Unallocated: $7,240 - $6,890 = $350/month (4.8%)Where used:
- Cost allocation coverage
- Label compliance tracking
Node Metrics
Node Cost
Definition: Monthly cost of running a single node.
Formula:
1Node Cost = Instance Hourly Rate × 24 × 30Cost Breakdown:
For pod cost attribution, the bundled instance cost is split into separate CPU and memory components:
- GCP: Real CPU and memory unit costs from Cloud Billing API
- AWS/Azure: Calculated split using standard pricing ratios
Example:
1m5.2xlarge: $0.384/hour
2Node cost: $0.384 × 24 × 30 = $276.48/monthWhere used:
- Node-level cost tracking
- Instance type comparison
- Cluster cost breakdown
Node Utilization
Definition: Percentage of node capacity used by pods.
Formula:
1Node Utilization = Max(CPU Utilization, Memory Utilization)Example:
1Node: 8 cores, 32 GB
2Pod requests: 5.4 cores, 22.1 GB
3
4CPU utilization: 5.4 / 8 = 67.5%
5Memory utilization: 22.1 / 32 = 69%
6
7Node utilization: Max(67.5%, 69%) = 69%Note: Uses max because Kubernetes schedules based on whichever resource is most constrained.
Where used:
- Node efficiency
- Scaling decisions
- Underutilization detection
Pod Density
Definition: Number of pods per node.
Formula:
1Pod Density = Pods Running / Node CapacityExample:
1Node capacity: 58 pods max
2Pods running: 24
3Pod density: 24 / 58 = 41%Where used:
- Bin-packing analysis
- Node sizing decisions
Workload Metrics
Workload Cost
Definition: Total cost of all pods in a workload (Deployment, StatefulSet, etc.).
Formula:
1Workload Cost = Pod Cost × Number of ReplicasExample:
1Pod Cost: $48/month
2Replicas: 4
3Workload Cost: $48 × 4 = $192/monthWhere used:
- Workload-level cost tracking
- Scaling cost impact
- Team cost allocation
Cost per Replica
Definition: Average cost of a single pod/replica.
Formula:
1Cost per Replica = Workload Cost / Number of ReplicasExample:
1Workload cost: $192/month
2Replicas: 4
3Cost per replica: $192 / 4 = $48/monthWhere used:
- Scaling decisions
- HPA cost impact
- Cost estimation
Forecast Metrics
Projected Monthly Cost
Definition: Estimated end-of-month cost based on current daily rate.
Formula:
1Projected Monthly = (Actual Spend / Days Elapsed) × Days in MonthExample:
1Nov 15 (15 days elapsed):
2Actual spend: $3,630
3Projected monthly: ($3,630 / 15) × 30 = $7,260Where used:
- Budget tracking
- Month-end projections
- Variance alerts
Run Rate
Definition: Annualized cost based on current monthly spend.
Formula:
1Annual Run Rate = Current Monthly Cost × 12Example:
1November projected: $7,260
2Annual run rate: $7,260 × 12 = $87,120/yearWhere used:
- Annual budget planning
- Executive reporting
- Multi-year forecasting
Overhead
Definition: Infrastructure costs not directly attributable to workloads.
Components:
- Control plane: EKS/GKE/AKS management fees (cloud-managed clusters only)
- System processes: Kubelet, kube-proxy, system daemons (all clusters)
- Idle node capacity: Unused CPU/memory after pod requests (scheduling waste)
Example:
1Total cluster: $7,240/month
2Workload costs: $6,890/month
3Overhead: $350/month (4.8%)Where used:
- True cost accounting
- Workload cost allocation
- Infrastructure efficiency
Calculation Notes
Time Periods
Standard periods:
- Hourly: Near real-time tracking
- Daily: 24 hours
- Monthly: 30 days (720 hours)
- Annual: 365 days
Note: Kubeadapt uses 30-day months (720 hours) for consistency.
Rounding
Display precision:
- Costs: 2 decimal places ($276.48)
- Percentages: 1 decimal place (45.7%)
- Calculations: Full precision internally
- Cost Attribution - How costs are attributed
- Resource Efficiency - How efficiency is measured
- Right-sizing - How recommendations are generated