Home/For Kubernetes

Best Observability Platforms for Kubernetes: Container Billing Explained (2026)

The Kubernetes Billing Problem

Kubernetes auto-scaling means host counts and pod counts fluctuate constantly. An observability platform that charges per-host using high-water-mark billing will cost more than expected because you pay for peak capacity, not average utilization. Per-container billing can also surprise you when pod counts spike during deployments or traffic surges. Usage-based billing (per-GB or per-series) aligns costs with actual data volume regardless of infrastructure topology.

How Each Platform Bills for K8s

PlatformBilling ModelK8s ImpactPredictability
PrometheusFree (self-hosted)Native K8s service discovery. Zero billing impact from scaling.Perfect
Grafana CloudPer-series + per-GBScales with data volume, not host count. Predictable on K8s.High
New RelicPer-GB data ingestNo per-host fees. Scales with telemetry volume, not pods.High
DynatraceGiB-hour consumptionOneAgent auto-discovers pods. GiB-hour tracks actual usage.Medium
Datadog (per-host)Per-node, high-water-markPays for peak node count per hour, averaged monthly. Spikes cost more.Low
Datadog (per-container)$0.002/container/hr~$1.44/container/month. Can be cheaper than per-host for dense nodes.Medium
SigNozPer-GB + per-millionNo per-host fees. OTel-native K8s support.High

Prometheus: The Kubernetes-Native Choice

Prometheus was created at SoundCloud by ex-Google engineers who wanted a Borgmon-like monitoring system for containers. It became the second CNCF graduated project (after Kubernetes itself). Every major Kubernetes distribution ships with Prometheus support.

  • Native service discovery automatically finds new pods, services, and nodes as they are created
  • kube-state-metrics provides cluster state (pod status, deployment replicas, node conditions)
  • node-exporter provides host-level metrics (CPU, memory, disk, network) per node
  • Prometheus Operator simplifies deployment and management on K8s with CRDs for ServiceMonitors and PrometheusRules
  • Zero software cost regardless of cluster size

Datadog on Kubernetes

Datadog's Kubernetes integration is excellent from a features standpoint. The DaemonSet-deployed agent with Cluster Agent provides auto-discovery, container maps, live container views, and Orchestrator Explorer. The challenge is billing.

Per-host billing: Counts the underlying node. A 20-node cluster with auto-scaling to 50 nodes during peaks will average higher than 20 nodes/month due to high-water-mark billing. Budget for the average peak, not the baseline.

Per-container billing: Alternative option at $0.002/container/hour (~$1.44/container/month). Better for dense nodes running many small pods. Worse for nodes running a few large pods.

APM on K8s: APM is billed separately at $31/host/month on top of infrastructure. With auto-scaling, this is the cost component that surprises teams the most.

OpenTelemetry Collector on Kubernetes

The OpenTelemetry Collector is the vendor-neutral telemetry pipeline. Deploy it on K8s and send data to any backend.

DaemonSet deployment: One Collector per node. Collects node-level metrics, receives traces from application pods via gRPC/HTTP, and tails container logs. The standard pattern for production K8s.

Sidecar deployment: One Collector per pod. Higher resource overhead but better isolation. Useful for multi-tenant clusters or when different services need different processing pipelines.

Gateway deployment: Centralized Collector receiving data from agents. Adds buffering, load balancing, and sampling before forwarding to the backend. Reduces backend costs for high-volume clusters.

# Deploy OTel Collector on K8s

helm repo add open-telemetry \

  https://open-telemetry.github.io/opentelemetry-helm-charts

helm install otel-collector \

  open-telemetry/opentelemetry-collector \

  --set mode=daemonset

Frequently Asked Questions

How does Datadog charge for Kubernetes?
Datadog offers two options for Kubernetes: per-host pricing (counts the underlying node, not individual pods) or per-container pricing ($0.002/container/hour, roughly $1.44/container/month). Per-host uses high-water-mark billing: you pay for the peak number of concurrent nodes in each hour, averaged over the month. For clusters that auto-scale aggressively, this means paying for peak capacity even when utilization is low.
Which observability tool is native to Kubernetes?
Prometheus. It was designed by ex-Googlers at SoundCloud specifically for dynamic, container-based environments. Kubernetes service discovery is built in. kube-state-metrics provides cluster state data. node-exporter provides host-level metrics. The Prometheus Operator makes deployment and management on K8s straightforward. It is the CNCF graduated standard for K8s metrics and by far the most widely used monitoring tool in the Kubernetes ecosystem.
Should I use the OTel Collector on Kubernetes?
Yes, if you want vendor neutrality. Deploy the OpenTelemetry Collector as a DaemonSet (one per node) to collect metrics, traces, and logs. The Collector can send data to any compatible backend: Grafana Cloud, New Relic, Dynatrace, SigNoz, or Honeycomb. This means you can switch observability backends without changing your application instrumentation. Many teams run the OTel Collector alongside Prometheus for metrics and use it primarily for traces and logs.
What is the cheapest monitoring for Kubernetes?
Self-hosted Prometheus + Grafana is the cheapest at zero software cost. It is also the native choice for K8s. Grafana Cloud free tier (10,000 Prometheus series, 50 GB logs) covers small clusters. For managed platforms, Grafana Cloud Pro usage-based pricing avoids per-host surprises on auto-scaling clusters. New Relic data-ingest pricing also works well for K8s since it does not charge per pod or per node.