diff --git a/quic/core/quic_bandwidth.h b/quic/core/quic_bandwidth.h
index a72782a..949c264 100644
--- a/quic/core/quic_bandwidth.h
+++ b/quic/core/quic_bandwidth.h
@@ -55,11 +55,6 @@
   // Create a new QuicBandwidth based on the bytes per the elapsed delta.
   static inline QuicBandwidth FromBytesAndTimeDelta(QuicByteCount bytes,
                                                     QuicTime::Delta delta) {
-    if (!GetQuicReloadableFlag(quic_round_up_tiny_bandwidth)) {
-      return QuicBandwidth((8 * bytes * kNumMicrosPerSecond) /
-                           delta.ToMicroseconds());
-    }
-
     if (bytes == 0) {
       return QuicBandwidth(0);
     }
@@ -67,7 +62,6 @@
     // 1 bit is 1000000 micro bits.
     int64_t num_micro_bits = 8 * bytes * kNumMicrosPerSecond;
     if (num_micro_bits < delta.ToMicroseconds()) {
-      QUIC_RELOADABLE_FLAG_COUNT(quic_round_up_tiny_bandwidth);
       return QuicBandwidth(1);
     }
 
diff --git a/quic/core/quic_bandwidth_test.cc b/quic/core/quic_bandwidth_test.cc
index f8b1a1c..7811b47 100644
--- a/quic/core/quic_bandwidth_test.cc
+++ b/quic/core/quic_bandwidth_test.cc
@@ -62,14 +62,9 @@
   EXPECT_EQ(QuicBandwidth::Zero(), QuicBandwidth::FromBytesAndTimeDelta(
                                        0, QuicTime::Delta::FromSeconds(9)));
 
-  if (GetQuicReloadableFlag(quic_round_up_tiny_bandwidth)) {
-    EXPECT_EQ(QuicBandwidth::FromBitsPerSecond(1),
-              QuicBandwidth::FromBytesAndTimeDelta(
-                  1, QuicTime::Delta::FromSeconds(9)));
-  } else {
-    EXPECT_EQ(QuicBandwidth::Zero(), QuicBandwidth::FromBytesAndTimeDelta(
-                                         1, QuicTime::Delta::FromSeconds(9)));
-  }
+  EXPECT_EQ(
+      QuicBandwidth::FromBitsPerSecond(1),
+      QuicBandwidth::FromBytesAndTimeDelta(1, QuicTime::Delta::FromSeconds(9)));
 }
 
 TEST_F(QuicBandwidthTest, Scale) {
diff --git a/quic/core/quic_flags_list.h b/quic/core/quic_flags_list.h
index 55e3c76..4e7f805 100644
--- a/quic/core/quic_flags_list.h
+++ b/quic/core/quic_flags_list.h
@@ -54,7 +54,6 @@
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_pass_path_response_to_validator, false)
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_require_handshake_confirmation, false)
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_retransmit_after_receiving_retry, true)
-QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_round_up_tiny_bandwidth, true)
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_send_goaway_with_connection_close, true)
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_send_path_response, false)
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_send_timestamps, false)
