diff --git a/src/main/java/org/olat/modules/bigbluebutton/manager/BigBlueButtonManagerImpl.java b/src/main/java/org/olat/modules/bigbluebutton/manager/BigBlueButtonManagerImpl.java
index b0729b211f560b82573ce2c77b77e5e05b1a9b86..b0becb11098cf20b39663ad0f5a1a02b5b028f07 100644
--- a/src/main/java/org/olat/modules/bigbluebutton/manager/BigBlueButtonManagerImpl.java
+++ b/src/main/java/org/olat/modules/bigbluebutton/manager/BigBlueButtonManagerImpl.java
@@ -27,6 +27,7 @@ import java.util.Comparator;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.List;
+import java.util.Random;
 import java.util.Set;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
@@ -794,7 +795,10 @@ public class BigBlueButtonManagerImpl implements BigBlueButtonManager, Initializ
 		public int compare(BigBlueButtonServerInfos o1, BigBlueButtonServerInfos o2) {
 			double l1 = o1.getLoad();
 			double l2 = o2.getLoad();
-			return Double.compare(l1, l2);
+			if (l1 == l2) {
+				// random order for same load for equal distribution of server usage
+				return (new Random().nextBoolean() ? 1 : -1);
+			}			return Double.compare(l1, l2);
 		}
 	}