Glossary

Tesler's Law

Tesler's Law, also known as the Law of Conservation of Complexity, states that every application has a certain amount of inherent complexity that cannot be removed — only relocated. The question is not whether complexity exists but who has to deal with it: the designer, the developer, or the user.

The law is attributed to Larry Tesler, who worked at Xerox PARC and Apple and championed user-centred design. Tesler observed that attempts to "simplify" interfaces often just push complexity onto users in the form of confusion, errors, or extra steps. True simplification requires the designer or developer to absorb the complexity on the user's behalf.

Examples:

  • Email clients that auto-complete addresses hide the complexity of contact management
  • Word processors that handle formatting automatically save users from manually managing character styles
  • Search engines that correct typos absorb the complexity of matching imperfect queries
  • Operating systems that handle file organisation hide filesystem complexity from the user

The corollary is: if the designer doesn't do the work, the user must. Every decision to omit a validation check, every "just show the raw data" shortcut, every feature that requires manual configuration — all push complexity to users who are least equipped to handle it.

Tesler's Law is a corrective to the naive view that "simple" interfaces are always better. The right question is not "how few features can we have?" but "who should bear the complexity of this feature?" The best designs take on as much complexity as possible behind the scenes, presenting a clean face to the user while doing hard work invisibly.

Related terms: Cognitive Load, Progressive Disclosure, Human-Centred Design

Discussed in:

Also defined in: Textbook of Usability