Designing a settings screen in an app, which involve user opting in or out of marketing from app and/or website and sync across devices. The issue I am having is handling an error if the user opts out and the request to update status fails if server is down.

Fallback is to show an error message "There was a problem, please try again later." but don't want halo effect. Another option is the fake it trick where we show the status as successful and keep firing retries in the background x number of times until it works. But if it still fails we show error message, but if user goes away from settings, he may never see error message.

Any suggestions for handling this issue other than error message?

  • If you're going to show the error message, IMO the halo effect can be subdued with very specific error messages. Example: there was an error; please try later vs. there was an error saving your marketing preferences. It may be a problem with our server; please try later. Even if I get that error, I feel that I still trust the system and ultimately the company because they took the time to craft very specific and informative error messages.
    – Mark Bubel
    Mar 19, 2014 at 15:37

2 Answers 2



  1. Attempt to establish connection from the start and display a notification if the server is down.
  2. Take steps to ensure high availability for your server; alerts, failover etc. This helps reduce times the app cannot update a user's opt-out setting.

And don't forget that sometimes it is the user's device that is unable to reach the internet.


I see the flow best as:

  • User selects option
  • Spinner starts... "Saving setting..."
    • If successful... a message is displayed indicating so
    • If unsuccessful/timeout... a message displayed indicating so... and a button/link to retry

If you can keep everything non-modal users would likely prefer this as they can continue to do other stuff vs. wait... however if you are concerned they may navigate away you may want to make this modal.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.