diff --git a/app/vminsert/netstorage/netstorage.go b/app/vminsert/netstorage/netstorage.go
index 1ef785172..a4709063d 100644
--- a/app/vminsert/netstorage/netstorage.go
+++ b/app/vminsert/netstorage/netstorage.go
@@ -1,6 +1,7 @@
 package netstorage
 
 import (
+	"flag"
 	"fmt"
 	"sync"
 	"time"
@@ -12,6 +13,8 @@ import (
 	"github.com/VictoriaMetrics/metrics"
 )
 
+var disableRPCCompression = flag.Bool(`rpc.disableCompression`, false, "Disable compression of RPC traffic. This reduces CPU usage at the cost of higher network bandwidth usage")
+
 // sendWithFallback sends buf to storage node sn.
 //
 // It falls back to sending data to another storage node if sn is currently
@@ -101,6 +104,9 @@ func (sn *storageNode) dial() error {
 	}
 
 	compressionLevel := 1
+	if *disableRPCCompression {
+		compressionLevel = 0
+	}
 	bc, err := handshake.VMInsertClient(c, compressionLevel)
 	if err != nil {
 		_ = c.Close()