All UX laws

Postel's Law

Be liberal in what you accept and conservative in what you send.

How to apply it

Accept input in the formats people actually use, then clean it up and show it back in one consistent format.

Where Postel's Law comes from

Postel's Law is named after Jon Postel, a computer scientist who helped build the early internet. The line "be conservative in what you do, be liberal in what you accept from others" appears in the January 1980 specification of the Transmission Control Protocol (RFC 761), and again in the 1981 version (RFC 793). Designers borrowed it for interfaces: be forgiving about what people give you, and precise about what you give back. It is also known as the robustness principle.

How to apply Postel's Law, step by step

  1. Decide which formats people really use for this input: spaces, dashes, brackets, country codes, capital letters.
  2. Accept all of them. Trim spaces and ignore case, so the person does not have to.
  3. Clean the value up behind the scenes and show it back in one consistent format, so they can confirm it.
  4. Keep checking meaning. A real typo, like letters in a phone number, should still get a clear, specific message.
  5. Write errors that say what is wrong and how to fix it, not just that the input is invalid.

Postel's Law in practice: a concrete example

A phone field that takes what people type

People write the same phone number many ways: with spaces, dashes, brackets or a country code. A strict field that accepts only 415-555-0132 rejects most of them, even though they are all valid. A forgiving field takes any of them, tidies the number and shows it back in one format. The person does less work, and your data stays consistent. Search boxes that ignore capital letters and forgive small typos work the same way.

Common Postel's Law mistakes

  • Rejecting valid input because it is not in the one format you prefer.
  • Showing an error that says the input is invalid without saying what is wrong or how to fix it.
  • Clearing the whole field after an error, so people have to start again.
  • Being liberal about meaning as well as format, so real mistakes slip through.

When Postel's Law doesn't apply

Where ambiguity is dangerous, be strict. A payment amount, a date that could be day-first or month-first, a medication dose or a security setting should not be guessed. There, ask for the exact format, or show your interpretation and let the person confirm it before you act on it. Postel's Law is also criticised in protocol design, because accepting almost anything can hide errors, so use it for format, not for meaning.

How to tell you got it right

Try the field the way real people do: paste a number with spaces, type it with a country code, use capital letters. Does it accept what is valid, show it back cleanly, and still catch a real typo?

Postel's Law: common questions

What is Postel's Law?

Be conservative in what you send and liberal in what you accept. In UX it means being forgiving about what people enter and precise about what you show or store.

Where does Postel's Law come from?

It comes from Jon Postel, who wrote it in the 1980 specification of the Transmission Control Protocol (RFC 761). It is also known as the robustness principle.

What is an example of Postel's Law in UX?

A phone or date field that accepts several formats and tidies the result, a search box that ignores capital letters and small typos, or an address form that accepts a postcode with or without a space.

Does Postel's Law mean accepting any input?

No. Be forgiving about format, not about meaning. A real mistake, like letters in a phone number or an impossible date, should still be caught with a clear message.

When should you not follow Postel's Law?

When a wrong guess is costly or ambiguous: payments, dates that can be read two ways, medical doses and security settings. There, ask for exactness or let the person confirm your interpretation.

Practise it on a real challenge

Sign-up Form — the phone number that keeps getting rejected

A sign-up form rejects any phone number that isn't typed exactly as 415-555-0132. Perfectly valid numbers, like (415) 555 0132, get an error, and people abandon the form.

More UX laws

  • Doherty Threshold
  • Time-to-Value
  • Design every state
  • Interruption Cost
  • Single-Variable Testing
  • Specificity Principle
UX QuestUX LawsPricingAboutContactPopular UX laws:60-30-10 RuleDesign every stateStatistical PowerFunnel TriageAccessible contrastDensity Matches ContextHick's LawFitts's LawAll UX laws