Tesler's Law
Every system has irreducible complexity. The only question is whether the user absorbs it or the product does.
Definition
Larry Tesler's Law of Conservation of Complexity states that once a system has been simplified as far as it genuinely can be, the remaining complexity is fixed. It can be shifted between the user, the interface and the engineering, but not removed.
Craft convention. True because the industry converged on it. Breaking it costs familiarity, not correctness.
On this page
The decision this law forces
Tesler argued that an engineer should spend an extra week absorbing complexity if it saves a minute for each of a million users. Framed that way, simplification stops being an aesthetic goal and becomes an allocation decision with a defensible arithmetic.
The failure mode is silently pushing complexity outward. A form that demands the user knows their tax jurisdiction, a date field that demands a specific format, an error that says 'invalid input' without saying which part: each is a case of the product declining to hold complexity that it could hold.
Where complexity can live
| Location | Example | Cost |
|---|---|---|
| The user | Asking for date in DD/MM/YYYY | Errors, abandonment, support tickets, repeated on every use. |
| The interface | Accepting any date format and echoing back the parsed result | More design and edge-case work, paid once. |
| The system | Deriving tax jurisdiction from the address already collected | Engineering effort and maintenance, paid once. |
| Nobody, by removal | Dropping a field that nothing consumes | Free, and always the first thing to check. |
Practical absorptions
- Parse loosely on input and format strictly on display.
- Derive what you can from what you already have: country from a phone prefix, city from a postcode, currency from locale.
- Provide sensible defaults for every option that has a defensible common case.
- Let the interface do arithmetic the user would otherwise do on paper.
- Absorb the retry: queue the action and reconcile, rather than showing a failure the user has to redo.
In practice
Address autocomplete
Checkout and signupA single lookup field replaced five structured inputs. The complexity of postal formats across countries did not vanish, it moved into an address service. Error rates and time to complete both fall substantially.
Automatic timezone handling
SchedulingScheduling tools that display times in the viewer's local zone with the original zone available on hover absorb the conversion. Tools that display a raw UTC timestamp push it back onto the reader every single time.
Sources
Where a source establishes something narrower than the popular reading of it, the note says so.
The Law of Conservation of Complexity
L. Tesler
Stated by Tesler during his work at Xerox PARC and later at Apple and Amazon. It is an engineering principle rather than an empirical finding.
Living with Complexity
D. A. Norman, MIT Press, 2010
Book-length treatment of the difference between complexity and confusion.
Continue from here
Each link says what the connection is, so you can tell a principle from an alternative from a thing people mix this up with.
Applies when you are designing
Applied through
Where this shows up as a concrete interface decision.
- Form Labels and Help TextUX writing
Practical example
A worked decision where this was the deciding factor.
Related concept
Connected closely enough to change how you apply this.
- Aesthetic and Minimalist DesignHeuristic
- Error PreventionHeuristic
- Flexibility and Efficiency of UseHeuristic
- Hick's LawLaw
- Postel's LawLaw
- ConstraintsPrinciple
- Occam's RazorPrinciple
- Progressive DisclosurePrinciple