Definition◆Article
An operation is idempotent when applying it more than once produces the same state as applying it once, which is the property that makes retries safe.
Idempotency ensures retrying an operation doesn't change the final state beyond the first successful application. The author contrasts setting a fixed value (idempotent) with incrementing a value (not idempotent), and notes most business-critical operations resemble the latter. ✦ AI generated
the author · ByteByteGo Newsletter · 2026-07-30 · original ↗
Idempotency is the property that makes the retry safe. An operation is idempotent when applying it more than once produces the same state as applying it once. For example, setting an account balance to 500 is idempotent, because even the tenth time to execute this operation, the outcome will be the same. In contrast, adding 500 to a balance is not idempotent, since every time it is executed, the balance amount changes. Most operations that matter in a business system resemble the second one.
Read full article ↗excerpt · fair-use quotation
- ·Idempotency makes retries safe
- ·Multiple applications produce same state as one
- ·Core property for reliable system design
- ·Setting balance to $500: idempotent — tenth run same as first
- ·Adding $500 to balance: not idempotent — each run changes state
- ·Fixed assignment preserves outcome; increment does not
- ·Most business-critical operations are non-idempotent
- ·Retry safety must be designed, not assumed
Around this claim
In practice · 2
The new HTTP QUERY method (RFC-based) is essentially a GET request that is allowed to carry a body, letting complex query data live in the request body instead of being crammed into a URL query string, while still being classified as an idempotent, non-modifying request.CJ Reynolds · Syntax · conf 85%The proposed HTTP QUERY method (RFC 10008) functions like GET but allows a request body, giving developers an official, idempotent way to send complex query data instead of misusing POST or hacking a body onto GET.CJ Reynolds · Syntax · conf 85%