diff --git a/quic/core/congestion_control/rtt_stats.cc b/quic/core/congestion_control/rtt_stats.cc
index d3853d7..f4cd2d0 100644
--- a/quic/core/congestion_control/rtt_stats.cc
+++ b/quic/core/congestion_control/rtt_stats.cc
@@ -29,7 +29,6 @@
       mean_deviation_(QuicTime::Delta::Zero()),
       calculate_standard_deviation_(false),
       initial_rtt_(QuicTime::Delta::FromMilliseconds(kInitialRttMs)),
-      max_ack_delay_(QuicTime::Delta::Zero()),
       last_update_time_(QuicTime::Zero()),
       ignore_max_ack_delay_(false) {}
 
@@ -73,7 +72,6 @@
   // send_delta.
   if (rtt_sample > ack_delay) {
     if (rtt_sample - min_rtt_ >= ack_delay) {
-      max_ack_delay_ = std::max(max_ack_delay_, ack_delay);
       rtt_sample = rtt_sample - ack_delay;
     }
   }
@@ -102,7 +100,6 @@
   smoothed_rtt_ = QuicTime::Delta::Zero();
   mean_deviation_ = QuicTime::Delta::Zero();
   initial_rtt_ = QuicTime::Delta::FromMilliseconds(kInitialRttMs);
-  max_ack_delay_ = QuicTime::Delta::Zero();
 }
 
 QuicTime::Delta RttStats::GetStandardOrMeanDeviation() const {
diff --git a/quic/core/congestion_control/rtt_stats.h b/quic/core/congestion_control/rtt_stats.h
index f247c1c..6054903 100644
--- a/quic/core/congestion_control/rtt_stats.h
+++ b/quic/core/congestion_control/rtt_stats.h
@@ -107,10 +107,6 @@
     ignore_max_ack_delay_ = ignore_max_ack_delay;
   }
 
-  void set_initial_max_ack_delay(QuicTime::Delta initial_max_ack_delay) {
-    max_ack_delay_ = std::max(max_ack_delay_, initial_max_ack_delay);
-  }
-
   void EnableStandardDeviationCalculation() {
     calculate_standard_deviation_ = true;
   }
@@ -131,10 +127,6 @@
   StandardDeviationCaculator standard_deviation_calculator_;
   bool calculate_standard_deviation_;
   QuicTime::Delta initial_rtt_;
-  // The maximum ack delay observed over the connection after excluding ack
-  // delays that were too large to be included in an RTT measurement.
-  // TODO(ianswett): Remove when deprecating quic_sent_packet_manager_cleanup.
-  QuicTime::Delta max_ack_delay_;
   QuicTime last_update_time_;
   // Whether to ignore the peer's max ack delay.
   bool ignore_max_ack_delay_;
diff --git a/quic/core/quic_sent_packet_manager.cc b/quic/core/quic_sent_packet_manager.cc
index 1943d9c..fd083eb 100644
--- a/quic/core/quic_sent_packet_manager.cc
+++ b/quic/core/quic_sent_packet_manager.cc
@@ -141,9 +141,6 @@
   if (config.HasClientSentConnectionOption(kMAD0, perspective)) {
     rtt_stats_.set_ignore_max_ack_delay(true);
   }
-  if (config.HasClientSentConnectionOption(kMAD1, perspective)) {
-    rtt_stats_.set_initial_max_ack_delay(peer_max_ack_delay_);
-  }
   if (config.HasClientSentConnectionOption(kMAD2, perspective)) {
     // Set the minimum to the alarm granularity.
     min_tlp_timeout_ = kAlarmGranularity;
