diff --git a/quic/core/congestion_control/pacing_sender.cc b/quic/core/congestion_control/pacing_sender.cc
index c58e368..dbdc924 100644
--- a/quic/core/congestion_control/pacing_sender.cc
+++ b/quic/core/congestion_control/pacing_sender.cc
@@ -26,18 +26,10 @@
       initial_burst_size_(kInitialUnpacedBurst),
       lumpy_tokens_(0),
       alarm_granularity_(QuicTime::Delta::FromMilliseconds(1)),
-      pacing_limited_(false),
-      lumpy_pacing_size_((GetQuicReloadableFlag(
-                              quic_change_default_lumpy_pacing_size_to_two) &&
-                          GetQuicFlag(FLAGS_quic_lumpy_pacing_size) == 1)
-                             ? 2
-                             : GetQuicFlag(FLAGS_quic_lumpy_pacing_size)) {
+      pacing_limited_(false) {
   if (GetQuicReloadableFlag(quic_donot_reset_ideal_next_packet_send_time)) {
     QUIC_RELOADABLE_FLAG_COUNT(quic_donot_reset_ideal_next_packet_send_time);
   }
-  if (GetQuicReloadableFlag(quic_change_default_lumpy_pacing_size_to_two)) {
-    QUIC_RELOADABLE_FLAG_COUNT(quic_change_default_lumpy_pacing_size_to_two);
-  }
 }
 
 PacingSender::~PacingSender() {}
@@ -98,7 +90,8 @@
     // Reset lumpy_tokens_ if either application or cwnd throttles sending or
     // token runs out.
     lumpy_tokens_ = std::max(
-        1u, std::min(static_cast<uint32_t>(lumpy_pacing_size_),
+        1u, std::min(static_cast<uint32_t>(
+                         GetQuicFlag(FLAGS_quic_lumpy_pacing_size)),
                      static_cast<uint32_t>(
                          (sender_->GetCongestionWindow() *
                           GetQuicFlag(FLAGS_quic_lumpy_pacing_cwnd_fraction)) /
diff --git a/quic/core/congestion_control/pacing_sender.h b/quic/core/congestion_control/pacing_sender.h
index f53f17a..781a921 100644
--- a/quic/core/congestion_control/pacing_sender.h
+++ b/quic/core/congestion_control/pacing_sender.h
@@ -103,9 +103,6 @@
   // Indicates whether pacing throttles the sending. If true, make up for lost
   // time.
   bool pacing_limited_;
-
-  // Latched value of --quic_lumpy_pacing_size.
-  const int32_t lumpy_pacing_size_;
 };
 
 }  // namespace quic
diff --git a/quic/core/congestion_control/pacing_sender_test.cc b/quic/core/congestion_control/pacing_sender_test.cc
index e54cbae..5b75cc9 100644
--- a/quic/core/congestion_control/pacing_sender_test.cc
+++ b/quic/core/congestion_control/pacing_sender_test.cc
@@ -280,7 +280,6 @@
 }
 
 TEST_F(PacingSenderTest, FastSending) {
-  SetQuicReloadableFlag(quic_change_default_lumpy_pacing_size_to_two, true);
   // Ensure the pacing sender paces, even when the inter-packet spacing(0.5ms)
   // is less than the pacing granularity(1ms).
   InitPacingRate(10, QuicBandwidth::FromBytesAndTimeDelta(
