diff --git a/src/version.js b/src/version.js
index 45c39916ee92ec1baa4c363e3a1db4cab47e7816..f14e4e636343f932fd4ebbdab22df1c7ac104293 100644
--- a/src/version.js
+++ b/src/version.js
@@ -2,6 +2,7 @@ import fetch from 'node-fetch'
 import { config } from './config.js'
 import { getRedisKey, hash } from './util.js'
 import { logger } from './logger.js'
+import * as cache from './cache.js'
 import * as redis from './redis.js'
 
 let latestVersion
@@ -49,15 +50,16 @@ export async function getLatestVersion () {
 }
 
 export function registerLatestVersionListener (client) {
-  if (redis.isEnabled()) {
-    const key = getRedisKey({ name: 'updateLatestVersion' })
-    client.subscribe(key, (errs, count) => logger.info(`[Redis] Subscribed to ${key}.`))
-    client.on('message', async (channel, message) => {
-      if (channel !== key) return
-      await config.load()
-      latestVersion = message
-    })
-  }
+  if (!redis.isEnabled()) return
+
+  const key = getRedisKey({ name: 'updateLatestVersion' })
+  client.subscribe(key, (errs, count) => logger.info(`[Redis] Subscribed to ${key}.`))
+  client.on('message', async (channel, message) => {
+    if (channel !== key) return
+    await config.load()
+    cache.clear()
+    latestVersion = message
+  })
 }
 
 export async function updateVersionProcessor () {
@@ -70,6 +72,9 @@ export async function updateVersionProcessor () {
   if (redis.isEnabled()) {
     redis.pubClient.publish(getRedisKey({ name: 'updateLatestVersion' }), fetchedVersion)
     await redis.client.set(getRedisKey({ name: 'latestVersion' }), fetchedVersion)
+  } else {
+    // if redis is disabled, this will only be trigger by a setInterval and not from a redis event
+    cache.clear()
   }
   return (latestVersion = fetchedVersion)
 }