diff --git a/src/citra_qt/CMakeLists.txt b/src/citra_qt/CMakeLists.txt
index 2b1c59a92a..3e6106f0a3 100644
--- a/src/citra_qt/CMakeLists.txt
+++ b/src/citra_qt/CMakeLists.txt
@@ -3,7 +3,14 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
 
 set(SRCS
-            config.cpp
+            configuration/config.cpp
+            configuration/configure_audio.cpp
+            configuration/configure_debug.cpp
+            configuration/configure_dialog.cpp
+            configuration/configure_general.cpp
+            configuration/configure_graphics.cpp
+            configuration/configure_input.cpp
+            configuration/configure_system.cpp
             debugger/callstack.cpp
             debugger/disassembler.cpp
             debugger/graphics/graphics.cpp
@@ -19,13 +26,6 @@ set(SRCS
             util/spinbox.cpp
             util/util.cpp
             bootmanager.cpp
-            configure_audio.cpp
-            configure_debug.cpp
-            configure_dialog.cpp
-            configure_general.cpp
-            configure_graphics.cpp
-            configure_system.cpp
-            configure_input.cpp
             game_list.cpp
             hotkeys.cpp
             main.cpp
@@ -35,7 +35,14 @@ set(SRCS
             )
 
 set(HEADERS
-            config.h
+            configuration/config.h
+            configuration/configure_audio.h
+            configuration/configure_debug.h
+            configuration/configure_dialog.h
+            configuration/configure_general.h
+            configuration/configure_graphics.h
+            configuration/configure_input.h
+            configuration/configure_system.h
             debugger/callstack.h
             debugger/disassembler.h
             debugger/graphics/graphics.h
@@ -52,13 +59,6 @@ set(HEADERS
             util/spinbox.h
             util/util.h
             bootmanager.h
-            configure_audio.h
-            configure_debug.h
-            configure_dialog.h
-            configure_general.h
-            configure_graphics.h
-            configure_system.h
-            configure_input.h
             game_list.h
             game_list_p.h
             hotkeys.h
@@ -67,16 +67,16 @@ set(HEADERS
             )
 
 set(UIS
+            configuration/configure.ui
+            configuration/configure_audio.ui
+            configuration/configure_debug.ui
+            configuration/configure_general.ui
+            configuration/configure_graphics.ui
+            configuration/configure_input.ui
+            configuration/configure_system.ui
             debugger/callstack.ui
             debugger/disassembler.ui
             debugger/registers.ui
-            configure.ui
-            configure_audio.ui
-            configure_debug.ui
-            configure_general.ui
-            configure_graphics.ui
-            configure_system.ui
-            configure_input.ui
             hotkeys.ui
             main.ui
             )
diff --git a/src/citra_qt/config.cpp b/src/citra_qt/configuration/config.cpp
similarity index 99%
rename from src/citra_qt/config.cpp
rename to src/citra_qt/configuration/config.cpp
index bf0ac7c663..0b9b73f9e8 100644
--- a/src/citra_qt/config.cpp
+++ b/src/citra_qt/configuration/config.cpp
@@ -3,7 +3,7 @@
 // Refer to the license.txt file included.
 
 #include <QSettings>
-#include "citra_qt/config.h"
+#include "citra_qt/configuration/config.h"
 #include "citra_qt/ui_settings.h"
 #include "common/file_util.h"
 #include "input_common/main.h"
diff --git a/src/citra_qt/config.h b/src/citra_qt/configuration/config.h
similarity index 100%
rename from src/citra_qt/config.h
rename to src/citra_qt/configuration/config.h
diff --git a/src/citra_qt/configure.ui b/src/citra_qt/configuration/configure.ui
similarity index 91%
rename from src/citra_qt/configure.ui
rename to src/citra_qt/configuration/configure.ui
index 28b4a3b90a..85e206e427 100644
--- a/src/citra_qt/configure.ui
+++ b/src/citra_qt/configuration/configure.ui
@@ -64,37 +64,37 @@
   <customwidget>
    <class>ConfigureGeneral</class>
    <extends>QWidget</extends>
-   <header>configure_general.h</header>
+   <header>configuration/configure_general.h</header>
    <container>1</container>
   </customwidget>
   <customwidget>
    <class>ConfigureSystem</class>
    <extends>QWidget</extends>
-   <header>configure_system.h</header>
+   <header>configuration/configure_system.h</header>
    <container>1</container>
   </customwidget>
   <customwidget>
    <class>ConfigureAudio</class>
    <extends>QWidget</extends>
-   <header>configure_audio.h</header>
+   <header>configuration/configure_audio.h</header>
    <container>1</container>
   </customwidget>
   <customwidget>
    <class>ConfigureDebug</class>
    <extends>QWidget</extends>
-   <header>configure_debug.h</header>
+   <header>configuration/configure_debug.h</header>
    <container>1</container>
   </customwidget>
   <customwidget>
    <class>ConfigureInput</class>
    <extends>QWidget</extends>
-   <header>configure_input.h</header>
+   <header>configuration/configure_input.h</header>
    <container>1</container>
   </customwidget>
   <customwidget>
    <class>ConfigureGraphics</class>
    <extends>QWidget</extends>
-   <header>configure_graphics.h</header>
+   <header>configuration/configure_graphics.h</header>
    <container>1</container>
   </customwidget>
  </customwidgets>
diff --git a/src/citra_qt/configure_audio.cpp b/src/citra_qt/configuration/configure_audio.cpp
similarity index 98%
rename from src/citra_qt/configure_audio.cpp
rename to src/citra_qt/configuration/configure_audio.cpp
index 3ddcf9232a..3fd1d127a5 100644
--- a/src/citra_qt/configure_audio.cpp
+++ b/src/citra_qt/configuration/configure_audio.cpp
@@ -6,7 +6,7 @@
 #include "audio_core/audio_core.h"
 #include "audio_core/sink.h"
 #include "audio_core/sink_details.h"
-#include "citra_qt/configure_audio.h"
+#include "citra_qt/configuration/configure_audio.h"
 #include "core/settings.h"
 #include "ui_configure_audio.h"
 
diff --git a/src/citra_qt/configure_audio.h b/src/citra_qt/configuration/configure_audio.h
similarity index 100%
rename from src/citra_qt/configure_audio.h
rename to src/citra_qt/configuration/configure_audio.h
diff --git a/src/citra_qt/configure_audio.ui b/src/citra_qt/configuration/configure_audio.ui
similarity index 100%
rename from src/citra_qt/configure_audio.ui
rename to src/citra_qt/configuration/configure_audio.ui
diff --git a/src/citra_qt/configure_debug.cpp b/src/citra_qt/configuration/configure_debug.cpp
similarity index 94%
rename from src/citra_qt/configure_debug.cpp
rename to src/citra_qt/configuration/configure_debug.cpp
index dcc398eee2..263f73f381 100644
--- a/src/citra_qt/configure_debug.cpp
+++ b/src/citra_qt/configuration/configure_debug.cpp
@@ -2,7 +2,7 @@
 // Licensed under GPLv2 or any later version
 // Refer to the license.txt file included.
 
-#include "citra_qt/configure_debug.h"
+#include "citra_qt/configuration/configure_debug.h"
 #include "core/settings.h"
 #include "ui_configure_debug.h"
 
diff --git a/src/citra_qt/configure_debug.h b/src/citra_qt/configuration/configure_debug.h
similarity index 100%
rename from src/citra_qt/configure_debug.h
rename to src/citra_qt/configuration/configure_debug.h
diff --git a/src/citra_qt/configure_debug.ui b/src/citra_qt/configuration/configure_debug.ui
similarity index 100%
rename from src/citra_qt/configure_debug.ui
rename to src/citra_qt/configuration/configure_debug.ui
diff --git a/src/citra_qt/configure_dialog.cpp b/src/citra_qt/configuration/configure_dialog.cpp
similarity index 88%
rename from src/citra_qt/configure_dialog.cpp
rename to src/citra_qt/configuration/configure_dialog.cpp
index 525a7cc4eb..dfc8c03a7a 100644
--- a/src/citra_qt/configure_dialog.cpp
+++ b/src/citra_qt/configuration/configure_dialog.cpp
@@ -2,8 +2,8 @@
 // Licensed under GPLv2 or any later version
 // Refer to the license.txt file included.
 
-#include "citra_qt/config.h"
-#include "citra_qt/configure_dialog.h"
+#include "citra_qt/configuration/config.h"
+#include "citra_qt/configuration/configure_dialog.h"
 #include "core/settings.h"
 #include "ui_configure.h"
 
diff --git a/src/citra_qt/configure_dialog.h b/src/citra_qt/configuration/configure_dialog.h
similarity index 100%
rename from src/citra_qt/configure_dialog.h
rename to src/citra_qt/configuration/configure_dialog.h
diff --git a/src/citra_qt/configure_general.cpp b/src/citra_qt/configuration/configure_general.cpp
similarity index 96%
rename from src/citra_qt/configure_general.cpp
rename to src/citra_qt/configuration/configure_general.cpp
index ac90a6df47..a21176c344 100644
--- a/src/citra_qt/configure_general.cpp
+++ b/src/citra_qt/configuration/configure_general.cpp
@@ -2,7 +2,7 @@
 // Licensed under GPLv2 or any later version
 // Refer to the license.txt file included.
 
-#include "citra_qt/configure_general.h"
+#include "citra_qt/configuration/configure_general.h"
 #include "citra_qt/ui_settings.h"
 #include "core/core.h"
 #include "core/settings.h"
diff --git a/src/citra_qt/configure_general.h b/src/citra_qt/configuration/configure_general.h
similarity index 100%
rename from src/citra_qt/configure_general.h
rename to src/citra_qt/configuration/configure_general.h
diff --git a/src/citra_qt/configure_general.ui b/src/citra_qt/configuration/configure_general.ui
similarity index 100%
rename from src/citra_qt/configure_general.ui
rename to src/citra_qt/configuration/configure_general.ui
diff --git a/src/citra_qt/configure_graphics.cpp b/src/citra_qt/configuration/configure_graphics.cpp
similarity index 98%
rename from src/citra_qt/configure_graphics.cpp
rename to src/citra_qt/configuration/configure_graphics.cpp
index 4c0bd42461..b5a5ab1e1a 100644
--- a/src/citra_qt/configure_graphics.cpp
+++ b/src/citra_qt/configuration/configure_graphics.cpp
@@ -2,7 +2,7 @@
 // Licensed under GPLv2 or any later version
 // Refer to the license.txt file included.
 
-#include "citra_qt/configure_graphics.h"
+#include "citra_qt/configuration/configure_graphics.h"
 #include "core/core.h"
 #include "core/settings.h"
 #include "ui_configure_graphics.h"
diff --git a/src/citra_qt/configure_graphics.h b/src/citra_qt/configuration/configure_graphics.h
similarity index 100%
rename from src/citra_qt/configure_graphics.h
rename to src/citra_qt/configuration/configure_graphics.h
diff --git a/src/citra_qt/configure_graphics.ui b/src/citra_qt/configuration/configure_graphics.ui
similarity index 100%
rename from src/citra_qt/configure_graphics.ui
rename to src/citra_qt/configuration/configure_graphics.ui
diff --git a/src/citra_qt/configure_input.cpp b/src/citra_qt/configuration/configure_input.cpp
similarity index 98%
rename from src/citra_qt/configure_input.cpp
rename to src/citra_qt/configuration/configure_input.cpp
index b59713e2cc..daac9b63ad 100644
--- a/src/citra_qt/configure_input.cpp
+++ b/src/citra_qt/configuration/configure_input.cpp
@@ -6,8 +6,8 @@
 #include <memory>
 #include <utility>
 #include <QTimer>
-#include "citra_qt/config.h"
-#include "citra_qt/configure_input.h"
+#include "citra_qt/configuration/config.h"
+#include "citra_qt/configuration/configure_input.h"
 #include "common/param_package.h"
 #include "input_common/main.h"
 
diff --git a/src/citra_qt/configure_input.h b/src/citra_qt/configuration/configure_input.h
similarity index 100%
rename from src/citra_qt/configure_input.h
rename to src/citra_qt/configuration/configure_input.h
diff --git a/src/citra_qt/configure_input.ui b/src/citra_qt/configuration/configure_input.ui
similarity index 100%
rename from src/citra_qt/configure_input.ui
rename to src/citra_qt/configuration/configure_input.ui
diff --git a/src/citra_qt/configure_system.cpp b/src/citra_qt/configuration/configure_system.cpp
similarity index 98%
rename from src/citra_qt/configure_system.cpp
rename to src/citra_qt/configuration/configure_system.cpp
index 040185e82a..a3a9015a40 100644
--- a/src/citra_qt/configure_system.cpp
+++ b/src/citra_qt/configuration/configure_system.cpp
@@ -2,7 +2,7 @@
 // Licensed under GPLv2 or any later version
 // Refer to the license.txt file included.
 
-#include "citra_qt/configure_system.h"
+#include "citra_qt/configuration/configure_system.h"
 #include "citra_qt/ui_settings.h"
 #include "core/core.h"
 #include "core/hle/service/cfg/cfg.h"
diff --git a/src/citra_qt/configure_system.h b/src/citra_qt/configuration/configure_system.h
similarity index 100%
rename from src/citra_qt/configure_system.h
rename to src/citra_qt/configuration/configure_system.h
diff --git a/src/citra_qt/configure_system.ui b/src/citra_qt/configuration/configure_system.ui
similarity index 100%
rename from src/citra_qt/configure_system.ui
rename to src/citra_qt/configuration/configure_system.ui
diff --git a/src/citra_qt/main.cpp b/src/citra_qt/main.cpp
index 2723a02170..73b4dd34f3 100644
--- a/src/citra_qt/main.cpp
+++ b/src/citra_qt/main.cpp
@@ -14,8 +14,8 @@
 #include <QtGui>
 #include <QtWidgets>
 #include "citra_qt/bootmanager.h"
-#include "citra_qt/config.h"
-#include "citra_qt/configure_dialog.h"
+#include "citra_qt/configuration/config.h"
+#include "citra_qt/configuration/configure_dialog.h"
 #include "citra_qt/debugger/callstack.h"
 #include "citra_qt/debugger/disassembler.h"
 #include "citra_qt/debugger/graphics/graphics.h"