diff --git a/quic/core/quic_connection.cc b/quic/core/quic_connection.cc
index 5ef9720..1ad2ddb 100644
--- a/quic/core/quic_connection.cc
+++ b/quic/core/quic_connection.cc
@@ -1709,8 +1709,7 @@
 }
 
 void QuicConnection::OnCanWrite() {
-  if (GetQuicReloadableFlag(quic_check_connected_before_flush) && !connected_) {
-    QUIC_RELOADABLE_FLAG_COUNT_N(quic_check_connected_before_flush, 2, 2);
+  if (!connected_) {
     return;
   }
   DCHECK(!writer_->IsWriteBlocked());
@@ -2903,12 +2902,7 @@
 }
 
 QuicConnection::ScopedPacketFlusher::~ScopedPacketFlusher() {
-  if (connection_ == nullptr) {
-    return;
-  }
-  if (GetQuicReloadableFlag(quic_check_connected_before_flush) &&
-      !connection_->connected()) {
-    QUIC_RELOADABLE_FLAG_COUNT_N(quic_check_connected_before_flush, 1, 2);
+  if (connection_ == nullptr || !connection_->connected()) {
     return;
   }
 
diff --git a/quic/core/quic_connection_test.cc b/quic/core/quic_connection_test.cc
index 7506c17..f04d142 100644
--- a/quic/core/quic_connection_test.cc
+++ b/quic/core/quic_connection_test.cc
@@ -1972,11 +1972,7 @@
 
   EXPECT_EQ(0u, connection_.GetStats().packets_discarded);
   connection_.OnCanWrite();
-  if (GetQuicReloadableFlag(quic_check_connected_before_flush)) {
-    EXPECT_EQ(0u, connection_.GetStats().packets_discarded);
-  } else {
-    EXPECT_EQ(1u, connection_.GetStats().packets_discarded);
-  }
+  EXPECT_EQ(0u, connection_.GetStats().packets_discarded);
 }
 
 TEST_P(QuicConnectionTest, ReceiveConnectivityProbingAtServer) {
@@ -8502,12 +8498,8 @@
   EXPECT_TRUE(ack_alarm->IsSet());
   ProcessFramePacketWithAddresses(QuicFrame(connection_close_frame.get()),
                                   kSelfAddress, kPeerAddress);
-  if (GetQuicReloadableFlag(quic_check_connected_before_flush)) {
-    // Verify ack alarm is not set.
-    EXPECT_FALSE(ack_alarm->IsSet());
-  } else {
-    EXPECT_TRUE(ack_alarm->IsSet());
-  }
+  // Verify ack alarm is not set.
+  EXPECT_FALSE(ack_alarm->IsSet());
 }
 
 }  // namespace
