Design Principles
Norman: Constraints
Good design limits the wrong actions before they can happen, rather than correcting them after.
Where it comes from
It's one of Don Norman's design principles from The Design of Everyday Things. Norman classified constraints into types — physical, logical, semantic, and cultural — all of which guide behaviour by ruling out the actions that shouldn't happen.
Why it matters for your website
The best way to handle an error is to make it impossible. Norman's principle of constraints says good design physically or logically prevents wrong actions — greying out invalid options, disabling impossible choices, shaping inputs so only valid ones fit. Prevention beats correction every time. (The design-level companion to error prevention.)
Constraints work by shrinking the space of possible mistakes before they can be made. Disabling an invalid option, shaping a field so only valid input fits, hiding an action until its preconditions are met — each removes an error rather than catching it afterwards. Prevention is cheaper and kinder than correction.
The art is constraining without trapping. A good constraint quietly stops the wrong thing while leaving every right thing easy; a clumsy one blocks legitimate actions and frustrates. The aim is to make the correct path the path of least resistance, not to lock the user in.
Wrong vs right
A form that lets users submit an invalid date or an impossible combination, then throws an error after the fact.
A date picker and field constraints that make invalid input impossible to enter in the first place.
A 'submit' button that's always active, even when required fields are empty, leading to a failed submission.
A button disabled until the form is genuinely ready, so the invalid action can't be taken.
Offering options that aren't valid in the current context, inviting a mistake.
Greying out or hiding options that don't apply, so only valid choices are available.
Understanding Norman: Constraints
Norman's principle of constraints holds that good design prevents wrong actions rather than correcting them afterwards. By limiting what a user can do to what they should be able to do in a given context, a design removes whole classes of error before they occur. The best error message, in this view, is the one that never needs to appear.
Constraints take many forms: physical ones that make an action impossible, logical ones that rule out invalid combinations, and interface conventions like disabling unavailable buttons, greying out inapplicable options, or shaping a field so only valid input fits. Each narrows the path so the user is gently kept on the part of it that works.
The discipline is to constrain the wrong without obstructing the right. A well-judged constraint makes errors impossible while leaving every legitimate action effortless; a heavy-handed one blocks valid behaviour and breeds frustration. Prevention beats correction, but only when it stays out of the user's way. It's the design-level companion to error prevention, and it connects to forgiving formats and slips versus mistakes.
How Kweri checks it
Kweri can spot some opportunities for constraints — for instance forms that appear to accept obviously invalid input, or actions offered when their preconditions aren't met — and prompt you to prevent the error rather than catch it later. What it can't always verify without exercising the interface is how the system actually behaves on invalid input, since that plays out at interaction time. So Kweri flags likely places where a constraint could prevent a mistake, while confirming the real behaviour means testing the live flow with invalid actions.
FAQ
What are constraints in design?
Constraints are design choices that prevent wrong actions before they happen — disabling invalid options, shaping inputs so only valid ones fit, or ruling out impossible combinations. They're one of Don Norman's core principles, favouring prevention over correction.
Why is preventing errors better than correcting them?
Because a prevented error costs the user nothing, while a corrected one costs time, attention, and often re-work. Norman's view is that the best way to handle an error is to make it impossible in the first place.
What are examples of constraints?
A date picker that won't allow invalid dates, a submit button disabled until required fields are complete, greyed-out options that don't apply in context, and input fields formatted so only valid characters can be entered.
Can constraints be overdone?
Yes. A constraint that blocks legitimate actions, not just invalid ones, frustrates users. The goal is to make errors impossible while leaving every valid action easy — constraining the wrong without obstructing the right.
How are constraints related to error prevention?
Constraints are the design-level mechanism behind error prevention. Where error prevention is the goal, constraints — disabling, shaping, ruling out — are a primary way of achieving it by removing the chance to act wrongly.
Related principles
Stop problems before they happen — that beats even the best error message.
User errors divide into two fundamentally different types: slips (right goal, wrong action — a lapse of execution) and mistakes (wrong goal — a failure of understanding). Each requires a different design response.
An element's appearance should signal how to use it — buttons should look clickable, links like links.
Attribution & sources
Identified by Don Norman. Catalogued from The Design of Everyday Things (Don Norman).
One of Norman's core design principles; the design-level companion to error prevention. There's no single canonical web source.
See Norman: Constraints on your own site
Run a free Kweri audit — a plain-English review of your site’s speed, accessibility, SEO and design, ranked by what to fix first. No login, no jargon.
Run a free audit →