diff --git a/web/app.react.js b/web/app.react.js
--- a/web/app.react.js
+++ b/web/app.react.js
@@ -29,7 +29,7 @@
 import { TunnelbrokerProvider } from 'lib/tunnelbroker/tunnelbroker-context.js';
 import type { LoadingStatus } from 'lib/types/loading-types.js';
 import type { Dispatch } from 'lib/types/redux-types.js';
-import { registerConfig } from 'lib/utils/config.js';
+import { getConfig, registerConfig } from 'lib/utils/config.js';
 import { useDispatch } from 'lib/utils/redux-utils.js';
 import { infoFromURL } from 'lib/utils/url-utils.js';
 import { AlchemyENSCacheProvider, wagmiConfig } from 'lib/utils/wagmi-utils.js';
@@ -42,6 +42,7 @@
 import { EditModalProvider } from './chat/edit-message-provider.js';
 import NavigationArrows from './components/navigation-arrows.react.js';
 import { initOpaque } from './crypto/opaque-utils.js';
+import { getDatabaseModule } from './database/database-module-provider.js';
 import electron from './electron.js';
 import InputStateContainer from './input/input-state-container.react.js';
 import InviteLinkHandler from './invite-links/invite-link-handler.react.js';
@@ -101,6 +102,17 @@
   },
 });
 
+const versionBroadcast = new BroadcastChannel('comm_version');
+versionBroadcast.postMessage(getConfig().platformDetails.codeVersion);
+versionBroadcast.onmessage = (event: MessageEvent) => {
+  if (event.data && event.data !== getConfig().platformDetails.codeVersion) {
+    location.reload();
+  }
+};
+
+// Start initializing the database immediately
+void getDatabaseModule();
+
 type BaseProps = {
   +location: {
     +pathname: string,
diff --git a/web/database/database-module-provider.js b/web/database/database-module-provider.js
--- a/web/database/database-module-provider.js
+++ b/web/database/database-module-provider.js
@@ -3,6 +3,8 @@
 import invariant from 'invariant';
 import localforage from 'localforage';
 
+import { getConfig } from 'lib/utils/config.js';
+
 import {
   DATABASE_WORKER_PATH,
   WORKERS_MODULES_DIR_PATH,
@@ -68,7 +70,10 @@
         });
       }
 
-      this.worker = new SharedWorker(DATABASE_WORKER_PATH);
+      const codeVersion = getConfig().platformDetails.codeVersion ?? '';
+      const workerName = `comm-app-database-${codeVersion}`;
+
+      this.worker = new SharedWorker(DATABASE_WORKER_PATH, workerName);
       this.worker.onerror = console.error;
       this.workerProxy = new WorkerConnectionProxy(
         this.worker.port,
@@ -153,7 +158,5 @@
   await newModule.init({ clearDatabase: false });
   return newModule;
 }
-// Start initializing the database immediately
-void getDatabaseModule();
 
 export { getDatabaseModule };