# What is Graceful Degradation? Also called degraded mode. Graceful degradation is the practice of designing a system so that partial failures reduce functionality instead of causing a total outage. Non-essential features are disabled, stale data is served, or simpler fallbacks take over while the core path keeps working. The goal is a smaller and more predictable blast radius when a dependency becomes slow or unavailable. Degradation is a design decision made before the incident, not a reaction during it. Each dependency is classified as essential or optional for a given flow, and the optional ones get an explicit fallback: a cached value, a default, a reduced feature set, or a clear message that one capability is temporarily unavailable. Without that classification, every dependency is effectively essential and any single failure can stop the whole flow. Common fallbacks include serving stale cache entries past their normal expiry, skipping an enrichment step, substituting a cheaper computation, switching to a queued asynchronous path when the synchronous one is saturated, and rendering a partial view with a placeholder for the missing section. Each fallback carries a correctness cost that must be acceptable for the use case. Degraded modes need to be visible. A system that silently drops a feature can hide an outage for days, and users may make decisions on incomplete results without knowing it. Good practice is to emit a metric whenever a fallback is taken, alert when fallback rates rise above a baseline, and label affected output so downstream consumers can tell full results from partial ones. The pattern applies naturally to agent systems, which depend on many external tools. If a memory store is unreachable an agent can run with recent conversation context alone. If one integration is down the agent can complete the parts of a task that do not require it and report the remainder clearly, rather than abandoning the entire request. ## Key points - Classify each dependency as essential or optional per flow. - Give optional dependencies explicit fallbacks before an incident. - Stale, partial, or simpler results beat a full outage. - Emit metrics whenever a fallback path is taken. - Label degraded output so consumers know it is partial. ## In practice A research agent normally enriches its answers with a document retrieval service. During an outage of that service, the retrieval step times out after two seconds, the platform records a fallback metric, and the agent proceeds using only the conversation context and its scheduled tools. The response is returned with a note that document lookup was unavailable, so the reader knows the sources section is incomplete rather than empty by conclusion. ## Related terms - [Fail Open and Fail Closed](/en/glossary/fail-open-fail-closed) - [Circuit Breaker](/en/glossary/circuit-breaker) - [Incident](/en/glossary/incident) - [Monitoring](/en/glossary/monitoring) - [Latency](/en/glossary/latency) [Back to the AI Glossary](/en/glossary)