diff --git a/src/citra_qt/CMakeLists.txt b/src/citra_qt/CMakeLists.txt
index 2b1c59a92af0fe73402099ed692c6ef30c37adf2..3e6106f0a35f9a1e5143c3141fba11891bdbe4d5 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 bf0ac7c6638af624bdbc670519ad06f2e2174c0f..0b9b73f9e80508e7ed4d57ac884bf3c2cf6b3cd9 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 28b4a3b90ae4ddd1be1623b8db223710e155a8b4..85e206e42798555064eebabb85f5a888dc9a3215 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 3ddcf9232a5fba37bd360af53e75ce46acd4b66e..3fd1d127a5cbca6fc38d6fca8afe98d19da104cc 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 dcc398eee2493c7ded239e791afb9756b2d861f1..263f73f381d31475a7be2634a7dfadd95cc839c1 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 525a7cc4eb5c9fb605a63f3476863a63de29baff..dfc8c03a7ac54f9edaa72e68bab739737140c7ea 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 ac90a6df4726d21c4acd468ede15cdfdb4e0ad4e..a21176c3448928383bb501d3173aee2cfb00dfbb 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 4c0bd42461bf80208b81d3ba1e12417cc94059fc..b5a5ab1e1afe1d43611628d6cd3b3996e99461c1 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 b59713e2cc3504174107e78cc795a8cac89b5689..daac9b63adf928698ac43d76d840102ba4e0a65a 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 040185e82ae043f6f34ce4e4b5c38d4e8a08d191..a3a9015a407ba1ab80e2e4b99e84ed39d53a9cbe 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 2723a021703b35d495498768291b22cf0cd10fa8..73b4dd34f353c11c2544af0b3c4b33c3b5b80887 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"