diff --git a/include/proto/proxy.h b/include/proto/proxy.h
index 5297d08..288ca22 100644
--- a/include/proto/proxy.h
+++ b/include/proto/proxy.h
@@ -89,6 +89,15 @@
 		be->counters.be_sps_max = be->be_sess_per_sec.curr_ctr;
 }
 
+/* increase the number of cumulated requests on the designated frontend */
+static void inline proxy_inc_fe_req_ctr(struct proxy *fe)
+{
+	fe->counters.cum_fe_req++;
+	update_freq_ctr(&fe->fe_req_per_sec, 1);
+	if (fe->fe_req_per_sec.curr_ctr > fe->counters.fe_rps_max)
+		fe->counters.fe_rps_max = fe->fe_req_per_sec.curr_ctr;
+}
+
 #endif /* _PROTO_PROXY_H */
 
 /*
diff --git a/include/types/counters.h b/include/types/counters.h
index fa648a3..2b48207 100644
--- a/include/types/counters.h
+++ b/include/types/counters.h
@@ -25,9 +25,11 @@
 struct pxcounters {
 	unsigned int feconn_max, beconn_max;	/* max # of active frontend and backend sessions */
 
+	long long cum_fe_req;			/* cumulated number of processed HTTP requests */
 	long long cum_feconn, cum_beconn;	/* cumulated number of processed sessions */
 	long long cum_lbconn;			/* cumulated number of sessions processed by load balancing */
 
+	unsigned int fe_rps_max;		/* maximum of new sessions per second seen on the frontend */
 	unsigned int fe_sps_max;		/* maximum of new sessions per second seen on the frontend */
 	unsigned int be_sps_max;		/* maximum of new sessions per second seen on the backend */
 	unsigned int nbpend_max;		/* max number of pending connections with no server assigned yet */
diff --git a/include/types/proxy.h b/include/types/proxy.h
index fabc936..53c00f7 100644
--- a/include/types/proxy.h
+++ b/include/types/proxy.h
@@ -225,6 +225,7 @@
 	int nbpend;				/* number of pending connections with no server assigned yet */
 	int totpend;				/* total number of pending connections on this instance (for stats) */
 	unsigned int feconn, beconn;		/* # of active frontend and backends sessions */
+	struct freq_ctr fe_req_per_sec;		/* HTTP requests per second on the frontend */
 	struct freq_ctr fe_sess_per_sec;	/* sessions per second on the frontend */
 	struct freq_ctr be_sess_per_sec;	/* sessions per second on the backend */
 	unsigned int maxconn;			/* max # of active sessions on the frontend */
diff --git a/src/dumpstats.c b/src/dumpstats.c
index 35af8c1..5f62dff 100644
--- a/src/dumpstats.c
+++ b/src/dumpstats.c
@@ -248,6 +248,7 @@
 			    "rate,rate_lim,rate_max,"
 			    "check_status,check_code,check_duration,"
 			    "hrsp_1xx,hrsp_2xx,hrsp_3xx,hrsp_4xx,hrsp_5xx,hrsp_other,hanafail,"
+			    "req_rate, req_rate_max, req_tot,"
 			    "\n");
 }
 
@@ -358,6 +359,7 @@
 				else {
 					px->counters.feconn_max = 0;
 					px->counters.beconn_max = 0;
+					px->counters.fe_rps_max = 0;
 					px->counters.fe_sps_max = 0;
 					px->counters.be_sps_max = 0;
 					px->counters.nbpend_max = 0;
@@ -1512,6 +1514,11 @@
 				/* failed health analyses */
 				chunk_printf(&msg, ",");
 
+				/* requests : req_rate, req_rate_max, req_tot, */
+				chunk_printf(&msg, "%u,%u,%lld,",
+					     read_freq_ctr(&px->fe_req_per_sec),
+					     px->counters.fe_rps_max, px->counters.cum_fe_req);
+
 				/* finish with EOL */
 				chunk_printf(&msg, "\n");
 			}
@@ -1637,6 +1644,8 @@
 				     ",,,,,,"
 				     /* failed health analyses */
 				     ","
+				     /* requests : req_rate, req_rate_max, req_tot, */
+				     ",,,"
 				     "\n",
 				     px->id, l->name,
 				     l->nbconn, l->counters->conn_max,
@@ -2019,6 +2028,9 @@
 				/* failed health analyses */
 				chunk_printf(&msg, "%lld,",  sv->counters.failed_hana);
 
+				/* requests : req_rate, req_rate_max, req_tot, */
+				chunk_printf(&msg, ",,,");
+
 				/* finish with EOL */
 				chunk_printf(&msg, "\n");
 			}
@@ -2192,6 +2204,9 @@
 				/* failed health analyses */
 				chunk_printf(&msg, ",");
 
+				/* requests : req_rate, req_rate_max, req_tot, */
+				chunk_printf(&msg, ",,,");
+
 				/* finish with EOL */
 				chunk_printf(&msg, "\n");
 
diff --git a/src/proto_http.c b/src/proto_http.c
index 8816699..0820be5 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -2559,6 +2559,8 @@
 	 * left uninitialized (for instance in the absence of headers).
 	 */
 
+	proxy_inc_fe_req_ctr(s->fe); /* one more valid request for this FE */
+
 	if (txn->flags & TX_WAIT_NEXT_RQ) {
 		/* kill the pending keep-alive timeout */
 		txn->flags &= ~TX_WAIT_NEXT_RQ;
