diff --git a/Trigger/TrigCost/RatesAnalysis/python/RatesTrigger.py b/Trigger/TrigCost/RatesAnalysis/python/RatesTrigger.py
index 481e4a939050da930187b0280914fd164e97a316..5d981336a82ed56a6672e3f13dccde7b0d676f0c 100644
--- a/Trigger/TrigCost/RatesAnalysis/python/RatesTrigger.py
+++ b/Trigger/TrigCost/RatesAnalysis/python/RatesTrigger.py
@@ -74,9 +74,9 @@ class RatesTrigger:
     prescales = metadata['prescales']
     lowers = metadata['lowers']
     express = metadata['express']
-    self.prescale = prescales[name]
-    self.lower = lowers[name]
-    self.expressPrescale = express[name]
+    self.prescale = prescales.get(name, 1)
+    self.lower = lowers.get(name)
+    self.expressPrescale = express.get(name)
 
     # Unique rate requires the subtraction of the (all minus this trigger) total from the (all triggers) total
     # The error is taken as a fractional error on the main rate calc
diff --git a/Trigger/TrigCost/RatesAnalysis/python/Util.py b/Trigger/TrigCost/RatesAnalysis/python/Util.py
index 0a9db4152386be2966d8f6c29a48c2eee16a70e0..1f53528bed5f15675f7c5fdff36a4c6ac8f0434b 100644
--- a/Trigger/TrigCost/RatesAnalysis/python/Util.py
+++ b/Trigger/TrigCost/RatesAnalysis/python/Util.py
@@ -39,10 +39,10 @@ def toCSV(fileName, metadata, HLTTriggers, readL1=False):
       group_name = chain_id = ""
       if "ChainL1" in fileName:
         group_name = "None"
-        chain_id = metadata["itemID"][trig.name]
+        chain_id = metadata["itemID"].get(trig.name)
       elif "ChainHLT" in fileName:
-        group_name = metadata["chainGroup"][trig.name]
-        chain_id = metadata["chainID"][trig.name]
+        group_name = metadata["chainGroup"].get(trig.name)
+        chain_id = metadata["chainID"].get(trig.name)
       elif "Group" in fileName:
         chain_id = 0
         group_name = "All" if "GLOBAL" in trig.name else group_name