diff --git a/keyboards/kinesis/keymaps/stapelberg/keymap.c b/keyboards/kinesis/keymaps/stapelberg/keymap.c
new file mode 100644
index 0000000000..c62ffbbccf
--- /dev/null
+++ b/keyboards/kinesis/keymaps/stapelberg/keymap.c
@@ -0,0 +1,69 @@
+/* Copyright 2021 Michael Stapelberg
+ *
+ * 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 2 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+#define QWERTY 0 // Base qwerty
+
+
+/****************************************************************************************************
+*
+* Keymap: Default Layer in Qwerty
+*
+* ,-------------------------------------------------------------------------------------------------------------------.
+* | Esc    |  F1  |  F2  |  F3  |  F4  |  F5  |  F6  |  F8  |  F9  |  F10 |  F12 | PSCR | SLCK | PAUS |  FN0 |  BOOT  |
+* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------|
+* | =+     |  1!  |  2@  |  3#  |  4$  |  5%  |                           |  6^  |  7&  |  8*  |  9(  |  0)  | -_     |
+* |--------+------+------+------+------+------|                           +------+------+------+------+------+--------|
+* | Tab    |   Q  |   W  |   E  |   R  |   T  |                           |   Y  |   U  |   I  |   O  |   P  | \|     |
+* |--------+------+------+------+------+------|                           |------+------+------+------+------+--------|
+* | Caps   |   A  |   S  |   D  |   F  |   G  |                           |   H  |   J  |   K  |   L  |  ;:  | '"     |
+* |--------+------+------+------+------+------|                           |------+------+------+------+------+--------|
+* | Shift  |   Z  |   X  |   C  |   V  |   B  |                           |   N  |   M  |  ,.  |  .>  |  /?  | Shift  |
+* `--------+------+------+------+------+-------                           `------+------+------+------+------+--------'
+*          | `~   | INS  | Left | Right|                                         | Up   | Down |  [{  |  ]}  |
+*          `---------------------------'                                         `---------------------------'
+*                                        ,-------------.         ,-------------.
+*                                        | Ctrl | Alt  |         | Gui  | Ctrl |
+*                                 ,------|------|------|         |------+------+------.
+*                                 |      |      | Home |         | PgUp |      |      |
+*                                 | BkSp | Del  |------|         |------|Return| Space|
+*                                 |      |      | End  |         | PgDn |      |      |
+*                                 `--------------------'         `--------------------'
+*/
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[QWERTY] = LAYOUT(
+           KC_DEL, KC_F1  ,KC_F2  ,KC_F3  ,KC_F4  ,KC_F5  ,KC_F6  ,KC_F7  ,KC_F8,
+           KC_EQL, KC_1   ,KC_2   ,KC_3   ,KC_4   ,KC_5   ,
+           KC_TAB, KC_Q   ,KC_W   ,KC_E   ,KC_R   ,KC_T   ,
+           KC_CAPS,KC_A   ,KC_S   ,KC_D   ,KC_F   ,KC_G   ,
+           KC_LSFT,KC_Z   ,KC_X   ,KC_C   ,KC_V   ,KC_B   ,
+                   KC_GRV ,KC_INS ,KC_LEFT,KC_RGHT,
+			   KC_LCTL,KC_LALT,
+                                    KC_LGUI,
+                           KC_BSPC,KC_ESC ,KC_END ,
+    KC_F9  ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK  ,KC_PAUS, KC_FN0, RESET,
+	KC_6   ,KC_7   ,KC_8   ,KC_9   ,KC_0   ,KC_MINS,
+	KC_Y   ,KC_U   ,KC_I   ,KC_O   ,KC_P   ,KC_BSLS,
+	KC_H   ,KC_J   ,KC_K   ,KC_L   ,KC_SCLN,KC_QUOT,
+	KC_N   ,KC_M   ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,
+		KC_UP  ,KC_DOWN,KC_LBRC,KC_RBRC,
+           KC_RALT,KC_RCTL,
+           KC_PGUP,
+           KC_PGDN,KC_ENTER ,KC_SPC
+    )
+};
diff --git a/keyboards/kinesis/keymaps/stapelberg/readme.md b/keyboards/kinesis/keymaps/stapelberg/readme.md
new file mode 100644
index 0000000000..16bf8c379f
--- /dev/null
+++ b/keyboards/kinesis/keymaps/stapelberg/readme.md
@@ -0,0 +1,27 @@
+# Michael Stapelberg’s keymap for the Kinesis Advantage
+
+I adjust the thumb block mapping slightly to have a standard set of modifiers
+(Control, Alt, GUI/Windows, Right Alt) and Escape available conveniently.
+
+Specifically, my keymap makes the following changes:
+
+* Left thumb block:
+  * Swap `Delete` with `Escape` (top left), from my Vim days :)
+  * The `Home` key on the left thumb block is replaced by `Left GUI/Windows`.
+* Right thumb block:
+  * The top left key on the right thumb block produces `Right Alt`.
+
+## Corresponding Kinesis configuration
+
+My keymap corresponds to the following Kinesis configuration tool settings:
+
+```
+[escape]>[delete]
+[rwin]>[ralt]
+[delete]>[escape]
+[home]>[lwin]
+[intl-\]>[kp-insert]
+```
+
+Note: the last line makes the international key (labeled `|`, `\` and `Insert`)
+produce `Insert`, which is default with QMK, but not default Kinesis.
diff --git a/keyboards/kinesis/keymaps/stapelberg/rules.mk b/keyboards/kinesis/keymaps/stapelberg/rules.mk
new file mode 100644
index 0000000000..f5557c73b5
--- /dev/null
+++ b/keyboards/kinesis/keymaps/stapelberg/rules.mk
@@ -0,0 +1,3 @@
+BOOTMAGIC_ENABLE = no
+COMMAND_ENABLE = yes
+NKRO_ENABLE = yes