diff --git a/src/contentScripts/communityConsole/start.js b/src/contentScripts/communityConsole/start.js
index 9c14a43..782569f 100644
--- a/src/contentScripts/communityConsole/start.js
+++ b/src/contentScripts/communityConsole/start.js
@@ -1,12 +1,10 @@
-import {injectStylesheet, injectScript} from '../../common/contentScriptsUtils.js';
+import {injectScript, injectStylesheet} from '../../common/contentScriptsUtils.js';
 
-const SMEI_SORT_DIRECTION = 8;
 const SMEI_UNIFIED_PROFILES = 9;
 
 chrome.storage.sync.get(null, function(items) {
   /* IMPORTANT NOTE: Remember to change this when changing the "ifs" below!! */
-  if (items.loaddrafts || items.smei_sortdirection ||
-      items.disableunifiedprofiles) {
+  if (items.loaddrafts || items.disableunifiedprofiles) {
     var startup =
         JSON.parse(document.querySelector('html').getAttribute('data-startup'));
 
@@ -14,11 +12,6 @@
       startup[4][13] = true;
     }
 
-    if (items.smei_sortdirection) {
-      if (!startup[1][6].includes(SMEI_SORT_DIRECTION))
-        startup[1][6].push(SMEI_SORT_DIRECTION);
-    }
-
     if (items.disableunifiedprofiles) {
       var index = startup[1][6].indexOf(SMEI_UNIFIED_PROFILES);
       if (index > -1) startup[1][6].splice(index, 1);
