Progressive Disclosure

Concept

Showing only what most people need at first and letting the rest be opened when it's actually wanted.

Why it exists

Showing everything a screen can do was once considered the generous choice. A settings page listed twenty-four options in a column, and a share dialog put permission types, expiry settings and download toggles up all at once. From the builder's side nothing was hidden, so the job looked done.

From the user's side that screen is a wall. Hick's law — that decisions take longer as the number of options grows — shows up here directly. Someone new can't work out which thing to press first, and a daily user scans all twenty-four rows to reach the one option they came for. In a usability test, where people are given real tasks and watched for where they stall, a participant staring at a share dialog for twenty seconds is the classic symptom.

Progressive disclosure splits that screen into layers. The first layer keeps the one thing most people came to do; everything else moves to a place that opens on request. What defines the approach is that nothing is removed — only the order in which it gets encountered is decided. That distinction is what separates it from simply cutting features, which is a different decision with different consequences.

How it works

Sort options by how often they're used and keep only the frequent ones in the first layer. The work is five steps.

  1. Check the real usage rate for each option. If 72 of 80 people in a share dialog press copy link and three touch the expiry setting, those two options belong in different layers. Split without those numbers and the layers get set by the builder's taste.
  2. Narrow the first layer to one thing. The action most people want, plus the minimum input that action needs. Put two of them side by side and people start choosing again, which is the cost the layering was meant to remove.
  3. Move the rest behind something that opens. An accordion, where a heading opens and closes its contents, or a "more" link, or a bundle labelled advanced. A new window works too, but it covers what's behind it, which makes coming back more work and loses the context the person was reading.
  4. Name what's inside. Labelled only "more," nobody can tell whether what they want is in there. Names that reveal content — permissions, expiry — let people decide without opening. A label is cheaper to read than a panel is to expand.
  5. Set the defaults. Whatever the default is applies to everyone who never opens the panel, which makes defaults more consequential than the settings behind them. Whether link expiry defaults to 30 days or never is, in practice, the setting most users will live with.

Two layers is the rule. Go three deep and the person has to remember how far they opened, and from there what is hidden and what doesn't exist stop being distinguishable. Support tickets asking for features that already ship come from that third layer.

Where it shows up

Screens with many options where only some see regular use are where this belongs.

Settings pages and forms are the most common. Signup that collects three required fields now and leaves the profile for later is the same principle, applied across time rather than within one dialog. So are sharing and permission screens, because the person copying a link and the person restricting access to two named colleagues arrive at the same dialog with very different needs.

It also shows up wherever new users are handled. In onboarding — helping a new user get established — twenty features don't get introduced at once; the three the first task needs do. Giving an empty state screen one prominent next action is the same judgment. A tooltip, which shows a short explanation when an element is touched, is the form that shows an explanation only to whoever asked for it.

The bad fits are clear. First, in a tool an expert uses dozens of times a day, it gets in the way — two extra clicks each time accumulate. Second, information needed before a decision, like a warning that deletion can't be undone or a notice that pricing changes, doesn't get folded away. Third, folding content in a way that a screen reader cannot reach at all becomes an accessibility problem. Collapsed and removed have to be different things in the implementation, and testing with a screen reader is the only way to know which one you built.

How it sounds at work

"Keep copy link in the first layer and fold the permissions."

A proposal to narrow the first layer to one action, on the basis of what people actually press.

"Forty percent of people use an option we put behind 'more.' We split it wrong."

Something frequently used got folded, so it has to come back out to the first layer before the next release.

"Don't fold this warning. Once they press it there's no undo."

Information needed before a decision isn't a candidate for folding, however cluttered the screen looks.

When Noa rebuilt the Pagedeck share dialog, this judgment came first. The original had seven options, and the records Mia brought showed copy link and invite a teammate accounted for 91 percent of all use. The other five together came to nine percent, spread thinly across all of them.

Noa left two things in the first layer and moved the rest into one collapsed group labelled permissions and expiry. She also reopened the question of what the expiry default should be, in the same pass. Folding something means most users will live with the default, so the decision to fold and the decision about the default were one decision.

What people get wrong

The most common mistake is reading it as hiding things to make a screen simpler. Fewer visible options does make the screen cleaner. But what this reduces is not the number of options — it's the number of decisions on first contact. Fold something frequently used and people press "more" every time to fetch it, which has added a step rather than removed one. That's why step one, checking usage rates before splitting, can't be skipped, and why the split is worth revisiting once real numbers arrive.

Treating a minimal first layer as the goal is the other one. The approach summarizes easily as "less is better," which invites it. But the goal isn't how few options are on screen; it's whether people finish what they came to do. Leave something genuinely necessary out of the first layer and people substitute opening the panel for doing the task, and the screen ends up slower than it was before any layering.

Easily confused with

TermWhat it does in stagesHow it differs from progressive disclosure
Progressive enhancementAdds capability according to the environmentLayers by browser and device rather than by person. This one decides what to show first within one environment

Where to go next

  • Interaction design

    see which design area this principle belongs to

  • Affordance

    read the principle in the same group about what a screen communicates

Last updated 2026-09-16