diff --git a/quic/core/crypto/tls_server_connection.cc b/quic/core/crypto/tls_server_connection.cc
index 0ed8fac..8926909 100644
--- a/quic/core/crypto/tls_server_connection.cc
+++ b/quic/core/crypto/tls_server_connection.cc
@@ -27,14 +27,14 @@
   // We don't actually need the TicketCrypter here, but we need to know
   // whether it's set.
   if (proof_source->GetTicketCrypter()) {
-    QUIC_RESTART_FLAG_COUNT_N(quic_session_tickets_always_enabled, 1, 3);
+    QUIC_CODE_COUNT(quic_session_tickets_enabled);
     SSL_CTX_set_ticket_aead_method(ssl_ctx.get(),
                                    &TlsServerConnection::kSessionTicketMethod);
   } else if (!GetQuicRestartFlag(quic_session_tickets_always_enabled)) {
-    QUIC_RESTART_FLAG_COUNT_N(quic_session_tickets_always_enabled, 2, 3);
+    QUIC_CODE_COUNT(quic_session_tickets_disabled_by_flag);
     SSL_CTX_set_options(ssl_ctx.get(), SSL_OP_NO_TICKET);
   } else {
-    QUIC_RESTART_FLAG_COUNT_N(quic_session_tickets_always_enabled, 3, 3);
+    QUIC_CODE_COUNT(quic_session_tickets_disabled);
   }
   if (proof_source->GetTicketCrypter() ||
       GetQuicRestartFlag(quic_session_tickets_always_enabled)) {
diff --git a/quic/core/tls_server_handshaker.cc b/quic/core/tls_server_handshaker.cc
index c83cf76..78e59b5 100644
--- a/quic/core/tls_server_handshaker.cc
+++ b/quic/core/tls_server_handshaker.cc
@@ -677,6 +677,7 @@
   }
   *out_len = ticket.size();
   memcpy(out, ticket.data(), ticket.size());
+  QUIC_CODE_COUNT(quic_tls_server_handshaker_tickets_sealed);
   return 1;  // success
 }
 
@@ -710,6 +711,7 @@
   if (decrypted_session_ticket_.empty()) {
     QUIC_DLOG(ERROR) << "Session ticket decryption failed; ignoring ticket";
     // Ticket decryption failed. Ignore the ticket.
+    QUIC_CODE_COUNT(quic_tls_server_handshaker_tickets_ignored);
     return ssl_ticket_aead_ignore_ticket;
   }
   if (max_out_len < decrypted_session_ticket_.size()) {
@@ -719,6 +721,7 @@
          decrypted_session_ticket_.size());
   *out_len = decrypted_session_ticket_.size();
 
+  QUIC_CODE_COUNT(quic_tls_server_handshaker_tickets_opened);
   return ssl_ticket_aead_success;
 }
 
