Providing User Feedback

Feedback tells people what an app is doing and helps them understand the results of actions and what they can do next.

Screenshot of the Mail Activity window on top of a compose window. The Activity window is displaying the progress of inbound and outbound messages.

Unobtrusively integrate status and other types of feedback into your interface. Ideally, users can get important information without taking action or being interrupted. Mail, for example, displays status information in an Activity panel that can be displayed if the user wants to see it. This panel doesn’t interfere with the user’s actions, but can be checked at any time with a quick glance.

Avoid unnecessary alerts. Alerts are inherently disruptive by design and should be used sparingly. Only use alerts to deliver important—and ideally actionable—information. For additional guidance, see Alerts.

Warn people when they initiate a task that can cause an unexpected and irreversible loss of data. Such warnings are important, but like other alerts, they lose their impact if they appear too often. Don’t warn users when data loss is the expected result. For example, the Finder doesn’t warn users every time they throw away a file because getting rid of the file is the expected result.

Tell people when a command can't be carried out. In this situation, people want to know why the command can't be performed and what they can do instead.

Consider providing haptics to supplement user feedback. A Force Touch trackpad can play haptics to enhance the user’s perception of certain actions and results. Although users can enable and disable all haptics in Trackpad Preferences, you might also want to give users a way to enable and disable haptics in your app's preferences. See Haptic Feedback.