diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloConfigFlags.py b/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloConfigFlags.py
new file mode 100644
index 0000000000000000000000000000000000000000..700fc7695c9bba18e31c643d7bdb65e8202c7d75
--- /dev/null
+++ b/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloConfigFlags.py
@@ -0,0 +1,14 @@
+# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+
+from AthenaConfiguration.AthConfigFlags import AthConfigFlags
+
+def createTrigCaloConfigFlags(): 
+    tccf=AthConfigFlags()
+
+    # Enable cell timing cut
+    tccf.addFlag('Trigger.Calo.TopoCluster.doTimeCut', False)
+    tccf.addFlag('Trigger.Calo.TopoCluster.extendTimeCut', False)
+    tccf.addFlag('Trigger.Calo.TopoCluster.useUpperLimitForTimeCut', False)
+    tccf.addFlag('Trigger.Calo.TopoCluster.timeCutUpperLimit', 20.0)
+
+    return tccf
diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloRecConfig.py b/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloRecConfig.py
index 02efe265523074af6730e6076d0cde243e333905..612948f83f563411ae79ea93f8cd8e3d0c3c9e2e 100755
--- a/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloRecConfig.py
+++ b/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloRecConfig.py
@@ -1,5 +1,6 @@
 # Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
 
+
 from TrigCaloRec.TrigCaloRecConf import (TrigCaloClusterMaker,
                                          TrigCaloTowerMaker,
                                          TrigCaloClusterCalibrator)
@@ -74,7 +75,7 @@ class TrigCaloClusterMaker_topo (TrigCaloClusterMakerBase):
     __slots__ = []
     def __init__ (self, name='TrigCaloClusterMaker_topo', cells="cells",doMoments=True, doLC=True ):
         super(TrigCaloClusterMaker_topo, self).__init__(name)
-
+        
         self.Cells=cells
 
         from CaloClusterCorrection.CaloClusterCorrectionConf import CaloLCWeightTool, CaloLCClassificationTool, CaloLCOutOfClusterTool, CaloLCDeadMaterialTool
@@ -84,7 +85,8 @@ class TrigCaloClusterMaker_topo (TrigCaloClusterMakerBase):
         from CaloRec.CaloTopoClusterFlags import jobproperties
         from AthenaCommon.SystemOfUnits import deg
         from AthenaCommon.GlobalFlags import globalflags
-
+        from AthenaConfiguration.AllConfigFlags import ConfigFlags as flags
+        
         # tools used by tools
 
         if doLC:
@@ -245,6 +247,12 @@ class TrigCaloClusterMaker_topo (TrigCaloClusterMakerBase):
         # use 2-gaussian or single gaussian noise for TileCal
         TrigTopoMaker.TwoGaussianNoise = jobproperties.CaloTopoClusterFlags.doTwoGaussianNoise()
 
+        #timing
+        TrigTopoMaker.SeedCutsInT = flags.Trigger.Calo.TopoCluster.doTimeCut
+        TrigTopoMaker.CutOOTseed = flags.Trigger.Calo.TopoCluster.extendTimeCut and flags.Trigger.Calo.TopoCluster.doTimeCut
+        TrigTopoMaker.UseTimeCutUpperLimit = flags.Trigger.Calo.TopoCluster.useUpperLimitForTimeCut
+        TrigTopoMaker.TimeCutUpperLimit = flags.Trigger.Calo.TopoCluster.timeCutUpperLimit
+
         TrigTopoSplitter = CaloTopoClusterSplitter("TrigTopoSplitter")        
         # cells from the following samplings will be able to form local
         # maxima. The excluded samplings are PreSamplerB, EMB1,
@@ -480,6 +488,13 @@ def hltTopoClusterMakerCfg(flags, name, clustersKey, cellsKey="CaloCells"):
     )
 
     topoMaker = acc.popToolsAndMerge(CaloTopoClusterToolCfg(flags, cellsname=cellsKey))
+
+    #timing
+    topoMaker.SeedCutsInT = flags.Trigger.Calo.TopoCluster.doTimeCut
+    topoMaker.CutOOTseed = flags.Trigger.Calo.TopoCluster.extendTimeCut and flags.Trigger.Calo.TopoCluster.doTimeCut
+    topoMaker.UseTimeCutUpperLimit = flags.Trigger.Calo.TopoCluster.useUpperLimitForTimeCut
+    topoMaker.TimeCutUpperLimit = flags.Trigger.Calo.TopoCluster.timeCutUpperLimit
+    
     topoSplitter = acc.popToolsAndMerge(CaloTopoClusterSplitterToolCfg(flags))
 
     topoMoments = CompFactory.CaloClusterMomentsMaker ('TrigTopoMoments')
diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigFlags.py b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigFlags.py
index fdb7a9d9a8f0083416013fe6a4bb0cb4f3b7869c..20d7b40cadbd7a70532ae9bef35d9cf8998faeb4 100644
--- a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigFlags.py
+++ b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigFlags.py
@@ -332,6 +332,11 @@ def createTriggerRecoFlags():
         from TrigInDetConfig.TrigTrackingPassFlagsITk import createTrigTrackingPassFlagsITk
         return createTrigTrackingPassFlagsITk()
     flags.addFlagsCategory( 'Trigger.ITkTracking', __idITk )
+
+    def __trigCalo():
+        from TrigCaloRec.TrigCaloConfigFlags import createTrigCaloConfigFlags
+        return createTrigCaloConfigFlags()
+    flags.addFlagsCategory( 'Trigger.Calo', __trigCalo )
      
     # NB: Longer term it may be worth moving these into a PF set of config flags, but right now the only ones that exist do not seem to be used in the HLT.
     # When we use component accumulators for this in the HLT maybe we should revisit this