diff --git a/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids b/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids
index f82ee14aa7449dc999f992a636342de615fbc622..b812b0ad09689f3cd51977455e5d2dc00be70ea1 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids
+++ b/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids
@@ -31,12 +31,15 @@ from glue.ligolw import utils as ligolw_utils
 class LIGOLWContentHandler(ligolw.LIGOLWContentHandler):
 	pass
 
-fname = sys.argv[1]
+cnt = 0
 
-xmldoc = ligolw_utils.load_filename(fname, verbose = True, contenthandler = LIGOLWContentHandler)
-sngl_inspiral_table = lsctables.SnglInspiralTable.get_table(xmldoc)
+for fname in sys.argv[1:]:
 
-for n, row in enumerate(sngl_inspiral_table):
-	row.template_id = n
+	xmldoc = ligolw_utils.load_filename(fname, verbose = True, contenthandler = LIGOLWContentHandler)
+	sngl_inspiral_table = lsctables.SnglInspiralTable.get_table(xmldoc)
 
-ligolw_utils.write_filename(xmldoc, fname, gz = fname.endswith('gz'), verbose = True)
+	for row in sngl_inspiral_table:
+		row.template_id = cnt
+		cnt += 1
+
+	ligolw_utils.write_filename(xmldoc, fname, gz = fname.endswith('gz'), verbose = True)