Uninstalling a Release
helm uninstall removes a release and all its Kubernetes resources; add --keep-history to retain the revision records.
helm uninstall <release> [flags]When you no longer need a release, helm uninstall <release> deletes every resource Helm created for it and removes the release record.
Keeping history
By default the release history is purged too. Pass --keep-history to keep the revision records so you could reinstall or inspect them later. A release kept this way shows up with status uninstalled.
Namespaces
Uninstall respects the namespace flag. If the release is not in the current namespace, add --namespace.
Example
# Remove a release and all its resources
helm uninstall my-web
# Remove but keep the revision history
helm uninstall my-web --keep-history
# Uninstall from a specific namespace
helm uninstall my-web --namespace webWhen to use it
- A developer tears down a temporary review-app environment by running helm uninstall, removing all Kubernetes resources the chart created in one command.
- An operator decommissions an old service by uninstalling its release and confirms with helm list that no orphaned release state remains.
- A platform team uses --keep-history on uninstall during testing so they can still run helm history and inspect what was deployed before teardown.
More examples
Uninstall a release
Removes the my-postgres release and all Kubernetes resources it owns, then confirms the release no longer appears in the list.
helm uninstall my-postgres -n data
helm list -n dataUninstall keeping history
Deletes the release resources but retains the revision history, allowing helm rollback or history queries after teardown.
helm uninstall my-app --keep-history -n production
helm history my-app -n productionDry-run before uninstall
Simulates the uninstall without deleting anything, showing which resources would be removed so you can verify before committing.
helm uninstall my-app --dry-run -n production
Discussion