diff --git a/quantum/action_tapping.c b/quantum/action_tapping.c
index eef6ed1b7db9..09514aa7fd66 100644
--- a/quantum/action_tapping.c
+++ b/quantum/action_tapping.c
@@ -5,7 +5,7 @@
#include "action_tapping.h"
#include "keycode.h"
#include "timer.h"
-#include "keymap.h"
+#include "keymap_common.h"
#ifdef DEBUG_ACTION
# include "debug.h"
diff --git a/quantum/keymap.h b/quantum/keymap.h
index 191e81397789..6520485f7605 100644
--- a/quantum/keymap.h
+++ b/quantum/keymap.h
@@ -33,6 +33,7 @@ along with this program. If not, see .
// #include "print.h"
#include "debug.h"
#include "keycode_config.h"
+#include "keymap_common.h"
// ChibiOS uses RESET in its FlagStatus enumeration
// Therefore define it as QK_RESET here, to avoid name collision
@@ -46,9 +47,6 @@ along with this program. If not, see .
#include "quantum_keycodes.h"
-// translates key to keycode
-uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key);
-
// translates function id to action
uint16_t keymap_function_id_to_action(uint16_t function_id);
diff --git a/quantum/keymap_common.h b/quantum/keymap_common.h
new file mode 100644
index 000000000000..9ff8441e860d
--- /dev/null
+++ b/quantum/keymap_common.h
@@ -0,0 +1,19 @@
+/* Copyright 2021 QMK
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+#pragma once
+
+// translates key to keycode
+uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key);