diff --git a/scripts/data_transform.r b/scripts/data_transform.r
index 615122fa372d1fb46e5983b4dd9b890671902e04..d176a10a83cb5d3083cf0a7031566f623e1cfdb1 100644
--- a/scripts/data_transform.r
+++ b/scripts/data_transform.r
@@ -94,6 +94,13 @@ rtnData <- rtnData %>% mutate(COVERAGE_TYPE = case_when(COVERAGE_NAME %in% cover
 # remove misc coverage types (i.e. Implementation Credit, Vision, Voluntary Vision)
 rtnData <- rtnData %>% filter(COVERAGE_TYPE != "Misc")
 
+# classify groups into size by eligible lives
+rtnData <- rtnData %>% mutate(GROUP_SIZE = case_when(ELIGIBLE_LIVES < 100 ~ "S",
+                                                     ELIGIBLE_LIVES >= 100 & ELIGIBLE_LIVES < 1000 ~ "M",
+                                                     ELIGIBLE_LIVES >= 1000 & ELIGIBLE_LIVES < 10000 ~ "L",
+                                                     ELIGIBLE_LIVES >= 10000 ~ "XL",
+                                                     TRUE ~ "NA"))
+
 # add rtn column
 rtnData <- rtnData %>% mutate(RTN = FINAL_QUOTED_PREMIUM / NEEDED_PREMIUM)