Roberts was born in Miami, Florida in 1994. After his mother left the family due to domestic violence, Roberts began living with friends and family members whenever they could take him in. Roberts began selling drugs and stealing to support himself. As a result, he ended up in a youth correctional facility in San Francisco, California for a year. Roberts started to turn his life around at 19 years old when his daughter was born and started training in MMA. He took his first amateur fight in 2014 and turned professional in 2016. Roberts trains at Adrenaline MMA in San Bernardino under head coach Adam Rothwieler and at Carlson Gracie Temecula under Brazilian Jiujitsu coach Tom Cronin.
After a 6–1 amateur career, Roberts started his professional MMA career in 2016. He amassed a record of 5–0 prior to his tenure in UFC TV mma competition series which he was subsequently signed by UFC after the show.
Roberts appeared in DWTNCS: Season 2, Episode 7 web-series program on July 21, 2018 facing Garrett Gross. He won the fight via a submission in the second round and was signed by UFC.
Roberts made his UFC debut on November 20, 2018 against Darrell Horcher at. He won the fight via a guillotine choke in round one. This win earned the Performance of the Night award. His next fight came on April 27, 2019 against Thomas Gifford at. He won the fight via unanimous decision. Roberts faced Vinc Pichel on June 29, 2019 at UFC on ESPN 3. He lost the fight via unanimous decision. Roberts faced Alexander Yakovlev on November 9, 2019 at UFC on ESPN+ 21. He won the fight via unanimous decision. Roberts was scheduled to face Matt Frevola on April 25, 2020. However, on April 9, promotional officials scrapped the pairing due to COVID-19 pandemic. Roberts faced Brok Weaver on May 30, 2020 at. At the weigh-ins, Weaver weighed in at 157.5 pounds, 1.5 pounds over the lightweight non-title fight limit of 156 pounds. He was fined 20 percent of his purse and the bout with Roberts proceeded at a catchweight. Roberts won the fight via submission in round two. Roberts faced Jim Miller on June 20, 2020 at. He lost the fight in the first round after verbally submitting to an armbar.