OpenCost just shipped version v1.120.4, and it is bringing presents. New cloud providers, smarter pricing logic, and a streaming data pipeline upgrade that makes cost monitoring feel less like a chore and more like a superpower.
But first, a quick refresher. OpenCost is an open-source project that tracks cloud spending inside Kubernetes clusters. It tells you exactly how much each workload, namespace, and label costs, down to the cent. If you have ever stared at a cloud bill and wondered “who ordered all these GPUs?”, OpenCost is the tool that answers that question.
Think of it like having a really obsessive accountant living inside your cluster. This accountant reads every pricing sheet, checks every workload label, and files a report that says “your test environment is burning $400 a month and nobody has touched it in three weeks.” The v1.120.4 release gives that accountant some new tools, and they are worth talking about.
What Is New
STACKIT Joins the Cloud Provider Roster
STACKIT is now a first-class cloud provider in OpenCost. If you have not heard of STACKIT, they are the cloud platform from Schwarz Group, the European retail giant behind Lidl and Kaufland. They have been aggressively building out their cloud offering, targeting European enterprises that need GDPR-compliant infrastructure with predictable pricing.
Why does this matter? Because OpenCost can now track costs on three European-focused clouds alongside AWS, Azure, and GCP. If your organization runs multi-cloud workloads with European data residency requirements, you no longer have to build custom cost tracking for your STACKIT infrastructure. OpenCost handles it natively.
# STACKIT is now auto-detected when OpenCost runs on STACKIT VMs
# No additional configuration needed beyond standard node labels
apiVersion: v1
kind: Node
metadata:
labels:
node.kubernetes.io/instance-type:STACKIT
topology.kubernetes.io/region: eu01
This was contributed by @xtavras in PR #3741, their first contribution to the project.
GKE Workload Identity Federation for Pricing Data
OpenCost fetches pricing data from cloud provider APIs to calculate accurate costs. On GKE, this historically required static service account keys, which are a security headache. They expire, they get committed to git repositories by accident, and they violate basically every compliance framework’s key management guidelines.
Workload Identity Federation fixes this. Instead of a static key file sitting on disk, OpenCost can now use short-lived, automatically-rotated credentials tied to the pod’s service account. No keys to manage, no secrets to rotate, no 2 AM pages because the pricing fetcher broke when a key expired.
# Enable Workload Identity Federation for OpenCost pricing fetches
# This replaces the need for GOOGLE_APPLICATION_CREDENTIALS
apiVersion: apps/v1
kind: Deployment
metadata:
name: opencost
spec:
template:
spec:
serviceAccountName: opencost-pricing-reader
# GKE Workload Identity annotation
# No key file needed!
Contributed by @ioboi in PR #3853. If you are running OpenCost on GKE, this is the kind of upgrade that makes your security team visibly happier.
Azure Pricing Gets OS-Aware for Windows Nodes
Here is a fun fact about Azure pricing: Windows VMs cost more than Linux VMs. Not because Microsoft is greedy (well, not entirely), but because Windows carries licensing fees that Linux does not. Azure’s pricing API reflects this difference.
But OpenCost was not always paying attention to that distinction. If you ran Windows nodes, your cost reports might show Linux pricing, making your Windows workloads look artificially cheap. That is not the kind of rounding error you want to discover during a budget review.
This release makes Azure on-demand pricing OS-aware. OpenCost now correctly identifies Windows nodes and applies the right pricing tier. Your cost reports will finally reflect reality, and your FinOps team can stop manually adjusting the numbers.
Fixed by @V-3604 in PR #3820.
Bingen Streaming Writer Support
Bingen is OpenCost’s internal data pipeline tool for writing cost metrics. This release adds Streaming Writer Support (v0.1.1), which means the pipeline can now handle data in a streaming fashion rather than batch-only.
In practice, this means faster metric ingestion and lower memory pressure when processing large volumes of cost data. If you are running OpenCost across many clusters with thousands of workloads, the streaming writer keeps the metrics pipeline from becoming a bottleneck.
Contributed by @mbolt35 in PR #3836.
get_efficiency Tool Gets a Step Parameter
The get_efficiency tool, which calculates resource efficiency scores for your workloads, now accepts a step parameter. This lets you control the granularity of efficiency calculations, so you can get coarse monthly overviews or fine-grained hourly breakdowns without changing your query.
# The step parameter controls time granularity in efficiency queries
# Example: hourly efficiency steps for detailed analysis
{
"tool": "get_efficiency",
"step": "1h"
}
Contributed by @nikita-phantom-ops in PR #3869, also a first-time contributor.
BigQuery Configuration Gets queryProjectID
If you are using BigQuery as your metrics warehouse with OpenCost, you can now specify a separate queryProjectID in your BigQueryConfiguration. This matters when your BigQuery billing project differs from the project where your data actually lives, a common setup in organizations with centralized data platform teams.
Added by @V-3604 in PR #3821.
Bug Fixes and Stability Improvements
This release also includes several fixes that make OpenCost more reliable in production:
- Custom provider GPU default pricing was incorrect, leading to wrong cost estimates for GPU workloads on custom providers. Fixed in PR #3830.
- Pricing HTTP client timeouts have been added, preventing OpenCost from hanging indefinitely when a cloud provider’s pricing API is slow or unresponsive (PR #3835).
- Data race in custom cost Status() was fixed by copying the coverage map, eliminating a potential crash under concurrent access (PR #3838).
- GPUAllocation.Equal was not comparing pointer field values correctly, which could cause false equality checks. Fixed in PR #3849.
- Spot price auth failure logging has been reduced. Previously, failed spot price fetches could flood your logs. Now they are much quieter (PR #3852).
OpenCost v1.120.4 is not a revolution. It is a solid, focused release that makes the tool work with more clouds, price things more accurately, and run more reliably. That is exactly what a cost monitoring tool should do.



