diff --git a/__tests__/src/actions/window.test.js b/__tests__/src/actions/window.test.js
index e7242be02c0aa389ad2689605295229b02469c2b..92985b557ba6900e9197b4a7f887d1c2e945de9a 100644
--- a/__tests__/src/actions/window.test.js
+++ b/__tests__/src/actions/window.test.js
@@ -150,7 +150,9 @@ describe('window actions', () => {
         companionWindows: {},
         config: {
           thumbnailNavigation: {},
-          window: {},
+          window: {
+            defaultSideBarPanel: 'info',
+          },
         },
         windows: {},
       };
@@ -167,6 +169,35 @@ describe('window actions', () => {
       expect(action.window.companionWindowIds[2]).toEqual(action.companionWindows[2].id);
       expect(action.companionWindows[2]).toMatchObject({ content: 'attribution', position: 'right' });
     });
+    it('creates a new window without a default sidebar', () => {
+      const options = {
+        canvasIndex: 1,
+        companionWindows: [],
+        id: 'helloworld',
+      };
+
+      const mockState = {
+        companionWindows: {},
+        config: {
+          thumbnailNavigation: {},
+          window: {
+            defaultSideBarPanel: null,
+          },
+        },
+        windows: {},
+      };
+
+      const mockDispatch = jest.fn(() => ({}));
+      const mockGetState = jest.fn(() => mockState);
+      const thunk = actions.addWindow(options);
+
+      thunk(mockDispatch, mockGetState);
+
+      const action = mockDispatch.mock.calls[0][0];
+
+      expect(action.window.companionWindowIds.length).toEqual(1);
+      expect(action.companionWindows[0]).toMatchObject({ content: 'thumbnailNavigation' });
+    });
   });
 
   describe('updateWindow', () => {
diff --git a/src/state/actions/window.js b/src/state/actions/window.js
index 0556fbc65b410854bc57a9f36daa02311db474c0..ebf2cf10f4a6f1103cba4aa10b16f73baaaa8266 100644
--- a/src/state/actions/window.js
+++ b/src/state/actions/window.js
@@ -42,14 +42,37 @@ export function addWindow({ companionWindows, ...options }) {
     const { config, windows } = getState();
     const numWindows = Object.keys(windows).length;
 
-    const cwDefault = `cw-${uuid()}`;
     const cwThumbs = `cw-${uuid()}`;
-    const additionalCompanionWindowIds = (companionWindows || []).map(e => `cw-${uuid()}`);
+
+    const defaultCompanionWindows = [
+      {
+        content: 'thumbnailNavigation',
+        default: true,
+        id: cwThumbs,
+        position: options.thumbnailNavigationPosition
+          || config.thumbnailNavigation.defaultPosition,
+      },
+      ...(
+        (companionWindows || []).map((cw, i) => ({ ...cw, id: `cw-${uuid()}` }))
+      ),
+    ];
+
+    if (config.window.defaultSideBarPanel) {
+      defaultCompanionWindows.unshift(
+        {
+          content: config.window.defaultSideBarPanel,
+          default: true,
+          id: `cw-${uuid()}`,
+          position: 'left',
+        },
+      );
+    }
+
     const defaultOptions = {
       canvasId: undefined,
       collectionIndex: 0,
       companionAreaOpen: true,
-      companionWindowIds: [cwDefault, cwThumbs, ...additionalCompanionWindowIds],
+      companionWindowIds: defaultCompanionWindows.map(cw => cw.id),
       displayAllAnnotations: config.displayAllAnnotations || false,
       draggingEnabled: true,
       id: `window-${uuid()}`,
@@ -59,7 +82,7 @@ export function addWindow({ companionWindows, ...options }) {
       rangeId: null,
       rotation: null,
       selectedAnnotations: {},
-      sideBarOpen: config.window.sideBarOpenByDefault,
+      sideBarOpen: config.window.defaultSideBarPanel && config.window.sideBarOpenByDefault,
       sideBarPanel: config.window.defaultSideBarPanel,
       thumbnailNavigationId: cwThumbs,
     };
@@ -72,24 +95,7 @@ export function addWindow({ companionWindows, ...options }) {
     };
 
     dispatch({
-      companionWindows: [
-        {
-          content: config.window.defaultSideBarPanel,
-          default: true,
-          id: cwDefault,
-          position: 'left',
-        },
-        {
-          content: 'thumbnailNavigation',
-          default: true,
-          id: cwThumbs,
-          position: options.thumbnailNavigationPosition
-            || config.thumbnailNavigation.defaultPosition,
-        },
-        ...(
-          (companionWindows || []).map((cw, i) => ({ ...cw, id: additionalCompanionWindowIds[i] }))
-        ),
-      ],
+      companionWindows: defaultCompanionWindows,
       elasticLayout,
       type: ActionTypes.ADD_WINDOW,
       window: { ...defaultOptions, ...options },