Accessibility Hint
| Severity | Serious |
|---|---|
| Accessibility Principle | Understandable |
| Affected users | Visual |
| Success criterion | 4.1.2 |
An accessibility hint gives screen reader users extra context about what will happen when they interact with an element — useful when the label alone does not fully explain the action or its effect.
For example, a button labelled "Like" might not tell a screen reader user what gets liked. Adding a hint — "Likes the song" — fills in that gap:
<Pressable
accessibilityLabel="Like"
accessibilityHint="Likes the song"
onPress={onPress}
>
<Text>Like</Text>
</Pressable>
Expectations
- When: The user focuses the component
- Then: The Screen Reader reads the label and role first, then the hint
| VoiceOver | Talkback | |
|---|---|---|
| Like, button, double tap to activate, Likes the song | Like, button, double tap to activate, Likes the song | Good |
- When: The user pronounces the label
- Then: The Voice Control software recognizes the label
- And:
- The Voice Control software executes the action — the hint is not announced and does not affect command recognition
- And:
- Then: The Voice Control software recognizes the label
When to use the Accessibility Hint
Add a hint when:
- The label alone doesn't explain what the action does (e.g., "Delete" without saying what gets deleted)
- The outcome may be surprising or irreversible
- The element behaves differently from the standard gesture (e.g., a long press opens a menu instead of triggering the primary action)
The hint field is optional. Only add one when the label is not self-explanatory. Overloading a screen reader user with redundant information makes navigation harder, not easier.
Best Practices
Keep hints short and specific
A hint should add information that the label doesn't already carry. Avoid restating the label or describing obvious interactions.
❌ Redundant:
accessibilityLabel="Submit"
accessibilityHint="Submits the form"
✅ Adds value:
accessibilityLabel="Submit"
accessibilityHint="Sends your order and charges your saved card"
Don't duplicate the label
If the hint would say the same thing as the label, omit it.
Use plain language
Write as if explaining to someone who cannot see the screen. Avoid technical jargon.
// Avoid
accessibilityHint="Dispatches the DELETE_ITEM action"
// Prefer
accessibilityHint="Removes this item from your list"