Errors

Problem Statement

Errors cause disappointment and frustration and we should prevent them when possible. When errors do happen, our feedback should be thoughtful and exemplify the conversations we want to have with our users.

System Errors

Entire Page or System is Down

If a full page or system is down, apologize, let the user know what’s going on, and tell them how long it might take to resolve the issue.

Restricted Access

If a user can’t access certain information, tell them why, or hide the component entirely if it’s not pertinent to their role. Provide a way to resolve access issues, if it’s possible.

User Errors

Page-Level Validation

When a user submits a form, if multiple required fields are not completed, page-level validation will inform the user to complete those required fields. The combined field-level validations should further describe the error in detail. See Notifications, Tooltips and Forms for more info.

Field-Level Validation

If a user enters an input incorrectly or fails to take proper action, alert them with red, in-line error messaging. Ideally, this messaging would show as the user types. See Input states for details.

Preventative Measures

Deactivating Controls

Deactivate the primary action button on the page until all required information has been provided.

Offer helper text in tooltips if user must take action before a page is rendered. See Buttons and Tooltips for more information.

Prevent errors ahead of time by identifying required/optional fields. See Forms for more information.

Character counters set users' expectations for how much content to enter, including any limits on characters.

Guidelines

Do
use messaging to let a user know why data is missing.
Don‘t
show empty pages without explaining why there’s no content.
Do
use in-line errors, as they provide contextual information to help a user act.
Don‘t
show a summary of errors at the page-level only. In-line errors should be combined with any page-level messaging.

Editorial

Never make a user feel foolish, guilty or patronized. Use natural language to help them get out of whatever jam they’re in.

Use full sentences with punctuation.

Acknowledge what is keeping a user from proceeding, but don’t make them feel like they did something wrong.

If we are the reason they can’t proceed, apologize.

Provide a user at least one way to resolve the problem.

Write it as if you were telling a friend how to resolve an issue.

If an error has the potential to repeat, tell a user what they should do, i.e., “If the site continues to not recognize your account, email us at ___.”

Examples

We are sorry, but this Sponsor Code is not valid

Don‘t

Sorry, but we don’t recognize this sponsor code. Check with your employer for more details.

You can’t exclude more than four investment options, because doing so will keep us from properly diversifying your account.

Do

Morningstar Security mapping missing, map your security.

Don‘t

This investment doesn’t map to a Morningstar security, so please map it yourself.

Do

The security [Name] is already defined in client security master by security identifier as [ID]. Please either maps the imported security to another Morningstar security or as a user defined security.

Don‘t

You’ve already mapped an investment to this Morningstar security. Either choose another Morningstar security, or don't map it at all. Add additional context that can help a user succeed, not create more errors.

Do

Enter balance

Don‘t

Only numbers between $0 and $100,000,000, please.

Do

You’re not allowed to save that much into this account.

Don‘t

You’re saving more than into your Simple IRA. That's the most the government allows for this account. If you choose not to adjust your savings rate(s), we may advise you to put any overflow money into a new account.