diff --git a/docs/config.md b/docs/config.md
index 3102eaf83e..a1d6304e2e 100644
--- a/docs/config.md
+++ b/docs/config.md
@@ -32,7 +32,7 @@ For a good example, see https://riot.im/develop/config.json.
    homeserver know what email template to use when talking to you.
 1. `branding`: Configures various branding and logo details, such as:
     1. `welcomeBackgroundUrl`: An image to use as a wallpaper outside the app
-       during authentication flows
+       during authentication flows. If an array is passed, an image is chosen randomly for each visit.
     1. `authHeaderLogoUrl`: An logo image that is shown in the header during
        authentication flows
     1. `authFooterLinks`: a list of links to show in the authentication page footer:
diff --git a/src/components/views/auth/VectorAuthPage.js b/src/components/views/auth/VectorAuthPage.js
index 98ddb8ba0f..b1cd7c22d9 100644
--- a/src/components/views/auth/VectorAuthPage.js
+++ b/src/components/views/auth/VectorAuthPage.js
@@ -29,7 +29,11 @@ export default class VectorAuthPage extends React.PureComponent {
         const brandingConfig = SdkConfig.get().branding;
         let backgroundUrl = "themes/riot/img/backgrounds/valley.jpg";
         if (brandingConfig && brandingConfig.welcomeBackgroundUrl) {
-            backgroundUrl = brandingConfig.welcomeBackgroundUrl;
+            if (Array.isArray(brandingConfig.welcomeBackgroundUrl)) {
+                backgroundUrl = brandingConfig.welcomeBackgroundUrl[ Math.floor(Math.random() * brandingConfig.welcomeBackgroundUrl.length)];
+            } else {
+                backgroundUrl = brandingConfig.welcomeBackgroundUrl;
+            }
         }
 
         const pageStyle = {