diff --git a/src/managesieve-login/managesieve-login-settings.c b/src/managesieve-login/managesieve-login-settings.c
index 03b95aa863aab2c6d5dd0cdcce9084541c206dad..7fa8dc214d0e73e1ed63d587dc35fdf01e9a1fdc 100644
--- a/src/managesieve-login/managesieve-login-settings.c
+++ b/src/managesieve-login/managesieve-login-settings.c
@@ -10,6 +10,9 @@
 #include "settings-parser.h"
 #include "service-settings.h"
 #include "login-settings.h"
+
+#include "pigeonhole-config.h"
+
 #include "managesieve-login-settings.h"
 
 #include <stddef.h>
@@ -69,7 +72,7 @@ static const struct setting_define managesieve_login_setting_defines[] = {
 };
 
 static const struct managesieve_login_settings managesieve_login_default_settings = {
-	.managesieve_implementation_string = PACKAGE_NAME,
+	.managesieve_implementation_string = DOVECOT_NAME " " PIGEONHOLE_NAME,
 	.managesieve_sieve_capability = "",
 	.managesieve_notify_capability = NULL
 };
diff --git a/src/managesieve/managesieve-settings.c b/src/managesieve/managesieve-settings.c
index 26561ba4ddc6124f4ccfbb8f70394acc8536b088..bcaada8d6370d0342f71644d8384b9f8e2eb7442 100644
--- a/src/managesieve/managesieve-settings.c
+++ b/src/managesieve/managesieve-settings.c
@@ -6,6 +6,9 @@
 #include "settings-parser.h"
 #include "service-settings.h"
 #include "mail-storage-settings.h"
+
+#include "pigeonhole-config.h"
+
 #include "managesieve-settings.h"
 
 #include <stddef.h>
@@ -82,7 +85,7 @@ static struct managesieve_settings managesieve_default_settings = {
 	   break large message sets to multiple commands, so we're pretty
 	   liberal by default. */
 	.managesieve_max_line_length = 65536,
-	.managesieve_implementation_string = PACKAGE_NAME,
+	.managesieve_implementation_string = DOVECOT_NAME " " PIGEONHOLE_NAME,
 	.managesieve_client_workarounds = "",
 	.managesieve_logout_format = "bytes=%i/%o",
 	.managesieve_max_compile_errors = 5