diff --git a/infra/config/global/generated/luci-milo.cfg b/infra/config/global/generated/luci-milo.cfg
index c0be650..2ab674a 100644
--- a/infra/config/global/generated/luci-milo.cfg
+++ b/infra/config/global/generated/luci-milo.cfg
@@ -12,17 +12,17 @@
   manifest_name: "REVISION"
   builders {
     name: "buildbucket/luci.r8.ci/archive"
-    category: "R8"
+    category: "archive"
     short_name: "archive"
   }
   builders {
     name: "buildbucket/luci.r8.ci/archive_release"
-    category: "R8 release"
+    category: "archive"
     short_name: "archive_release"
   }
   builders {
     name: "buildbucket/luci.r8.ci/archive_lib_desugar"
-    category: "R8"
+    category: "library_desugar"
     short_name: "archive_lib_desugar"
   }
   builders {
@@ -167,12 +167,12 @@
   }
   builders {
     name: "buildbucket/luci.r8.ci/windows"
-    category: "R8"
+    category: "windows"
     short_name: "windows"
   }
   builders {
     name: "buildbucket/luci.r8.ci/windows_release"
-    category: "R8 release"
+    category: "windows"
     short_name: "windows_release"
   }
   builders {
@@ -197,12 +197,12 @@
   }
   builders {
     name: "buildbucket/luci.r8.ci/desugared_library_head"
-    category: "R8"
+    category: "library_desugar"
     short_name: "desugared_library_head"
   }
   builders {
     name: "buildbucket/luci.r8.ci/desugared_library_jdk11_head"
-    category: "R8"
+    category: "library_desugar"
     short_name: "desugared_library_jdk11_head"
   }
   builders {
diff --git a/infra/config/global/main.star b/infra/config/global/main.star
index 26de11d..7d702ee 100755
--- a/infra/config/global/main.star
+++ b/infra/config/global/main.star
@@ -165,7 +165,7 @@
     dimensions["normal"] = "true"
   return dimensions
 
-def r8_builder(name, priority=26, trigger=True, **kwargs):
+def r8_builder(name, priority=26, trigger=True, category=None, **kwargs):
   release = name.endswith("release")
   triggered = None if not trigger else ["branch-gitiles-trigger"] if release\
       else ["main-gitiles-trigger"]
@@ -183,18 +183,20 @@
     executable = "rex",
     **kwargs
   )
-  category = "R8 release" if release else "R8"
+  category = category if category else "R8 release" if release else "R8"
   builder_view(name, category, name.split("-")[-1])
 
 def r8_tester(name,
     test_options,
     dimensions = None,
     execution_timeout = time.hour * 6,
-    expiration_timeout = time.hour * 35):
+    expiration_timeout = time.hour * 35,
+    category=None):
   dimensions = dimensions if dimensions else get_dimensions(normal=True)
   for name in [name, name + "_release"]:
     r8_builder(
         name = name,
+        category = category,
         execution_timeout = execution_timeout,
         expiration_timeout = expiration_timeout,
         dimensions = dimensions,
@@ -204,8 +206,9 @@
         }
     )
 
-def r8_tester_with_default(name, test_options, dimensions=None):
-  r8_tester(name, test_options + common_test_options, dimensions)
+def r8_tester_with_default(name, test_options, dimensions=None, category=None):
+  r8_tester(name, test_options + common_test_options,
+            dimensions = dimensions, category = category)
 
 def archivers():
   for name in ["archive", "archive_release", "archive_lib_desugar"]:
@@ -216,8 +219,10 @@
     }
     if desugar:
       properties["sdk_desugar"] = "true"
+    category = "library_desugar" if desugar else name
     r8_builder(
         name,
+        category = "library_desugar" if desugar else 'archive',
         dimensions = get_dimensions(),
         triggering_policy = scheduler.policy(
             kind = scheduler.GREEDY_BATCHING_KIND,
@@ -257,7 +262,7 @@
 r8_tester_with_default("linux-android-12.0.0",
     ["--dex_vm=12.0.0", "--all_tests"])
 
-r8_tester_with_default("windows", ["--all_tests"],
+r8_tester_with_default("windows", ["--all_tests"], category = "windows",
     dimensions=get_dimensions(windows=True))
 
 def internal():
@@ -309,6 +314,7 @@
     name = "desugared_library_" + name
     r8_builder(
         name,
+        category = "library_desugar",
         dimensions = get_dimensions(),
         execution_timeout = time.hour * 12,
         expiration_timeout = time.hour * 35,
