diff --git a/server.go b/server.go
index ff70b21a..951b473f 100644
--- a/server.go
+++ b/server.go
@@ -2440,9 +2440,13 @@ func newServer(listenAddrs []string, db database.DB, chainParams *chaincfg.Param
 	}
 
 	// Create a connection manager.
+	maxOutbound := defaultMaxOutbound
+	if cfg.MaxPeers < maxOutbound {
+		maxOutbound = cfg.MaxPeers
+	}
 	cmgr, err := connmgr.New(&connmgr.Config{
 		RetryDuration: connectionRetryInterval,
-		MaxOutbound:   defaultMaxOutbound,
+		MaxOutbound:   uint32(maxOutbound),
 		Dial:          btcdDial,
 		OnConnection:  s.outboundPeerConnected,
 		GetNewAddress: newAddressFunc,