diff --git a/pkg/vpn/bonafide/gateways.go b/pkg/vpn/bonafide/gateways.go
index 88c7581e40ed51bbb1857465d036029e977dc066..bbf5e084d04048862b367bef36d28db7ae435c8c 100644
--- a/pkg/vpn/bonafide/gateways.go
+++ b/pkg/vpn/bonafide/gateways.go
@@ -173,10 +173,10 @@ func (p *gatewayPool) getGatewaysFromMenshenByLocation(location, transport strin
 
 	var gateways []Gateway
 	for _, gw := range p.recommended {
+		if !gw.gateway.isTransport(transport) {
+			continue
+		}
 		for _, locatedGw := range gws {
-			if !locatedGw.isTransport(transport) {
-				continue
-			}
 			if locatedGw.Host == gw.gateway.Host {
 				gateways = append(gateways, *locatedGw)
 				break