Helm Values Diff
Diff Helm values.yaml for dev, staging and prod side by side as dotted paths, with added, removed and changed keys and which environments set each.
Helm Values Diff
Paste your values.yaml for each environment to see added, removed, and changed keys side-by-side. Pure deep-diff, no chart rendering required.
| Key | Status | Dev | Staging | Prod | Present in |
|---|---|---|---|---|---|
| features.experimental | partial | true | true | false | Dev + Staging + Prod |
| features.newDashboard | partial | true | false | false | Dev + Staging + Prod |
| image.pullPolicy | partial | "Always" | "IfNotPresent" | "IfNotPresent" | Dev + Staging + Prod |
| image.tag | all differ | "dev-latest" | "1.4.2-rc.1" | "1.4.1" | Dev + Staging + Prod |
| ingress.enabled | partial | false | true | true | Dev + Staging + Prod |
| replicaCount | all differ | 1 | 2 | 6 | Dev + Staging + Prod |
| resources.limits.cpu | all differ | "500m" | "1000m" | "2000m" | Dev + Staging + Prod |
| resources.limits.memory | all differ | "512Mi" | "1Gi" | "2Gi" | Dev + Staging + Prod |
| resources.requests.cpu | all differ | "100m" | "250m" | "500m" | Dev + Staging + Prod |
| resources.requests.memory | all differ | "128Mi" | "256Mi" | "512Mi" | Dev + Staging + Prod |
{
"replicaCount": 1,
"image": {
"repository": "my-app",
"tag": "dev-latest",
"pullPolicy": "Always"
},
"service": {
"type": "ClusterIP",
"port": 8080
},
"resources": {
"limits": {
"cpu": "500m",
"memory": "512Mi"
},
"requests": {
"cpu": "100m",
"memory": "128Mi"
}
},
"ingress": {
"enabled": false
},
"debug": true,
"features": {
"experimental": true,
"newDashboard": true
}
}{
"replicaCount": 2,
"image": {
"repository": "my-app",
"tag": "1.4.2-rc.1",
"pullPolicy": "IfNotPresent"
},
"service": {
"type": "ClusterIP",
"port": 8080
},
"resources": {
"limits": {
"cpu": "1000m",
"memory": "1Gi"
},
"requests": {
"cpu": "250m",
"memory": "256Mi"
}
},
"ingress": {
"enabled": true,
"host": "staging.example.com"
},
"debug": true,
"features": {
"experimental": true,
"newDashboard": false
}
}{
"replicaCount": 6,
"image": {
"repository": "my-app",
"tag": "1.4.1",
"pullPolicy": "IfNotPresent"
},
"service": {
"type": "ClusterIP",
"port": 8080
},
"resources": {
"limits": {
"cpu": "2000m",
"memory": "2Gi"
},
"requests": {
"cpu": "500m",
"memory": "512Mi"
}
},
"ingress": {
"enabled": true,
"host": "example.com",
"tls": true
},
"features": {
"experimental": false,
"newDashboard": false
}
}Updated . Provided as is. Check the output before you rely on it in production.
How to use Helm Values Diff
- 1
Paste each environment
Drop your dev, staging, and prod values.yaml files into the three editor panes. Each is parsed independently and any YAML errors surface inline so you can fix typos before diffing.
- 2
Read the status badges
Each key shows match (same in all envs), partial (some envs differ), all differ (every env unique), or missing (key only exists in some envs). Filter the table to focus on what matters.
- 3
Trace override sources
The Override Source column shows which environments declare a key. A key marked dev + prod but missing in staging is exactly the kind of drift that breaks deploys.
- 4
Inspect merged effective values
The bottom pane shows the parsed JSON tree per environment so you can spot deeply nested differences the flat diff misses, like a single field changed inside a large block.
- 5
Sync your environments
Use the diff to drive a values cleanup PR: add missing keys, normalize accidental drift, and document intentional differences in chart README so future you knows what is on purpose.
Questions and answers
What is Helm Values Diff?
How does the diff handle nested keys?
What does the Override Source column mean?
Does it send my data to a server?
Can I diff more than three environments?
For AI agents: how to call this tool
Machine-readable contract, endpoints and examples. Humans can ignore this section.
Best Path For Builders
Browser workflow
Runs instantly in the browser with private local processing and copy/export-ready output.
Browser Workflow
This tool is optimized for instant in-browser execution with local data handling. Run it here and copy/export the output directly.
/helm-values-diff/
For automation planning, fetch the canonical contract at /api/tool/helm-values-diff.json.