diff --git a/benchmarks/gen_synthetic_protos.py b/benchmarks/gen_synthetic_protos.py
index 36d1f7d..c90e4e9 100644
--- a/benchmarks/gen_synthetic_protos.py
+++ b/benchmarks/gen_synthetic_protos.py
@@ -49,14 +49,14 @@
   f.write('package upb_benchmark;\n')
   f.write('message Message {}\n')
   for i in range(2, 101):
-    f.write(f'message Message{i} {{}}\n')
+    f.write('message Message{i} {{}}\n'.format(i=i))
 
 with open(base + "/benchmarks/200_msgs.proto", "w") as f:
   f.write('syntax = "proto3";\n')
   f.write('package upb_benchmark;\n')
   f.write('message Message {}\n')
   for i in range(2, 501):
-    f.write(f'message Message{i} {{}}\n')
+    f.write('message Message{i} {{}}\n'.format(i=i))
 
 with open(base + "/benchmarks/100_fields.proto", "w") as f:
   f.write('syntax = "proto2";\n')
@@ -67,7 +67,7 @@
   random.seed(a=0, version=2)
   for field in random.choices(population=population, weights=weights, k=100):
     field_type, label = field
-    f.write(f'  {label} {field_type} field{i} = {i};\n')
+    f.write('  {label} {field_type} field{i} = {i};\n'.format(i=i, label=label, field_type=field_type))
     i += 1
   f.write('}\n')
 
@@ -80,6 +80,6 @@
   random.seed(a=0, version=2)
   for field in random.choices(population=population, weights=weights, k=200):
     field_type, label = field
-    f.write(f'  {label} {field_type} field{i} = {i};\n')
+    f.write('  {label} {field_type} field{i} = {i};\n'.format(i=i, label=label,field_type=field_type))
     i += 1
   f.write('}\n')
