diff --git a/Tests/LibWeb/Text/expected/checkbox-focus-lost-no-change-event.txt b/Tests/LibWeb/Text/expected/checkbox-focus-lost-no-change-event.txt
new file mode 100644
index 00000000000000..1a4baf536d705b
--- /dev/null
+++ b/Tests/LibWeb/Text/expected/checkbox-focus-lost-no-change-event.txt
@@ -0,0 +1 @@
+
diff --git a/Tests/LibWeb/Text/input/checkbox-focus-lost-no-change-event.html b/Tests/LibWeb/Text/input/checkbox-focus-lost-no-change-event.html
new file mode 100644
index 00000000000000..0a581b3100b7a4
--- /dev/null
+++ b/Tests/LibWeb/Text/input/checkbox-focus-lost-no-change-event.html
@@ -0,0 +1,16 @@
+
+
+
+
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLInputElement.cpp b/Userland/Libraries/LibWeb/HTML/HTMLInputElement.cpp
index b56feaa12cc6b0..7f7ad756fd92c4 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLInputElement.cpp
+++ b/Userland/Libraries/LibWeb/HTML/HTMLInputElement.cpp
@@ -615,6 +615,7 @@ void HTMLInputElement::commit_pending_changes()
case TypeAttributeState::Telephone:
case TypeAttributeState::Text:
case TypeAttributeState::URL:
+ case TypeAttributeState::Checkbox:
if (!m_has_uncommitted_changes)
return;
break;