diff --git a/src/plugins/irc/irc-config.c b/src/plugins/irc/irc-config.c
index ff4773a..35d6998 100644
--- a/src/plugins/irc/irc-config.c
+++ b/src/plugins/irc/irc-config.c
@@ -131,6 +131,7 @@ struct t_config_option *irc_config_network_lag_refresh_interval;
 struct t_config_option *irc_config_network_notify_check_ison;
 struct t_config_option *irc_config_network_notify_check_whois;
 struct t_config_option *irc_config_network_send_unknown_commands;
+struct t_config_option *irc_config_network_alternate_nick;
 
 /* IRC config, server section */
 
@@ -2525,6 +2526,11 @@ irc_config_init ()
         N_("send unknown commands to server"),
         NULL, 0, 0, "off", NULL, 0, NULL, NULL,
         &irc_config_change_network_send_unknown_commands, NULL, NULL, NULL);
+    irc_config_network_alternate_nick = weechat_config_new_option (
+        irc_config_file, ptr_section,
+        "alternate_nick", "boolean",
+        N_("get an alternate nick when the nick is already used on server"),
+        NULL, 0, 0, "on", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
     irc_config_network_notify_check_ison = weechat_config_new_option (
         irc_config_file, ptr_section,
         "notify_check_ison", "integer",
diff --git a/src/plugins/irc/irc-config.h b/src/plugins/irc/irc-config.h
index cdc95c2..0f0cf45 100644
--- a/src/plugins/irc/irc-config.h
+++ b/src/plugins/irc/irc-config.h
@@ -160,6 +160,7 @@ extern struct t_config_option *irc_config_network_lag_refresh_interval;
 extern struct t_config_option *irc_config_network_notify_check_ison;
 extern struct t_config_option *irc_config_network_notify_check_whois;
 extern struct t_config_option *irc_config_network_send_unknown_commands;
+extern struct t_config_option *irc_config_network_alternate_nick;
 
 extern struct t_config_option *irc_config_server_default[];
 
diff --git a/src/plugins/irc/irc-server.c b/src/plugins/irc/irc-server.c
index 6c7100f..4ea0a43 100644
--- a/src/plugins/irc/irc-server.c
+++ b/src/plugins/irc/irc-server.c
@@ -537,6 +537,9 @@ irc_server_get_alternate_nick (struct t_irc_server *server)
             return nick;
         }
 
+        if (!weechat_config_boolean (irc_config_network_alternate_nick))
+            return NULL;
+
         /*
          * we have tried all nicks in list, then use main nick
          * and we will add "_" and then number if needed
