diff --git a/src/common/connection.py b/src/common/connection.py
index 92372b62e40daa3f7683bc29fc7cb589e7e83460..d5ab1d9fa08ce859764cbd9d7ae8124302135b2f 100644
--- a/src/common/connection.py
+++ b/src/common/connection.py
@@ -858,6 +858,9 @@ class Connection(ConnectionHandlers):
 		if not self.connection:
 			return
 		show = helpers.get_xmpp_show(STATUS_LIST[self.connected])
+		if show == 'invisible':
+			# Never join a room when invisible
+			return
 		p = common.xmpp.Presence(to = '%s@%s/%s' % (room, server, nick),
 			show = show, status = self.status)
 		if gajim.config.get('send_sha_in_gc_presence'):