I do think it’s random , you js have to keep going to places where it says they are at and keep flirting/taking them on dates. Eventually the next time you chat w them, it will pop up something like “are you ready to talk about your relationship with them” and then it will ask you if you want to advance your relationship with them to boyfriend/girlfriend. Tho sometimes it will ask you if u want to advance to friends with them first , u can either say yes or no , I don’t think it matters.
Another thing to point out is to make sure to watch the lust bar. If the lust bar is higher or the same as the romance bar , there is a good chance they would only want friends with benefits type. For me personally, I always lower the lust bar (like veryyyy) so that they would like me more romantically than out of lust. I don’t know if doing all that makes a difference but for me it works. I hope all of those stuff I said made sense!