diff --git a/Hlt/HltServices/src/GitANNSvc.cpp b/Hlt/HltServices/src/GitANNSvc.cpp
index a8d7d4b295a8591aa2f3dd821fa220770b4b3e2f..57dd0085625ba019e05d3ec444045fb8313c93e2 100644
--- a/Hlt/HltServices/src/GitANNSvc.cpp
+++ b/Hlt/HltServices/src/GitANNSvc.cpp
@@ -196,13 +196,19 @@ class GitANNSvc : public ANNSvcBase {
       error() << "wrong version" << endmsg;
       return {};
     }
-    auto j = json->find( "CounterDefinition" );
+    auto sz = json->find( "size" );
+    if ( sz == json->end() ) {
+      error() << "no size" << endmsg;
+      return {};
+    }
+    auto j = json->find( "counters" );
     if ( j == json->end() ) {
-      error() << "no counterdef" << endmsg;
+      error() << "no counters" << endmsg;
       return {};
     }
     lumi_schema_t m;
-    std::transform( j->begin(), j->end(), std::back_inserter( m ),
+    m.size = sz;
+    std::transform( j->begin(), j->end(), std::back_inserter( m.counters ),
                     []( const nlohmann::json& k ) { return IIndexedLumiSchemaSvc::from_json( k ); } );
     return m;
   }
diff --git a/Kernel/HltInterfaces/include/Kernel/IIndexedLumiSchemaSvc.h b/Kernel/HltInterfaces/include/Kernel/IIndexedLumiSchemaSvc.h
index 39100ffda1dd76c2ebaec1f340fd647ac08cf998..36df796eef1fd972d6b6271b66387dd4080dcbda 100644
--- a/Kernel/HltInterfaces/include/Kernel/IIndexedLumiSchemaSvc.h
+++ b/Kernel/HltInterfaces/include/Kernel/IIndexedLumiSchemaSvc.h
@@ -38,7 +38,10 @@ public:
                              json["offset"].template get<unsigned>()};
   }
 
-  using lumi_schema_t = std::vector<CounterDefinition>;
+  struct lumi_schema_t {
+    unsigned                       size;
+    std::vector<CounterDefinition> counters;
+  };
 
   // given a bank of version `version`, and a key `key`, return which counters can be found where
   virtual lumi_schema_t const& lumiCounters( unsigned key, unsigned version ) const = 0;