Skip to content

Checked

Form validation

Form validation checks what people enter and says what is wrong near the field, as soon as the value is entered. Apple asks to validate dynamically so mistakes are not found after a long form.

Why it matters

People get frustrated when they must go back and correct mistakes after filling a long form, and a message at the top of the screen does not say which field it means.

The cheapest field is the one not asked: Apple asks to gather what the system knows and to offer choices instead of typing.

Form validation on iOS and Android

Also called Inline validation, Error message, Input error. The same idea in each system, with the values Appetite UI gives it.

Form validation at a glance, iOS, Android, Appetite UI
ValueiOSAndroidAppetite UI
NameEntering data: text field with dynamic validationText field error stateInput error state
Password entrySecure field, never prepopulatedNot drawn in the fileSee below
Error state in the fileRule, hint and icon turn redSame fieldSee below

In Appetite UI

Input has five states, Placeholder, Filled, Focused, Error and Disabled. Only the rule, the text and the icons move, so a form does not jump on error, and the hint carries the message. The docs say red is not a message: say what went wrong in the hint.

Example

An email field checks the format when the person leaves it and shows a line under it reading Enter an address like name@company.com.

Common mistakes

  • Validating only on submit.
  • An error that does not say how to fix it.
  • Marking the error by color alone. Add text or an icon.
  • Clearing the field when it is wrong.

Questions

When should a form validate?

As soon as the value is entered or the person leaves the field. Apple advises verifying values as they are entered and giving feedback.

Should a password field be prefilled?

Never. Apple says to ask people to enter a password or use biometric or keychain authentication.

Sources

The pages the facts above rest on, each read October 30, 2026.

  1. Apple Human Interface Guidelines: Entering data