The mobile application has a search catalogue feature. Every search is sent to the server, and there are no local search results. This means that when the user's mobile device is offline or in airplane mode, the search feature is unavailable.

How should the search be treated and how to let the user know how to fix their connectivity? What is the most expected behaviour? Also, we're open to suggestions.

Current options:

  1. Disclaimer notifying the user's offline connectivity (Favorite option, it's simple and not overwhelming)
  2. Disable search bar (My concern is this will make the user think the application is broken when the only problem is their connectivity)
  3. Disclaimer notifying the user's offline connectivity AND disable search bar (Seems to be an overkill)

4 Answers 4


If offline search is supported

Search locally, and show offline message.

Showing offline results only. Restore internet connection to see all results.

This reminds me of how the default Windows 10 email client works:

  • The most recent of your emails are stored locally on your machine, so those messages don't require internet connectivity to read or search.
  • Searching, by default, only scans your local machine. If the message you're requesting is not on your local machine, you can initiate an online search with the same criteria, using the "Search online" button at the bottom (I'll admit... That "Search online" text does not look like an action, but that's another topic).

To apply this pattern to your situation, you'd do without the "Search online" button, and just include the message explaining that online results are currently unavailable.

"Search online" example

If offline search is NOT supported

Show offline message next to disabled search button.


The search input field isn't broken, so there is no need to prevent the user from typing a search query. This would allow the user to enter a query she would like to pursue once connectivity is restored.

Personal anecdote: I used to use Skype for business while working in a building with spotty WiFi. It would disconnect for just a couple seconds at a time, but during that period, all IM chat windows would have their input areas disabled. This inevitably led to messages like: "Just letting you know I'll be leavbit early today."

The search action is broken, so you should disable the search button. Notify the user as to why the search is disabled so she does not keep trying to trigger a search. An enabled button that does nothing is wrong.

If this search pulls results as the user types, then instead of results, show a message explaining the lack of results, and a button to retry the search (useful for when connectivity is restored, or for particularly stubborn users).

  • +1 for disabling the button not the input field. Although slightly less important than in your Skype example, there's no reason not to let a user prepare a search even if they cannot execute it immediately.
    – TripeHound
    Jun 11, 2018 at 9:26

(3) is the correct response, in my view - unless there is local data which may be searched, in which case you should not disable the search (equivalent to (1)).

Disabling the search function would (if I'm the user) cause me to look twice, to see if there's an obvious reason why. If the connectivity indicator is easily visible (without being bothersomely prominent), that will answer the question.

I have an app on my tablet which can search both locally-stored data and similar data from several on-line sources, and this app has an indicator that always tells me whether I'm connected or not. Since it has locally-stored data, it doesn't disable the search, but I can always see at a glance whether I'm going to be searching only the local data, or the on-line data as well.


There is no need to disabling the search-bar you could show offline notification (there is no need to Disclaimer. lake of connectivity commonly happen) as result to offline search.

Based on your app that you don't keep offline data even before doing search, user will be informed with offline notification.


I would go with option 1. Let the user search for whatever they are searching for and inform them that there is no internet connection. This will also teach them that the internet connectivity is required in order to search on your app. People learn a lot from their mistakes!

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.