Compare Kubernetes YAML Online
Paste two Kubernetes manifests. See what was added, removed, or changed — line by line with word-level highlights.
🔒 100% private — runs entirely in your browseror try sample data
Paste two Kubernetes manifests. See what was added, removed, or changed — line by line with word-level highlights.
🔒 100% private — runs entirely in your browseror try sample data
Kubernetes YAML Diff compares two Kubernetes manifest files and shows you exactly which lines were added, removed, or modified. Whether you're reviewing Deployment changes, comparing Helm values, or auditing ConfigMap updates, this tool gives you a clear, color-coded view of every difference.
Kubernetes manifests define your entire infrastructure — replicas, images, resource limits, environment variables, and more. A small change like updating a container image tag or adjusting memory limits can have major production impact. Comparing manifests visually before applying them catches issues that kubectl diff might not surface clearly.
Paste your YAML manifests from any source — kubectl get -o yaml, Helm templates, Kustomize overlays, or raw files. The tool handles single and multi-document YAML. Use "Ignore whitespace" to skip indentation differences. Everything runs in your browser — your cluster configs stay private.
# Get current deployment YAML
kubectl get deployment web-app -o yaml > current.yaml # After editing, compare before applying:
# - Image tag: 1.0.0 → 2.0.0
# - Replicas: 2 → 3
# - Memory limit: 256Mi → 512Mi
# - New readinessProbe added # Paste both into the diff tool to review
# all changes before running kubectl applyAlways review manifest diffs before kubectl apply. The visual diff catches resource limit changes, image updates, and new probes at a glance.
# values.yaml (staging)
replicaCount: 1
image: tag: "latest"
resources: limits: memory: 128Mi # values.yaml (production)
replicaCount: 3
image: tag: "v2.1.0"
resources: limits: memory: 512Mi
autoscaling: enabled: true maxReplicas: 10Compare Helm values across environments to ensure production has proper scaling, pinned image tags, and adequate resources.
apiVersion: v1
kind: ConfigMap
metadata: name: app-config
data: DATABASE_HOST: "db.staging.internal" CACHE_TTL: "300" LOG_FORMAT: "json" # vs production ConfigMap with different values
# and additional keysConfigMap diffs reveal environment-specific settings and missing configuration keys between clusters.
Unlike JSON, YAML uses indentation to define structure. A line indented by 2 spaces vs 4 spaces can mean the difference between a nested field and a sibling. Be careful with the "Ignore whitespace" option — it may hide meaningful structural changes in YAML.
When you export manifests with kubectl get -o yaml, Kubernetes adds generated fields like metadata.uid, metadata.resourceVersion, status, and metadata.creationTimestamp. These will always differ between exports. Focus on spec changes rather than metadata noise.
Kubernetes manifests often contain multiple resources separated by ---. The diff tool preserves these separators. If resources are reordered between files, they'll appear as large blocks of removed + added lines rather than matched pairs.
Paste your YAML manifests into the two panels and click Compare. The tool shows a side-by-side diff with line-by-line comparison and word-level highlighting for modified lines.
Yes. Any YAML file works — Helm values.yaml, kustomization.yaml, Chart.yaml, and raw Kubernetes manifests. The tool performs text-based comparison on any YAML content.
Manifests exported with kubectl get -o yaml include generated fields (uid, resourceVersion, status). You can either manually trim these before comparing, or visually skip them in the diff output.
Yes. This tool runs entirely in your browser. Your manifests, including any secrets, ConfigMap data, or cluster information, are never sent to any server.
Yes. Multi-document YAML with --- separators is compared as text. Each document boundary is preserved in the diff, making it easy to see which resource changed.