diff --git a/synapse/handlers/presence.py b/synapse/handlers/presence.py
index 7372a10f9bf67130cc97e9b131db6f17ae508ed7..b220970268e4650b8675f8e2d1df67156bbd1c6c 100644
--- a/synapse/handlers/presence.py
+++ b/synapse/handlers/presence.py
@@ -650,7 +650,7 @@ class PresenceHandler(BaseHandler):
             room_ids = yield rm_handler.get_rooms_for_user(user)
 
             if not observers and not room_ids:
-                break
+                continue
 
             state = dict(push)
             del state["user_id"]