diff --git a/src/cfgparse-quic.c b/src/cfgparse-quic.c
index 4a94bb3..deaa13f 100644
--- a/src/cfgparse-quic.c
+++ b/src/cfgparse-quic.c
@@ -1,6 +1,9 @@
 #include <haproxy/api.h>
+#include <haproxy/cfgparse.h>
+#include <haproxy/global-t.h>
 #include <haproxy/listener.h>
 #include <haproxy/proxy-t.h>
+#include <haproxy/tools.h>
 
 static int bind_parse_quic_force_retry(char **args, int cur_arg, struct proxy *px, struct bind_conf *conf, char **err)
 {
@@ -14,3 +17,33 @@
 }};
 
 INITCALL1(STG_REGISTER, bind_register_keywords, &bind_kws);
+
+static int cfg_parse_quic_conn_buf_limit(char **args, int section_type,
+                                         struct proxy *curpx,
+                                         const struct proxy *defpx,
+                                         const char *file, int line, char **err)
+{
+	unsigned int arg = 0;
+
+	if (too_many_args(1, args, err, NULL))
+		return -1;
+
+	if (*(args[1]) != 0)
+		arg = atoi(args[1]);
+
+	if (arg < 1) {
+		memprintf(err, "'%s' expects a positive integer.", args[0]);
+		return -1;
+	}
+
+	global.tune.quic_streams_buf = arg;
+
+	return 0;
+}
+
+static struct cfg_kw_list cfg_kws = {ILH, {
+	{ CFG_GLOBAL, "tune.quic.conn-buf-limit", cfg_parse_quic_conn_buf_limit },
+	{ 0, NULL, NULL }
+}};
+
+INITCALL1(STG_REGISTER, cfg_register_keywords, &cfg_kws);
diff --git a/src/haproxy.c b/src/haproxy.c
index a26c8f3..0187bc6 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -203,6 +203,9 @@
 #else
 		.idle_timer = 1000, /* 1 second */
 #endif
+#ifdef USE_QUIC
+		.quic_streams_buf = 30,
+#endif /* USE_QUIC */
 	},
 #ifdef USE_OPENSSL
 #ifdef DEFAULT_MAXSSLCONN
diff --git a/src/quic_stream.c b/src/quic_stream.c
index 839efd0..e5998ef 100644
--- a/src/quic_stream.c
+++ b/src/quic_stream.c
@@ -208,8 +208,7 @@
  */
 static int qc_stream_buf_avail(struct quic_conn *qc)
 {
-	/* TODO use a global tune settings for max */
-	return qc->stream_buf_count < 30;
+	return qc->stream_buf_count < global.tune.quic_streams_buf;
 }
 
 /* Allocate a new current buffer for <stream>. The buffer limit count for the
