Skip to content
UX Atlas
Plate LAW·005 · LawGrid A2 · Rev. 2026-08-14

Tesler's Law

Every system has irreducible complexity. The only question is whether the user absorbs it or the product does.

LawCraft conventionIntermediate

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 plate
  1. 1Definition
  2. 2The decision this law forces
  3. 3Where complexity can live
  4. 4Practical absorptions
  5. 5Deciding who absorbs it
  6. 6In practice
  7. 7Commonly confused with
  8. 8Local chart
  9. 9Sources
  10. 10Continue from here

Reach for this when

  • A flow has a step users consistently get wrong.
  • Support volume clusters on a single form or setting.
  • You are tempted to write help text explaining how to fill something in.
  • A proposal removes a step, and nobody has said who now does what that step did.

Common mistakes

  • Treating removal of a feature as simplification when the need remains.
  • Hiding a required decision instead of making it.
  • Absorbing complexity in a way that removes user control over an outcome they care about.

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

LocationExampleCost
The userAsking for date in DD/MM/YYYYErrors, abandonment, support tickets, repeated on every use.
The interfaceAccepting any date format and echoing back the parsed resultMore design and edge-case work, paid once.
The systemDeriving tax jurisdiction from the address already collectedEngineering effort and maintenance, paid once.
Nobody, by removalDropping a field that nothing consumesFree, 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.

Deciding who absorbs it

Do

  • Absorb complexity into the system when the system can be right most of the time and correction is cheap.
  • Show your working when you absorb something, so the user can see what was assumed.
  • Leave the decision with the user when being wrong is expensive or personal.
  • Write down which complexity you moved and where it went, because it did not disappear.

Do not

  • Remove a control and leave the underlying complexity to surface as a support ticket.
  • Guess silently on something the user would have answered in two seconds.
  • Call a screen simple when the work now happens in a spreadsheet beside it.
  • Push complexity onto the engineering team without saying so, and then be surprised by the estimate.

In practice

  1. i.

    Address autocomplete

    Checkout and signup

    A 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.

  2. ii.

    Automatic timezone handling

    Scheduling

    Scheduling 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.

  3. iii.

    The simplification that moved the work

    Where the complexity went

    Removing the project field from the time entry form made the form faster and made every weekly report wrong, so an administrator now spends Friday reassigning entries. The interface got simpler and the system did not.

Commonly confused with

Close neighbours that get substituted for each other. The difference is stated first, then the condition that picks one over the other.

vs.

Occam's Razor

Principle

Among solutions that meet the requirement, prefer the one that assumes least.

Key difference

Occam's Razor says prefer the solution with fewest moving parts. Tesler's Law says a residue of complexity cannot be removed at all, only moved. One picks between designs; the other decides who carries what neither design can avoid.

Use Tesler's Law when

  • Simplifying the screen has quietly pushed work onto the reader.
  • The argument is about who absorbs the difficulty.
  • Someone is proposing to remove something that has to live somewhere.

Use Occam's Razor when

  • Several designs would work and one is more elaborate.
  • You are justifying cutting machinery rather than moving it.
  • The complexity in question is genuinely avoidable.

Learn about Occam's Razor

Local chart

LAW·005 · Region I · Grid A2

This entry and the entries it is stated to connect with. Each line is labelled with what the connection means.

Sources

Where a source establishes something narrower than the popular reading of it, the note says so.

  1. [1]

    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.

  2. [2]

    Living with Complexity

    D. A. Norman, MIT Press, 2010

    Book-length treatment of the difference between complexity and confusion.

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

Why this works

The reasoning this entry rests on.

Applied through

Where this shows up as a concrete interface decision.

Practical example

A worked decision where this was the deciding factor.

Check your work

Review passes that test whether this was done properly.

Related concept

Connected closely enough to change how you apply this.