In plain language
Error messages should tell the user how to fix the problem, not just that one exists.
Who it affects
People with cognitive disabilities and anyone stalled by vague validation messages.
How to check
Trigger validation errors: each message should state what a correct entry looks like (format, range, options). Worked example — A ride-hailing app's trip booking screen: enter a taken username: if there's no suggestion of available alternatives or guidance where that's feasible, it fails.
Common misconception
“Invalid entry” technically identifies that there's an error (satisfying 3.3.1) but fails this separate rule, which requires telling the user what a correct entry actually looks like. Real example: on a used-car marketplace's listing filter, entering an invalid year in the listing filter's "Year" field triggers only a generic "Invalid input" message, with no suggestion of the valid range or expected format.