The series gives its teen protagonist the space to comfortably explore her queerness.
Minor spoilers below.
“I’ve moved on to explosive love triangles with girls!” exclaims Kitty Song Covey (Anna Cathcart) halfway through the second season of Netflix’s teen romantic dramedy XO, Kitty. Fresh off a group ski trip that blew up in smoke after a rogue love letter slipped into the wrong hands, the high school junior is understandably overwhelmed; multiple people are now upset with her—and the fact that two of them are girls she has crushes on certainly doesn’t help. So when her best friend Q (Anthony Keyvan) calls her out for not disclosing that his roommate, Min Ho (Sang Heon Lee), admitted to being in love with her at the tail-end of season 1, Kitty quickly brushes him off. After all, Kitty and Min Ho have both gotten over it. And besides, who could possibly care about boys at a time like this? Kitty is now caught between several girls.
The only problem is that, before long, Kitty will realize that she isn’t really over Min Ho after all. Sure, she spends a large chunk of XO, Kitty season 2 navigating the lingering feelings she has for Yuri (Gia Kim), the wealthy lesbian who helped her realize she was queer in season 1, while simultaneously exploring a separate romantic connection with the new cool girl Praveena (Sasha Bhasin). But Kitty is still bisexual—and to the show’s credit, XO, Kitty understands that a newfound interest in girls doesn’t equate to an automatic disinterest in boys. Kitty likes both genders, and this delightful Netflix series finds increasingly entertaining ways to explore that dynamic.
Netflix
Anna Cathcart as Kitty and Sasha Bhasin as Praveena in XO, Kitty season 2.
It’s not hard to tell that XO, Kitty is a spinoff of To All the Boys I’ve Loved Before. Much like that beloved trilogy of Netflix films, XO, Kitty operates in a cheerful rom-com register, focusing on a precocious high school teen as she tries to find her one true pairing. In the first season of the Jenny Han-created series, Kitty left her Portland hometown to attend the Korean Independent School of Seoul (KISS), where she hoped to be closer to her long-distance boyfriend, Dae (Minyeong Choi). Unfortunately, upon arrival, Kitty discovered that Dae had already been dating another girl: Yuri. Their relationship was fake—a ruse to prevent Yuri’s mom from discovering that her daughter was a lesbian—but as long as the true nature of their arrangement was kept secret, Kitty was forced to contend with the reality that she might have moved across the world for a boy who didn’t actually want to be with her. Like To All the Boys, this set-up had all the makings of a classic teen “love triangle” story: Kitty thinks she loves someone, who may or may not have feelings for someone else—and as these feelings got tangled and misplaced, drama naturally ensued.
The series complicated that dynamic as the season progressed, however. As Kitty slowly got over her idealized version of Dae and tried to move on to new possibilities, she unwittingly ended up discovering romantic feelings for Yuri, too. Before that, Kitty had never considered that she might be bisexual, but the show embraced her revelation.
Netflix
Gia Kim as Yuri.
If season 1 was about Kitty’s gradual realization (and subsequent acceptance) of her queerness, then season 2 takes the natural next step: giving Kitty the space to comfortably explore it. That means wrestling with her feelings for Yuri, of course, but also coming to terms with where she stands with Dae, where she wants to go with Min Ho, and maybe even exploring some new flirtations in the meantime. After nearly failing her classes during her first semester, Kitty claims to be focusing more on school and less on romance. But as Q so astutely reminds her, “It’s kind of a shame to be swearing off love right after you discover you’re bi.”
And Q is right. It would have been a shame to miss Kitty stepping into this new world, which is exhilarating and stress-inducing in equal measure. After returning to campus, Kitty quickly finds that Yuri is now officially dating Juliana (Regan Aliyah). This would have been hard enough on its own for a baby queer, but it’s only compounded by the fact that, despite requesting a single dorm room, Kitty ends up in a quad with the newly-formed couple. Eventually, she finds a nice distraction in new girl Praveena (Sasha Bhasin), but there’s only so far that relationship can go before Praveena realizes that she’s not the only person grabbing Kitty’s attention.
XO, Kitty Season 2 – official trailer (Netflix)
Digital Spy GB
And those are just the girls. Kitty’s competing feelings over Yuri and Praveena don’t magically erase the history she shares with Dae, who is still hung up on her despite his own dalliance with Eunice (Han Bi Ryu), a new singer on campus. Nor do they make anything less complicated with Min Ho, whose previous proclamation of love slowly ignites feelings of confusion in Kitty—even as it also drives a wedge between him and Dae, who naturally feels betrayed by his so-called best friend. XO, Kitty treats each of these pairings with equal importance, and it wouldn’t feel strange to see Kitty end up with any of these people. It’s a sea of nonstop compelling drama that allows bisexual dating to feel deliciously fun and messy.
Netflix
Sang Heon Lee as Min Ho and Anna Cathcart as Kitty.
What ties it all together, though, is how XO, Kitty explores sexuality as something fluid but also distinct for each person. The series goes to admirable lengths to highlight the contours of Kitty’s budding bisexuality, but its efforts wouldn’t prove nearly as effective if her queerness existed in a vacuum by itself. Instead, XO, Kitty smartly surrounds its heroine with a wide range of secondary characters, who represent other parts of the sexuality spectrum and are given ample space to endure their own romantic highs and lows. Kitty might be caught between several girls and boys, but Yuri and Juliana, as lesbians, are dealing with their own set of problems. Q, meanwhile, can fulfill the role of “gay best friend” while also juggling his own romantic woes with Jin (Joshua Hyunho Lee), a foul-mouthed track rival whom none of his friends approve of.
In recent years, a multitude of teen shows have embraced romantic LGBTQ+ storylines. But while some have approached it from a sensationalized angle (Netflix’s Élite; HBO’s Emmy-winning controversy magnet Euphoria) and others with an overly saccharine positivity (Heartstopper), XO, Kitty finds a comfortable middle-ground. The series treats all of its characters’ evolving relationships with an earnest clarity that feels refreshingly grounded and real. Though the story revolves around teenagers, the writers take their feelings seriously, recognizing them as mature people capable of navigating real love and maintaining healthy (or unhealthy) relationships. Like any rom-com, the show is often light and fun, with deliberately low stakes. But when it comes to portrayals of queerness, XO, Kitty is thankfully unafraid to take it there. Things can get, well, quite explosive.