Back to compare picker

Required field hidden by conditional logic vs Conditional reveal fields vs Dependent fields vs Error summary vs Single-page form vs Review before submit

Flag hidden required fields when validation can require an unreachable conditional answer; use conditional reveal for visible trigger-owned follow-ups, dependent fields for upstream-controlled validity, error summary for submit recovery, single-page form for short visible field sets, and review before submit for final branch resolution.

Learn the decision

Match the interaction to the person's task

Flag hidden required fields when validation can require an unreachable conditional answer; use conditional reveal for visible trigger-owned follow-ups, dependent fields for upstream-controlled validity, error summary for submit recovery, single-page form for short visible field sets, and review before submit for final branch resolution.

Required field hidden by conditional logic

Use it when: Use it during design and QA reviews of eligibility, account, checkout, consent, benefits, healthcare, enterprise configuration, and onboarding forms with conditional branches.

Make this state clear: Initial state with all currently required fields identified before users submit.

Observe the result: A user returns from review after changing an upstream answer and is asked the newly required question before final submit.

Study the full pattern →

Conditional reveal fields

Use it when: A selected radio, checkbox, or select option needs one short related follow-up field.

Make this state clear: Trigger selected state with the related follow-up field revealed directly under the trigger.

Observe the result: A user selects Phone, sees the Phone number field appear under Phone, enters the number, then unchecks Phone and sees the number excluded from submission.

Study the full pattern →

Dependent fields

Use it when: A downstream field's valid values or requirement depend on a previous answer.

Make this state clear: Controlling answer selected, with dependent options filtered to the valid subset.

Observe the result: A user chooses Hardware, selects Laptop, switches Category to Network, sees Laptop cleared, and chooses VPN from the new valid list before submitting.

Study the full pattern →

Error summary

Use it when: Form submission can produce one or more errors.

Make this state clear: Failed-submit state with summary visible near the form heading.

Observe the result: After failed submit, focus or reading order makes the summary discoverable before users scan the form.

Study the full pattern →

Single-page form

Use it when: A compact set of related fields should be reviewed together before one submit.

Make this state clear: Initial empty state with form heading, instruction, required or optional indicator explanation, grouped fields, and submit action.

Observe the result: A user reviews all contact details before submitting because the fields are short, related, and visible in one scan.

Study the full pattern →

Review before submit

Use it when: A user has provided multiple answers and should verify them before a consequential submit action.

Make this state clear: Initial review state with grouped captured answers, relevant sections, and explicit submit action.

Observe the result: A user changes their phone number from review, lands on the phone page with the old value pre-filled, saves, and returns directly to review with other answers preserved.

Study the full pattern →

Practice the judgment: Imagine this situation: Submit fails because an accommodation details field is required but hidden behind an unselected or collapsed branch. Write the person's goal, choose one of these patterns, and show the state that helps the person continue. Use the decision rules and source trail below to explain your choice.

Review the underlying principle →

Decision dimensions

Dimension Required field hidden by conditional logicConditional reveal fieldsDependent fieldsError summarySingle-page formReview before submit
UI or UX UI + UX - Anti-pattern where required form data is hidden or unreachable because conditional state and validation disagreeUI + UX - Trigger-owned follow-up form fieldUI + UX - Controlling and dependent form fieldsUI + UX - Form recovery summaryUI + UX - Short related multi-field submission pageUI + UX - Final editable answer summary before committing a transaction
UI guidance When a trigger makes a follow-up required, keep the trigger, the revealed required field, the requirement text, and the error summary recovery path visible and connected.Place the revealed field directly under the radio, checkbox, or select option that triggers it, visually nested enough to show ownership while keeping the label and error text fully visible.Place the controlling field before the dependent field, label both clearly, and explain the dependency in helper text such as Choose a category first to see valid subcategories.Render a top-of-form summary block with heading, linked error list, and matching field-level error messages.Render a clear form heading, short instruction, required or optional indicator explanation, grouped related fields, one primary submit action, and a visible error summary only after failed submit.Render a single review page immediately before commit with a clear title, grouped answer sections, readable key/value rows, per-answer or per-section Change actions, skipped optional answers when meaningful, and a primary button whose label names the committed action.
UX guidance Users should be able to tell which answers are currently required before submit, why they are required, and how to reveal or remove the requirement.Use conditional reveal fields when a short follow-up answer is only relevant for users who choose a specific option and should remain in the same decision context.Help the person reach a clear task outcome.Move users from the summary to the exact field, group, or first invalid control that needs correction.Use a single-page form when users benefit from seeing, comparing, and editing a small related set of fields before one submission.Use review before submit to give users one final chance to verify and correct captured answers before a transaction is sent, paid, published, applied, or otherwise committed.
Good UI A benefits form asks whether the user needs an accommodation; selecting Yes reveals a required Accommodation details field directly below the trigger with helper text and validation.A Contact me by email checkbox reveals an Email address field immediately below that checkbox and hides it when Email is unchecked.An incident form asks Category first, then Subcategory shows only options for that category and says why it was cleared after Category changed.Top-of-form summary with a clear heading, linked error list, and matching inline field messages.A contact-details form shows one heading, a required-field note, grouped name and contact fields, communication preference radios, aligned field errors, and a Save details button at the end.A claim review page has Applicant, Contact details, Evidence, and Declaration sections; each row shows the captured answer and a Change link with hidden context such as Change email address.
Bad UI Submit fails with Enter accommodation details, but the accommodation field is hidden because the branch is collapsed and the trigger is off-screen.Selecting Other reveals a long nested form with its own Save button and unrelated questions.A stale dependent value is submitted with a new controlling value.Summary and field messages visually disconnected or contradictory.A long application with eligibility, address history, uploads, and payment fields is dumped onto one scrolling page.Change links lack context, so assistive technology users hear a list of identical Change links.
Good UX A user returns from review after changing an upstream answer and is asked the newly required question before final submit.A user selects Phone, sees the Phone number field appear under Phone, enters the number, then unchecks Phone and sees the number excluded from submission.A user chooses Hardware, selects Laptop, switches Category to Network, sees Laptop cleared, and chooses VPN from the new valid list before submitting.After failed submit, focus or reading order makes the summary discoverable before users scan the form.A user reviews all contact details before submitting because the fields are short, related, and visible in one scan.A user changes their phone number from review, lands on the phone page with the old value pre-filled, saves, and returns directly to review with other answers preserved.
Bad UX Submit fails because a required field is hidden.Hidden required fields block submission.A stale dependent value is submitted with a new controlling value.Only showing errors below the fold.A validation failure clears completed fields, forcing the user to re-enter unrelated information.A user selects Change address, edits one field, then has to repeat every later page before finding the review page again.
Best fit Use it during design and QA reviews of eligibility, account, checkout, consent, benefits, healthcare, enterprise configuration, and onboarding forms with conditional branches.A selected radio, checkbox, or select option needs one short related follow-up field.A downstream field's valid values or requirement depend on a previous answer.Form submission can produce one or more errors.A compact set of related fields should be reviewed together before one submit.A user has provided multiple answers and should verify them before a consequential submit action.
Avoid when Choose another interaction when the task calls for a different route.The revealed content is a complete form, separate workflow, or separate submit action.The choices are independent and users need to compare them together.The message is a system failure, permission problem, or outage rather than a validation issue.The form is long, high-stakes, branched, or too hard to recover from on one page.The task is a single low-risk field with clear inline validation and an obvious submit action.
Required state Initial state with all currently required fields identified before users submit.Trigger selected state with the related follow-up field revealed directly under the trigger.Controlling answer selected, with dependent options filtered to the valid subset.Failed-submit state with summary visible near the form heading.Initial empty state with form heading, instruction, required or optional indicator explanation, grouped fields, and submit action.Initial review state with grouped captured answers, relevant sections, and explicit submit action.
Accessibility burden Newly required conditional fields must be placed after the trigger in DOM order or announced through tested status behavior.Keep the revealed field immediately after the triggering control in DOM order so keyboard and screen reader users encounter it naturally.Keep controlling and dependent fields in logical DOM order and use labels, hints, and descriptions that name the relationship.Use a heading and alert behavior that makes the summary discoverable.Keep field order in the DOM the same as the visible order.Use headings that make the review task explicit, such as Check your answers before sending your application.
Common misuse Keeping a visually hidden input required because the backend schema says the field is required in some cases.Hiding a required field and still validating it after its trigger is unselected.Leaving a stale dependent value selected after the controlling field changes.Replacing field-level messages with only a top-level summary.Using one page for a long complex application just to avoid designing steps.Labelling the final commit button Continue.

Required field hidden by conditional logic

UI or UX
UI + UX - Anti-pattern where required form data is hidden or unreachable because conditional state and validation disagree
UI guidance
When a trigger makes a follow-up required, keep the trigger, the revealed required field, the requirement text, and the error summary recovery path visible and connected.
UX guidance
Users should be able to tell which answers are currently required before submit, why they are required, and how to reveal or remove the requirement.
Good UI
A benefits form asks whether the user needs an accommodation; selecting Yes reveals a required Accommodation details field directly below the trigger with helper text and validation.
Bad UI
Submit fails with Enter accommodation details, but the accommodation field is hidden because the branch is collapsed and the trigger is off-screen.
Good UX
A user returns from review after changing an upstream answer and is asked the newly required question before final submit.
Bad UX
Submit fails because a required field is hidden.
Best fit
Use it during design and QA reviews of eligibility, account, checkout, consent, benefits, healthcare, enterprise configuration, and onboarding forms with conditional branches.
Avoid when
Choose another interaction when the task calls for a different route.
Required state
Initial state with all currently required fields identified before users submit.
Accessibility burden
Newly required conditional fields must be placed after the trigger in DOM order or announced through tested status behavior.
Common misuse
Keeping a visually hidden input required because the backend schema says the field is required in some cases.

Conditional reveal fields

UI or UX
UI + UX - Trigger-owned follow-up form field
UI guidance
Place the revealed field directly under the radio, checkbox, or select option that triggers it, visually nested enough to show ownership while keeping the label and error text fully visible.
UX guidance
Use conditional reveal fields when a short follow-up answer is only relevant for users who choose a specific option and should remain in the same decision context.
Good UI
A Contact me by email checkbox reveals an Email address field immediately below that checkbox and hides it when Email is unchecked.
Bad UI
Selecting Other reveals a long nested form with its own Save button and unrelated questions.
Good UX
A user selects Phone, sees the Phone number field appear under Phone, enters the number, then unchecks Phone and sees the number excluded from submission.
Bad UX
Hidden required fields block submission.
Best fit
A selected radio, checkbox, or select option needs one short related follow-up field.
Avoid when
The revealed content is a complete form, separate workflow, or separate submit action.
Required state
Trigger selected state with the related follow-up field revealed directly under the trigger.
Accessibility burden
Keep the revealed field immediately after the triggering control in DOM order so keyboard and screen reader users encounter it naturally.
Common misuse
Hiding a required field and still validating it after its trigger is unselected.

Dependent fields

UI or UX
UI + UX - Controlling and dependent form fields
UI guidance
Place the controlling field before the dependent field, label both clearly, and explain the dependency in helper text such as Choose a category first to see valid subcategories.
UX guidance
Help the person reach a clear task outcome.
Good UI
An incident form asks Category first, then Subcategory shows only options for that category and says why it was cleared after Category changed.
Bad UI
A stale dependent value is submitted with a new controlling value.
Good UX
A user chooses Hardware, selects Laptop, switches Category to Network, sees Laptop cleared, and chooses VPN from the new valid list before submitting.
Bad UX
A stale dependent value is submitted with a new controlling value.
Best fit
A downstream field's valid values or requirement depend on a previous answer.
Avoid when
The choices are independent and users need to compare them together.
Required state
Controlling answer selected, with dependent options filtered to the valid subset.
Accessibility burden
Keep controlling and dependent fields in logical DOM order and use labels, hints, and descriptions that name the relationship.
Common misuse
Leaving a stale dependent value selected after the controlling field changes.

Error summary

UI or UX
UI + UX - Form recovery summary
UI guidance
Render a top-of-form summary block with heading, linked error list, and matching field-level error messages.
UX guidance
Move users from the summary to the exact field, group, or first invalid control that needs correction.
Good UI
Top-of-form summary with a clear heading, linked error list, and matching inline field messages.
Bad UI
Summary and field messages visually disconnected or contradictory.
Good UX
After failed submit, focus or reading order makes the summary discoverable before users scan the form.
Bad UX
Only showing errors below the fold.
Best fit
Form submission can produce one or more errors.
Avoid when
The message is a system failure, permission problem, or outage rather than a validation issue.
Required state
Failed-submit state with summary visible near the form heading.
Accessibility burden
Use a heading and alert behavior that makes the summary discoverable.
Common misuse
Replacing field-level messages with only a top-level summary.

Single-page form

UI or UX
UI + UX - Short related multi-field submission page
UI guidance
Render a clear form heading, short instruction, required or optional indicator explanation, grouped related fields, one primary submit action, and a visible error summary only after failed submit.
UX guidance
Use a single-page form when users benefit from seeing, comparing, and editing a small related set of fields before one submission.
Good UI
A contact-details form shows one heading, a required-field note, grouped name and contact fields, communication preference radios, aligned field errors, and a Save details button at the end.
Bad UI
A long application with eligibility, address history, uploads, and payment fields is dumped onto one scrolling page.
Good UX
A user reviews all contact details before submitting because the fields are short, related, and visible in one scan.
Bad UX
A validation failure clears completed fields, forcing the user to re-enter unrelated information.
Best fit
A compact set of related fields should be reviewed together before one submit.
Avoid when
The form is long, high-stakes, branched, or too hard to recover from on one page.
Required state
Initial empty state with form heading, instruction, required or optional indicator explanation, grouped fields, and submit action.
Accessibility burden
Keep field order in the DOM the same as the visible order.
Common misuse
Using one page for a long complex application just to avoid designing steps.

Review before submit

UI or UX
UI + UX - Final editable answer summary before committing a transaction
UI guidance
Render a single review page immediately before commit with a clear title, grouped answer sections, readable key/value rows, per-answer or per-section Change actions, skipped optional answers when meaningful, and a primary button whose label names the committed action.
UX guidance
Use review before submit to give users one final chance to verify and correct captured answers before a transaction is sent, paid, published, applied, or otherwise committed.
Good UI
A claim review page has Applicant, Contact details, Evidence, and Declaration sections; each row shows the captured answer and a Change link with hidden context such as Change email address.
Bad UI
Change links lack context, so assistive technology users hear a list of identical Change links.
Good UX
A user changes their phone number from review, lands on the phone page with the old value pre-filled, saves, and returns directly to review with other answers preserved.
Bad UX
A user selects Change address, edits one field, then has to repeat every later page before finding the review page again.
Best fit
A user has provided multiple answers and should verify them before a consequential submit action.
Avoid when
The task is a single low-risk field with clear inline validation and an obvious submit action.
Required state
Initial review state with grouped captured answers, relevant sections, and explicit submit action.
Accessibility burden
Use headings that make the review task explicit, such as Check your answers before sending your application.
Common misuse
Labelling the final commit button Continue.
Decision rules
  • Choose the hidden-required anti-pattern when a field can block submit while hidden, collapsed, disabled, off-screen, absent from the current route, or disconnected from the selected trigger.
  • Choose the hidden-required anti-pattern when server validation, saved drafts, browser Back, or review edits can require a branch that the UI does not restore before recovery.
  • Choose conditional reveal fields when one selected radio, checkbox, or select option reveals a short related follow-up directly under the trigger and validates it only while selected.
  • Choose dependent fields when an always-owned downstream control remains visible or discoverable but its options, requirement, value, or stale state depend on an upstream answer.
  • Choose error summary when submit-time validation needs a top-of-page list of errors that links to visible fields and matching field-level messages.
  • Choose single-page form when a short coherent set of fields can stay visible together, with clear required indicators and one submit action.
  • Choose review before submit when a changed answer can make a later question newly required, stale, removed, or pending before final commitment.
  • Escalate to a separate question page, multi-step form, or wizard when the conditional branch contains multiple required fields, nested logic, long copy, or a separate decision.
  • Do not use disabled required controls as a hidden prerequisite; explain the prerequisite and provide an enabled path to satisfy or remove the requirement.
  • Do not let error summary links point to hidden elements; reveal the branch or route to the owning question before focusing recovery.
  • Do not preserve hidden branch values as active payload or validation state after the trigger changes unless draft restoration is explicit and visible.
  • Make newly required fields perceivable to assistive technology through DOM order, labels, descriptions, status text, and tested component behavior.
Inspect live examples
Failure modes
  • Submit fails because an accommodation details field is required but hidden behind an unselected or collapsed branch.
  • The error summary link points to a hidden input or a missing DOM node.
  • A server-only required field appears after submit even though the page never showed the trigger that made it required.
  • A saved draft keeps a hidden partner field required after the user changes relationship status to Single.
  • A dependent field is disabled until category is selected but still required by validation.
  • A review page lets users change eligibility and return to final submit without asking the newly required evidence question.
  • Nested conditional reveals hide several required answers and users cannot tell which branch is active.
  • Screen reader users are not informed that selecting an answer revealed a required follow-up.

Saved items