diff --git a/spdy/core/hpack/hpack_header_table.cc b/spdy/core/hpack/hpack_header_table.cc
index fe900b7..e720bab 100644
--- a/spdy/core/hpack/hpack_header_table.cc
+++ b/spdy/core/hpack/hpack_header_table.cc
@@ -38,7 +38,7 @@
       settings_size_bound_(kDefaultHeaderTableSizeSetting),
       size_(0),
       max_size_(kDefaultHeaderTableSizeSetting),
-      total_insertions_(static_entries_.size()) {}
+      total_insertions_(kStaticTableSize) {}
 
 HpackHeaderTable::~HpackHeaderTable() = default;
 
@@ -47,10 +47,10 @@
     return nullptr;
   }
   index -= 1;
-  if (index < static_entries_.size()) {
+  if (index < kStaticTableSize) {
     return &static_entries_[index];
   }
-  index -= static_entries_.size();
+  index -= kStaticTableSize;
   if (index < dynamic_entries_.size()) {
     return &dynamic_entries_[index];
   }
@@ -97,7 +97,7 @@
   } else if (entry->IsStatic()) {
     return 1 + entry->InsertionIndex();
   } else {
-    return total_insertions_ - entry->InsertionIndex() + static_entries_.size();
+    return total_insertions_ - entry->InsertionIndex() + kStaticTableSize;
   }
 }
 
diff --git a/spdy/core/hpack/hpack_static_table.h b/spdy/core/hpack/hpack_static_table.h
index 436ae59..09f9740 100644
--- a/spdy/core/hpack/hpack_static_table.h
+++ b/spdy/core/hpack/hpack_static_table.h
@@ -12,6 +12,9 @@
 
 struct HpackStaticEntry;
 
+// Number of entries in the HPACK static table.
+constexpr size_t kStaticTableSize = 61;
+
 // HpackStaticTable provides |static_entries_| and |static_index_| for HPACK
 // encoding and decoding contexts.  Once initialized, an instance is read only
 // and may be accessed only through its const interface.  Such an instance may
diff --git a/spdy/core/hpack/hpack_static_table_test.cc b/spdy/core/hpack/hpack_static_table_test.cc
index ad868b1..152ad82 100644
--- a/spdy/core/hpack/hpack_static_table_test.cc
+++ b/spdy/core/hpack/hpack_static_table_test.cc
@@ -32,10 +32,10 @@
   EXPECT_TRUE(table_.IsInitialized());
 
   HpackHeaderTable::EntryTable static_entries = table_.GetStaticEntries();
-  EXPECT_EQ(HpackStaticTableVector().size(), static_entries.size());
+  EXPECT_EQ(kStaticTableSize, static_entries.size());
 
   HpackHeaderTable::UnorderedEntrySet static_index = table_.GetStaticIndex();
-  EXPECT_EQ(HpackStaticTableVector().size(), static_index.size());
+  EXPECT_EQ(kStaticTableSize, static_index.size());
 
   HpackHeaderTable::NameToEntryMap static_name_index =
       table_.GetStaticNameIndex();
