During the development of our mobile applications, they go through a development phase, a QA phase and are finally released into production. We create separate builds of the applications for each environment amongst other reasons because they access different backend systems and are created for different target groups (developers, testers, end users)

We have experienced that the different builds can end up in the hands of the wrong people, like development builds ending up in the hands of the QA team. This can lead to confusion because the different target groups only have user accounts on the relevant backend systems (dev/qa/prod) and therefore will experience errors when using the wrong builds. Formalising and automating our build-process should mitigate the risk of this happening, and we are getting there, but in order to fool-proof it we want to visually distinguish the different builds, so it will be caught immediately if something slips through the cracks.

After a bit of googling it seems that water-marked backgrounds are used on the web, but I am wondering whether there is a better way for mobile since there may not be much 'background' space in a mobile application. I am also looking for something easily replicated across applications, since we will be using this strategy in many visually diverse applications.

Is there a better strategy to visually distinguish mobile application builds for different environments (dev/qa/prod)?

The reason I think that this question is relevant in this forum is that the wrong choice could distract and confuse the clients and users during acceptance testing, which is done on the QA environment. Otherwise it would be easy to just change the color of the navigation bar for example.

  • This seems like a problem can that easily be solved through a decent versioning system. Have all 3 versions use different versioning numbers/letter combination so that you can always tell the difference. Then just print the version number on the login page in anon obtrusive way. Jun 4, 2015 at 8:26
  • +1 This is a well reasoned and appropriate question I think. Nice one
    – tohster
    Jun 4, 2015 at 9:29

1 Answer 1


I'm going to assume you need a persistent marker to distinguish the builds (otherwise you could tuck it into a menu, hidden key combination, etc).

In this case, any visual marker will be distracting. The design questions are;

  • How intrusive do you want it to be? If it's critical that users know they are in a test build, then you may actually want the marker to be intrusive as a persistent reminder.

  • What information does it need to carry? Does it just need to distinguish dev from QA, or does it need to carry version numbers, dates, etc.

  • What kind of distraction are you sensitive to? e.g. for functional tests you may be sensitive to markers that intrude on controls or cause control placement to move, for experience testing you may be more sensitive to intrusive colors which may distort user emotional response.

Here is a set of mobile friendly markers which provide different types and degrees of intrusiveness and information:


Only you can figure out what is best for your app given the tradeoffs involved.

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.