Warning: Spoilers ahead! Read on at your own risk as we recap 13 Reasons Why season 3.
Episode 1: “Yeah. I’m the New Girl”
We pick up with the damaged folks down at Liberty High eight months after the Spring Fling where Tyler (Devin Druid) showed up intent on shooting his fellow students, only to be stopped by Clay (Dylan Minnette) with the help of Tony (Christian Navarro), Justin (Brandon Flynn), and Jess (Alisha Boe). New girl Ani (Grace Saif) narrates this season in a police-interview situation. Police interview? What could possibly have happened now? Well, there are actually two potential crimes unfurling, and with that, two separate timelines. Since the narrative jumps between the present time and eight months earlier, for clarity’s sake, let’s split this recap into two parts.
Eight months ago: After Clay stops Tyler from entering the school with a s—load of guns, Tony drives the troubled teen to a secluded spot. Clay then joins Tony to help talk Tyler down. They take him home and watch him while he falls asleep, vowing to figure out how to make sure he gets the help he needs. To protect Tyler, the gang decides to pretend the whole shooter situation was a misunderstanding and lie to the police. Zach (Ross Butler), who called cops, doesn’t like this plan but says he’ll stay quiet.
Back at school, the guys look after Tyler, ferrying him from class to class. Monty (Timothy Granaderos) — the f—head who brutally assaulted him — passes Tyler in the corridor and taunts him with kissing sounds. That same day, new girl Ami arrives and is taken on an all-too-honest school tour by Clay. She also befriends Jess, who is planning to run for class president next year to make real change at Liberty. After school, Ami arrives at Bryce’s (Justin Prentice) home; she’s living in the guesthouse because her mother works there as a nurse for Bryce’s grandfather. She walks in on him crying, and we’re led to assume that, as time goes on, she and Bryce strike up a friendship. He creepily watches her swim in his parents’ pool because, Bryce. Gross.
Present-day: First, some quick updates: Alex (Miles Heizer) and Jess have split up. Justin works at the coffee shop now. Ani had some need to wash blood out of her clothing hastily. Justin and Clay live in a cute, little outhouse together at Clay’s parents’ place. Oh yeah, and Bryce is missing. Do we care? Well, yes, because the whole premise of season 3 is figuring out what happened to him and who’s responsible.
The premiere seems to point the finger at Clay first — poor kid. The cops question him at the station, but there isn’t much to stick on him — although his bike lock was found at Bryce’s home and he kinda, maybe was overheard threatening to kill the asshat the night before. The last time Bryce was seen was at the big homecoming football game between Liberty and Bryce’s new school Hillcrest, where a massive fight broke out — literally all the guys have bruises now, and Zach’s even on crutches. For some reason, Zach is also lying and not pointing the finger at Bryce, even though there’s photographic evidence of Bryce launching at his former bestie. Oddly, Tyler has a voicemail from Bryce telling him he’s dealing with something for him and that Tyler’s all good now — there are SO many layers to this mystery.
Who killed Bryce Walker: At this point, it could be literally anyone and, as much as we really doubt it’s good ol’ Clay, the episode does make him look potentially guilty with the small matter of a text he sent to Bryce saying, and I quote, “I’m f—ing going to kill you.” Oh, boy.
Episode 2: “If You’re Breathing, You’re a Liar”
Past: Back in the immediate aftermath of the Spring Fling fiasco, Zach is made captain of the football team now that Bryce is at a different school. Hell-spawn Monty is pissed. In a very #TimesUp friendly move, Zach vows to change the culture of the football team. He also befriends Chloe (Anne Winters), Bryce’s girlfriend at the time, who gives him a rabbit foot keychain as a good luck charm. They grow close, and he eventually guides her through an abortion when she confides in him that she’s pregnant with Bryce’s child. We’re taken through the abortion scene in real-time. It’s an extremely upsetting and powerful scene, the gravity of which the show handles well. Chloe ultimately breaks up with Bryce and leaves Liberty to attend a new school but maintains her friendship with sponsored-by-Adidas Zach. Bryce, who is having a hell of a time at his new school being bullied by the jocks there, never knew she was pregnant. Ani comforts him when Chloe dumps him.
Elsewhere, Jess starts her campaign for student president, telling Monty to f— himself in the process. She publicly announces the king of the school raped her and promises to take down the jocks if elected. She’s got my vote!
Present: There’s definitely more to the Zach/Bryce fallout than we know. Zach’s knee is effed up probably permanently, but he doesn’t want the other guys on the team to know that Bryce took him out for good, because then Bryce wins. Clay thinks he’s hiding something and he and Ani end up getting the whole story of Chloe’s pregnancy out of him.
Later, Alex spots Monty threatening Tyler (who is working through his trauma with both a counselor and by boxing with Tony) and pulls a knife on him. Other confusing plot points include: a random dude watching Justin at football practice; Ani finding a letter to Jessica in Bryce’s room; Tyler taking shirtless photos of himself in the past when he was covered in bruises and present too; and — the big one — the police find Bryce’s body in the water close to where Tyler had just been hanging out.
Who killed Bryce Walker: Seems like, at this point, we’re supposed to think Tyler was involved. But Zach is hiding something too and seems to have some unaccounted-for time after the homecoming game — the night Bryce was last seen alive.
Episode 3: “The Good Person Is Indistinguishable from the Bad”
Newcomer Ani continues to be the narrative voice driving this season through her present-day interview with the police. After some words about how good and bad can be indistinguishable, we see Clay notice a suspicious scar on Justin’s back as they wake up together.
The roommates go their separate ways; Justin gets a ride from Zach while Clay finds himself drawn to the Walker household. When the sheriff asks him why he’s there, he tells him he’s picking up Ani. But after the texts he saw, he should’ve followed her directions and stayed away.
By now, all the characters are learning Bryce is gone and reacting in different ways. Justin is so worked up he vomits and has to explain to the steely Clay that Bryce was a human being. Tony learns of Bryce’s death from his boyfriend, and his first reaction is to go clear his name with the cops, a move his boyfriend feels will put the spotlight on all of them.
Talking to the sheriff, Bryce’s mom says to suspect Clay, Justin, Monty, and Jessica. For the rest of the episode, the spotlight’s on Jessica as she deals with her rapist’s death. Both Jessica and Ani are deceptive about their relationship with Bryce at the beginning, and in flashbacks, we learn how close the girls have become.
Jessica tries to heal from her trauma with Ani’s help and realizes that she’d rather be casual with Justin than committed to Alex. She also admits she went to Bryce’s house shortly after Spring Fling to confront him and reveals that he came to the movie theater to try to apologize. The suspicious scar on Justin’s back gets cleared up when Ani and Clay learn that Jessica has been playing rough with him in the bedroom. Justin later ends the episode meeting his mother’s abusive boyfriend, who accuses him of killing Bryce.
Tyler reveals to Tony that he kept one of the guns from the night of the Spring Fling, so Tony and Clay decide to keep a closer watch on him. The episode ends with Tyler sitting on his bed with the gun next to him, flipping through what looks like photos of Bryce’s dead body on his stomach.
Who killed Bryce Walker: The show is trying very hard to make Tyler look guilty, but let’s suspect the new character, Casey, played by Scream’s Bex Taylor-Klaus, who wants to smash the patriarchy Bryce exhibits. Another possible suspect is Charlie, the new kid that Jessica works with and is judging (which means we’re judging too).
Episode 4: “Angry, Young and Man”
It’s truly not worth going through the first 45 minutes of this episode in-depth. Basically, everyone thinks Tyler killed Bryce because he kept a gun and Bryce was allegedly shot to death. The episode dips through past and present to give a better idea of how the whole babysitting an attempted school shooter works. We learn Clay’s hot take on the film Rear Window (it’s boring!), and finally see the long mentioned and robustly attended Robotics club. It’s also revealed that Tyler has not disclosed his sexual assault to anyone.
Tyler first tells Alex he didn’t kill Bryce, but after an extended chase scene, Tyler reveals that he was at the bridge that night to end his own life before seeing Bryce’s body and reporting it anonymously. Also, the thing Tyler had in his bag at school that everyone worried was a gun was just the camera from Rear Window, which he bought as a gift for Clay.
Tyler is cleared of the murder when it’s revealed Bryce died of blunt force trauma, but the group still has to decide what to do with the gun. Plus, they have to worry about the police because the river where Bryce’s body was found is the same river where they dumped all of Tyler’s weapons at Spring Fling. Justin takes the gun, which Tyler reveals he kept to end his life, and uses it to threaten Seth, his mother’s ex-boyfriend who had been extorting him and Bryce.
Who killed Bryce Walker: Saving this section to call out Zach for being an opp who keeps wanting to call the cops on Tyler and fights Monty over some homophobic slurs. Monty is clearly a monster, but Zach is way more hostile towards Tyler than any of the people who were actually in danger of being attacked by him at Spring Fling. Also, Alex ends the episode freaking out about a bag of drugs they found at Bryce’s death site, so that qualifies as suspicious as well.
Episode 5: “Nobody’s Clean”
Another episode that’s pretty much filler. Turns out the drugs the cops found at the crime scene are steroids, so they raid the Liberty High locker room looking for all the football players that are juicing. After they find steroids one player’s locker, they expand their search school-wide, causing Alex to throw his stash in the garbage. Justin grabs it and shows it to the rest of the group.
The episode takes a break from explaining Alex’s steroid use to show Casey call Jessica a victim for not wanting to protest Bryce’s funeral. Jessica tries to defend the protest to the principal, but deep down she agrees vengeance isn’t the right approach. Zach is shown lying to the cops about his relationship to Bryce, and Clay and Ani follow Monty to his car where they find an ID in an envelope that says “He won’t talk,” plus a bloody nightstick. They follow him home to see him with the nightstick again, threatening his drunk dad.
A flashback to a rich kid party gives us a two-for-one back story on the murder suspects Monty and Alex. We learn the ID is a fake used to blackmail a Hillcrest student who had a gay hookup with Monty at the party. While the hookup was happening, Alex showed up to the function to buy steroids from Bryce. Monty, Bryce, and Alex are all leaving when the Hillcrest student tries to say goodbye the closeted, hotheaded football player and gets beaten — hence the need for blackmail.
After Clay and Ani drop in on Alex at the gym and go through his pay app transactions, they find out that Alex continued hanging with Bryce after the party, even though he said before he never bought the drugs from him. Bryce had introduced Alex to a sex worker, and then later recruited him to break into Bryce’s estranged dad’s house to ransack it. They learn it’s the wrong house when a little boy catches them in the act, and Bryce threatens the child’s life. After that night, Alex continued buying drugs from Bryce, but they stopped hanging out.
After a couple of cute scenes with Clay talking to Ani and Justin, the episode flashes back to Bryce trying to speak with Ani before lashing out at her. His mother tells Ani to keep away from him for her safety. In the present time, Mrs. Walker finally tells her senile father that his grandson is dead. He does not take it well. Ani goes to the garage to avoid the commotion, and boom — she finds Tony’s car in Bryce’s garage.
Who killed Bryce Walker: While the episode positions Alex and Monty as suspects, it also does work to clear them. They clearly had friendlier relationships with Bryce than the rest of the main students. We still don’t know what Zach has been up to. He lied to cops this episode and just hasn’t been great this season, so let’s posit that he is Bryce’s killer.
Episode 6: “You Can Tell the Heart of a Man By How He Grieves”
This episode starts with a change of pace, as the police are now interrogating Tony instead of Ani. After he maintains his innocence, we’re taken to Bryce’s funeral where Zach is notably sitting with Chloe, and Bryce’s father finally shows up.
The episode attempts to share a different side of Bryce through Zach and Mrs. Walker’s eulogies, as well as flashbacks to the deceased teen defending his mom against his father. After the funeral ends with the students protesting Bryce, it’s revealed in a new scene that Bryce’s dad may have a motive to kill his son because Bryce knew about his love child — a secret that could ruin divorce proceedings with Bryce’s mother. Clay, Ani, and the audience learn that Bryce’s mother decided against playing that trump card, clearing Bryce’s father of the murder for now.
Clay and Ani learn from Tony’s boyfriend that Tony’s family was apprehended by immigration, separated from each other at detention centers, and eventually deported. Bryce purchased Tony’s beloved Mustang with money his father gave him to stay away, giving Tony thousands of dollars to pay for his family’s legal fees.
After quick scenes of Monty bonding with the football team and coach, as well as Alex forcing Tyler to box him, the episode ends with Clay hugging his family, while elsewhere the Sheriff is discussing arresting him now that they have footage of Clay pointing a gun at Bryce outside of the rapist’s original house — a scene from season 2 of the show.
Who killed Bryce Walker: Not falling for the red herrings with Clay! Zach is still over there, trying to tell the funeral audience he is his brother’s keeper while Bryce allegedly just ruined his football career. Zach probably beat Bryce to death with his crutch.
Episode 7: “There Are a Number of Problems With Clay Jensen”
Clay finds himself in the hot seat this episode, with both him and Justin trying to explain his innocence as the sheriff keeps playing them the clip of him pointing a gun at Bryce. The show gets a little meta by making a case for how Clay’s hero act comes off as obsessive and entitled to relationships with girls that are not as interested in him. Clay is shown underwear that he knows to be Ani’s, stained with Bryce’s semen, leading to a series of flashbacks throughout the episode that show how Clay and Ani have kissed before, but the new girl had been having sex with her housemate Bryce prior to his murder.
Elsewhere, Jessica is confronted by a seemingly roid-raged Alex for lying about being with Justin after the homecoming game. She then confronts Casey for protesting at Bryce’s funeral, and gets called out for continuing to have sex with Justin after he let Bryce rape her. It all feels like the show is once again trying to tackle weighty sexual dynamics it doesn’t have the range to correctly depict.
Who killed Bryce Walker: The episode ends with both Clay’s mother and Ani convinced that Clay is capable of being the person who murdered Bryce. Zach is seeming a little bit more chill now, and there is a scene of Monty spying on Justin in the locker room, so let’s say Monty is the killer. Maybe he felt as obsessive about Bryce as Clay was about Hannah, but is more capable of violence than Clay is.
Episode 8: “In High School, Even on a Good Day, It’s Hard to Tell Who’s on Your Side”
Everyone, please give a round of applause to the return that no one wanted: Mr. Porter! The world’s worst guidance counselor is back to try to help out the Walker family, which is maybe the worst idea ever because really, how much more damage will he inflict before he realizes that maybe he needs a new profession? And because Clay is suspect No. 1 in Bryce’s murder, he’s also still making terrible decisions and thinks that speaking with Mrs. Walker one-on-one won’t end in disaster. Of course, he ends up snooping in her office and steals a folder labeled “Bryce letters.” Alex and Justin fight in the hallway but they get distracted by Mr. Porter’s return, and the day of questioning begins with Tyler, which freaks everyone out. In the past timeline, Ani continues to lie to Clay about her relationship with Bryce, while in the present, Clay shows Ani the letter Mrs. Walker wrote about Bryce, believing she’s the actual murderer. That might be … a stretch, but Clay is desperate to clear his name by any means necessary.
Zach gets questioned next, then Alex. Mr. Porter keeps the questions focused on Clay, and it’s all very misleading. In the main office, Ani recognizes Mr. Porter from when he visited the Walker house, and she overheard Bryce say that Porter had choked him. Justin gets questioned next. Everyone keeps trying to defend Clay, but Porter keeps turning things around, and it feels very wrong. Jessica is questioned next. Fed up with how the day is going, Clay confronts Porter and Porter gives him his phone number to talk when he’s ready. That … did not go where I was expecting it to!
Ani finds Bryce’s journal that Porter gave to him and gives it to Clay. Clay meets with Porter, who reveals that he was privately counseling the Walkers. Bryce had told Porter he wanted to “do better” because of Ani. Bryce had written a letter from his mom’s perspective and breaks down while reading it to Porter. It helps open the floodgates for Bryce and Mrs. Walker to have a breakthrough in therapy with Porter. Later, in a one-on-one session with Porter, Bryce admits to still having thoughts of wanting to push Ani down and choke her during sex (you in danger, girl). Porter suggests that it’s maybe not the best time for him to be dating (duh!) and that he should be in a program to get real help right now (help from someone who isn’t Porter!). But to the best of Porter’s knowledge, Bryce never went. Porter then tells Clay he believes in him and only called in students for questioning that would speak to Clay’s character.
Porter ends their eye-opening conversation by telling Clay that he believes Tyler has been through trauma at the hands of Monty, so Clay finally gets Tyler to open up about what happened, and he breaks down in a heartbreaking scene. Tyler then tells Clay he had told Bryce about what happened with Monty. That’s what Bryce’s voicemail to Tyler was about — he was “taking care of it.” And once again, suspicion swings back onto this show’s No. 1 sociopath: Monty.
Clay immediately confronts Monty, but Monty deflects the blame onto Justin by asking why he keeps a can of shaving cream in his gym bag if he uses an electric shaver. Clay goes snooping (it’s what he does best!) and finds the can but realizes that it’s fake. It’s actually empty and hiding a pill bottle of oxy in the name of Bryce Walker.
Who killed Bryce Walker: All the new developments in the final few scenes point to either Monty or Justin.
Episode 9: “Always Waiting for the Next Bad News”
Because Clay wastes no time, he confronts Justin about the bottle of oxy the next morning. Justin claims he found the bottle of pills at Bryce’s house after the funeral and it was a one-time slip-up. Do we trust him, though? He seems … pretty shady right now.
To make matters worse, Clay has officially been named a person of interest in the Bryce Walker case, but our actual main two suspects, Justin and Monty, are facing off against each other in the weight room. Ani puts doubt in Clay’s head about where Justin got Bryce’s oxy, and Alex tells him that Bryce refused to sell him any when he wanted some. 13 Reasons Why is really trying its best to humanize Bryce posthumously and I’m not really buying it. I could understand another character trying to make up for past mistakes, but we’ve seen Bryce show no remorse for raping Hannah (Katherine Langford) so why would he all of a sudden become a good person (or try to become a good person)? A few months of bullying isn’t enough of a reason for this 180 turn. It honestly feels like actor Justin Prentice is playing an entirely new character this season.
In happier news, Justin and Jess finally go public with their relationship. Zach gets Justin to rejoin the football team in the past, which is why Zach believes that Justin is clean in the present. In the past, it’s the one-year anniversary of Hannah’s death, and Clay is struggling. It doesn’t help when Ani tells Clay that Justin couldn’t have found the pills in Bryce’s room because the police swept it clean. So where did he get the pills from and why is he lying about it?
Things take a turn when Justin freaks out on Jess, telling her that he cheated on her on Homecoming Night — that’s why he was unavailable when she was trying to call. Was he really with another girl, or was he … murdering Bryce and making up an alibi? He’s looking shadier and shadier. He breaks up with her, making their public relationship maybe the shortest this show has seen yet.
And things just keep looking worse and worse for Justin when his mother’s ex Seth shows up at his work in the past demanding money, so Justin starts dealing drugs out of Monet’s. But he was also skimming off the top to do drugs himself, and Seth catches him and holds him at gunpoint. The police notice and Seth gets away, but Justin gets arrested. Of all people, Bryce is the one he calls to bail him out, and Bryce gets his lawyer to make the whole thing go away.
In a weird turn of events, Bryce then continues to help Justin by paying Seth off to leave him alone for good, and then Bryce threatens him to leave Justin alone. Could Seth be the killer? Bryce then gives Justin the bottle of oxy to use instead of shooting up heroin — Bryce says it’s to save his life in a way. Justin then confesses everything to Clay, including that Seth sent him a text the day they found Bryce’s body: “I’m coming for you next.” Justin thinks Seth killed Bryce, and he’s the reason why. They raid Seth’s hideout and find Bryce’s watch. Seth comes back and Clay confronts him but Seth says Justin traded the watch for drugs. Where do the lies end?
Clay then catches Justin doing lines in their shared bathroom, and Justin finally agrees: no more lies. He confesses he had actually stolen Bryce’s watch the day of the funeral. And in the past, on the night of their first game, the team had a random drug test which Justin knew he’d fail, and that meant he was totally off during the game. Justin tells Zach he’s going to fail the drug test. Zach says he can’t help him but ends up doing something to make sure Justin won’t get caught. Justin gets more oxy from Bryce, and when Bryce tries to wax nostalgic about why and how they got “like this,” Justin point blank says, “Because you raped my girlfriend.” Uh, yeah dude. No one’s forgotten. When Justin gets homes that night, he breaks down crying.
In the present, Justin finally tells Clay where he was the night of the Homecoming game: getting high down by the docks. We don’t know for sure if we can trust him, and neither does Clay. But Justin at least seems to want to try to get clean this time. They both promise they’d do anything for each other, solidifying their brotherly bond.
But the twist comes in the very last scene of the episode when Clay gets a late-night call from … Mrs. Baker! They make a date to meet, and when Clay hangs up, he just says what we’re all thinking: “S—.”
Who killed Bryce Walker: Still maybe Justin. But also maybe Seth because of that damning text. And also maybe Mrs. Baker now that she’s back?
Episode 10: “The World Closing In”
Hannah Baker’s mother Olivia returns and her first stop is the police station for questioning in Bryce Walker’s murder case. Turns out Mrs. Baker was in town to close on her house the weekend Bryce went missing/was murdered. She had called Clay the night of the Homecoming game but says they never spoke or met up. She also goes off on the sheriff, pointing out that they’re putting more resources into solving the murder of a convicted rapist than they ever did for his victims. Meanwhile, Tony tells Clay that Mrs. Baker didn’t reach out to Tony but she did check in with Jess. They met up and Mrs. Baker says some vague things about not being over it and being in town to take care of “unfinished business.” And Clay finally tells Jess about Justin’s lapse in sobriety while Zach acts shady asking Alex about the murder case. He’s been jumpy and weird about it all season. What is he hiding?
Monty has a meeting with the school’s new guidance counselor and brushes off her kind attempts to talk. Clay finally meets with Mrs. Baker on a random park bench. She’s worried about the voicemail she left for Clay because apparently, it sounds suspicious. What did she say? Also, weirdly enough, Tony lied about not being in touch with Mrs. Baker because they met up in the past and talked about his family getting deported. Mrs. Baker believes that someone in the Walker family tipped off ICE about Tony’s family, putting suspicion back on Tony. He had the motive — revenge for getting his family deported. And Tony did confront Bryce. At first, Bryce denied having anything to do with the Padilla family getting deported. But when he asked his mom, she confessed that his dad turned them in to ICE. Tony loses it on him, yelling about how everything bad that’s happened is because of what Bryce has done, and Bryce says that he thinks about Hannah every day with regret for hurting her. Tony asks if he ever listened to the tapes to hear how he actually hurt her. He says he didn’t and asks Tony for a copy. But Tony makes him listen to them together. Bryce breaks down and says maybe he should be dead instead of Hannah. Tony says, “No one should be.”
Bryce tries to get Tony to get him in contact with Mrs. Baker but Tony doesn’t think it’s a good idea. And when Tony tries to broach the subject, Mrs. Baker says that he better pray that Bryce doesn’t try to talk to her because she doesn’t know what she’d do if he did. A week later, Bryce was dead. Tony tells Clay everything, adding that Bryce was desperate to see Mrs. Baker. Clay still suspects Tony, but he says he was with his boyfriend all night. When Tony flips it on Clay, he responds, “I was all alone.” That’s not looking great for Clay!
Jess finds Justin at work to reject his breakup request, confronting him about his drug use. She says she won’t give up on him. Clay meets with Mrs. Baker to ask if Bryce ever came to see her after hearing the tapes. She says he did. He essentially ambushed her at her hotel but she refused to speak with him and told him she would never help his redemption or penance. When she brushed him off, she said, “I wish you a lifetime of learning what sorry means.” If that really happened like she says it did, it would take the blame off her. They eerily realize they both didn’t ask each other if they killed Bryce.
Clay plays Ani Mrs. Baker’s drunken voicemail from the night of Bryce’s death in which she gets angry about Bryce playing at Liberty in the Homecoming game and says she wants to kill him. Clay doesn’t think Mrs. Baker did it though.
We finally get to the week of Homecoming and Clay rightfully says he has a bad history with high school dances, and Ani says she’s never been to a school dance. So that’s why Clay went to Bryce’s house that night, to ask Ani to Homecoming. But Bryce intercepted him first and upset him, talking about how Ani isn’t the perfect good girl Clay usually goes for. Clay tells Bryce that if he touches or looks at Ani, he’ll kill him — and that’s what Mrs. Walker overheard that night. Clay tells Ani about that night, and Ani remembers finding Bryce drunk at home where he said he missed and needed her, and then grabbed her.
Before Mrs. Baker left town in the present, she met with Mrs. Walker to talk about losing a child and how punishing someone for the murder won’t make her pain hurt any less. Back at the Jensens, Justin thanks Clay for telling Jess about his relapse. But the moment is interrupted when the police arrive with a warrant to search the house and him, taking his cell phone. Hope Clay has been deleting any incriminating messages about him, Bryce, Tyler, and everything else!
Who killed Bryce Walker: It could be Zach, Tony, Clay, or Mrs. Baker. But it’s probably not Mrs. Baker.
Episode 11: “There Are a Few Things I Haven’t Told You”
In the present, Clay’s worried about a text he sent to Bryce saying he wanted to kill him after Homecoming, which is pretty bad for the case building against him. Clay says he deleted the text, but it can’t be that easy, right? Tony’s freaking out that the cops will try to turn their attention on him again. His alibi with his boyfriend isn’t the whole truth. What is he hiding? Alex’s dad double checks his alibi that he was hanging out with Jessica, and Jessica’s alibi is that she was asleep in bed, so one of them is lying. But there are texts between her and Clay she’s worried about. The cops also double-checked on Monty’s alibi. And Ani’s mysterious bloody top was found by her mother who remembers that she wore it Homecoming night. Is everyone lying about their alibi?! There’s a real truth-telling problem at Liberty.
Back in the past, Bryce’s mom was proud to learn that Bryce was going to make the Dean’s list at Hillcrest, and he broaches the subject of transferring back to Liberty for spring semester to play baseball with his friends and set things right. So Mrs. Walker made a phone call a few days before Homecoming that, according to Ani, would set in motion the chain of events ending in murder.
Tyler considers telling the story of what Monty did to him to help clear Clay’s name, but Clay tells him to only do it if it would help Tyler. Clay also urges Tyler to talk to someone else like Jess if Clay gets arrested and won’t be able to help him anymore. At school, Monty brags about how he was getting drunk at Charlie’s place during the murder, but another kid doesn’t seem so sure that his alibi is true. Zach says he was with a friend but won’t say who it is. Jess is told to make a public apology about the Homecoming game protest or else she’ll be removed as student body president. In the past, she tried to get the Homecoming game canceled and finds out from Principal Bolan that Mrs. Walker called to get Bryce re-enrolled at Liberty for spring semester, so that’s why she plans something big for the game with the Hands Off Our Bodies club.
In the present, Jess freaks out that she told Ani she was with Justin after the game to try and protect him, but she was actually home in bed, which is what her dad told the cops. But Justin doubts her story that she was in bed because he had five missed calls from her that night that sounded like she needed him for something, which he tells Clay. And now that Ani’s mom knows about her and Bryce, Ani tells Clay to tell the police the truth about everything.
Clay’s parents and his lawyer try to get him to give any evidence that would point to Mrs. Baker as the murderer after the police took his phone with her drunken voicemail. It would be a smart move since cell towers reveal that Clay was near Bryce’s house and the waterfront (where Bryce’s body was found) the night of his murder when he was “driving randomly.” And the cops found steroids in Clay’s room, making him look guiltier. Jess tells Tyler about the apology she has to make and that he doesn’t need to go to the HO meeting since he only goes to support her, so Tyler finally opens up to her about how he’s more than an ally to sexual assault survivors. He shows her the mysterious flash drive he’s had since last season – it’s a video recording he made, detailing his assault and essentially his manifesto explaining why he was going to shoot up the Spring Fling. Both Jess and Tyler cry while watching but are glad to see that Tyler is not that person on the recording anymore. He also tells Jess that he had told Bryce about the assault. But he didn’t just tell him – he showed Bryce the video too. That’s when Bryce promised to do something to make things better for Tyler, so that he’d never have to be afraid of Monty ever again. Tyler again broaches the idea of telling the police about Monty to help clear Clay’s name, and Jess promises to be there for him no matter what he decides.
Zach goes looking for Alex at the boxing gym and runs into Tony. He’s still acting shady and asking weird questions about Clay. He says he knows in his heart that Clay is innocent. Is it because Zach is the guilty one? Zach definitely knows/is guilty of something. But murder?
While trying to get ahead of the cops, Clay’s lawyer ran all his search history, and as Justin puts it, it’s really dark stuff. Clay’s secret? He writes fanfiction! That is incredible. But in his stories, he sometimes has to murder someone, hence the questionable searches. So yeah, things are looking really bad for Clay. Jess confronts Monty about why he hurts people, and then she goes back to HO for help with something.
The night of the Homecoming game, Jess gets a text from Bryce while planning their football game protest with HO and meets him in the parking lot. He says he needs to give her something and tells her to meet him out by the pier after the game. You know, where he was murdered.
In the locker room, Bryce confronts Monty about Tyler’s assault, and he doesn’t just confirm he did it – he brags about how it was a joke. As if Monty couldn’t get any worse, he actually does. Bryce threatens Monty to leave Tyler alone, and if he doesn’t, Bryce will go to the police with information on everything Monty did last year. And there’s a witness: that seemingly good underclassmen who works with Jess at the theater heard the whole thing. Hopefully that helps Monty finally go down for everything.
After halftime ends, Jess’ HO protest to end rape culture storms the field and they all strip down to show “blood” red handprints painted on their bodies. And we learn that’s what the red stain on Ani’s shirt really was: paint, not blood. Tyler sees the red paint and it’s a trigger for him from his own assault, and when the cops start storming the field Bryce warns Ani to leave before things take a turn. That’s why Jess was upset with her at the beginning of the season in the present day timeline, because Ani listened to Bryce and left while she stayed on the field. The fight started because a Hillcrest player assaulted Jess and grabbed her chest, and Justin stormed the field to beat him up (after Jess got in a few hits of her own). The entire field became a brawl, and later everyone was gathered in the gym. Jess tries to call Justin but he was meeting with Seth to make a deal – he’ll sell drugs for Seth in return for a favor. Is that favor … putting out a hit on Bryce?
In the present, Ani confronts Jess about her alibi and lies. But Jess wonders if everyone will go down for the murder in some way. And Clay asks Tony to help him disappear. Is he worried that he’ll be pinned for a murder he didn’t commit … or one that he did?
And in the very present, as in Ani’s narration of the season, we finally learn who she has been talking to in the police interrogation room: Alex’s dad.
Who killed Bryce Walker: The list is still narrowed down to Clay, Jess, Justin, or Zach. With only two episodes left, we’re about to find out for sure!
Episode 12: “And Then the Hurricane Hit”
Tony plans to drive Clay to Mexico to stay with his family and hide out to escape a murder charge, but Tony’s boyfriend is not jazzed on Clay dragging Tony down and making him look guilty, which Clay overhears and so he leaves. He says goodbye to Ani, but she’s upset and tries to get him to stay by offering to be his alibi. But he’s done getting anyone else in trouble to save him, and so she kisses him and tells him, “This isn’t over.” Her mom saw everything. Oops.
Zach and Monty face off in the weight room, and Charlie is getting increasingly doubtful of his friendship with Monty. Good instincts, Charlie! Clay calls Tyler to let him know he won’t be at school, but Tyler’s disappointed that Clay will miss the joint Liberty-Hillcrest assembly, saying that he really needs a friend for it, which guilts Clay into staying. Jessica makes her speech, but instead of an apology, she makes a heartfelt plea to actually listen and recognize sexual assault survivors. As survivors start to stand up and make themselves heard in front of both schools, Clay shows up to the assembly and bolsters Tyler’s confidence to stand up and be recognized as a survivor. Seeing him stand sets off a chain reaction: Charlie sees Monty as the monster he is, more students (both male and female) stand up, and Justin stands up as a survivor too, which shocks Jess. Principal Bolan even starts the applause. Tyler is approached by the other male survivor who stood up, and he asks to be a part of HO. Things are really turning around for Tyler.
But Ani was curious about a line in Jess’ speech about making a mirror to see yourself in. She’d heard it before, but where? That mystery, and all the good feelings, are put on pause though, because Clay is arrested for Bryce’s murder in the school gym, before he could run away again.
Back in the past, the morning of the Homecoming game, Mrs. Walker and Bryce share a nice moment where she teaches him yoga to help with his tight muscles, with an interesting subtext about respecting the body’s boundaries and not forcing anything. He starts to cry, and she holds him. Meanwhile, Deputy Standall gets closer to finding out about Alex using steroids.
Back at school, Tyler is enjoying some newfound kindness from his peers for the first time and even has his old friend group back. Charlie approaches him and says he’ll go to the police to corroborate Tyler’s story about Monty. Zach tries to resign as captain of the football team and ominously says it’s because he doesn’t have a future, according to him. Is he talking about his injury and football, or is he planning on confessing to a crime?
Justin finally opens up to Jess about his trauma, how he was sexually abused as a child by one of his mom’s junkie boyfriends. But it goes further than that – when he was on the streets and needed money, he was assaulted by guys who were paying him. The two of them share a moment and bond over their shared trauma, and things are finally starting to look good for them as a couple.
Back at the Homecoming game, Clay saw Bryce kiss Ani, and when he confronts her about it she lies and says that Bryce misinterpreted her intentions. Now we know the truth about their relationship, but Clay had no idea back then. And during the halftime brawl, Clay went straight for Bryce, which the whole school saw. But Clay lost Bryce in the crowd, so after he dropped off Tyler he went to talk to Bryce. That’s when Clay sent Bryce the damning text.
But while Clay is being interrogated by the police, the real confession is happening in … the weight room, because of course. Zach tells Alex that he killed Bryce and he has to do something about it now. Alex doesn’t believe him, and he doesn’t think Zach should go down for killing someone like Bryce. He thinks Clay will get off anyways since he’s innocent and implores Zach to keep quiet. But Zach goes to the police to confess just as Deputy Standall finds evidence in Alex’s room that he’s been using steroids, and Standall leaves to go to the station to question Zach. That’s when we get a bigger picture of what happened that night.
Bryce witnessed Zach kissing Chloe on the head before the game, and then she told Bryce about the abortion and how Zach helped her through it. During the game, the guys start hitting dirty and Bryce confronts Zach about “stealing” his girlfriend. There’s the old Bryce we knew and hated! That’s the first time all season he’s acted like his true character. And we watch as Bryce knowingly and intentionally takes out Zach’s knee. He even paused to put his helmet on before dive-tackling Zach’s leg from the side. The old Bryce is definitely back.
And Zach confesses to Standall that after he went to the hospital that night, he didn’t stay home. He followed Bryce to the pier (where Bryce was waiting for Jess to meet him) and beat him up pretty badly. Zach was going to leave him there until Bryce riled him up again, saying some pretty nasty things about Chloe, so Zach stomped on his knees and threw his phone into the water. But the important thing is: Zach left Bryce alive. And Deputy Standall drives that point home in the present, telling Zach that Bryce died by drowning, not from any of his injuries. Now we know why Zach’s been acting shady all season — he truly believed he had killed Bryce. But it wasn’t him. Someone else pushed him over the edge, literally.
While Zach is “confessing,” Tyler goes to the police station with his friends to officially file a report about what Monty did to him. And the real shocker comes at the very end of the episode, when in the past, someone who is clearly a guy based on his shoes and pants (we don’t actually see the body or face) found Bryce at the pier after Zach left him beaten and bloody, meaning he is the real killer. Monty is arrested in the present for sexual assault and “maybe murder.” And we finally catch up to when Ani started her narration with a conversation with Deputy Standall. Afterward, she meets up with Jess to confess that she slept with Bryce, which is the worst thing she’s ever done. Then she asks: “Do you want to tell me yours?”
Who killed Bryce Walker: Jess is definitely still hiding something, which Ani can tell, but those shoes at the pier were undeniably male. Is it Clay or Justin? Or somehow … Alex? Deputy Standall is onto something with the steroids that Alex clearly bought from Bryce. But is there something more to his story? It’s time to watch the finale and find out!
Episode 13: “Let the Dead Bury the Dead”
The finale opens with Monty being perp walked in prison orange to visit with his dad. When his dad asks if he’s gay, he says, “Sure,” and his dad spits on him. At least he’s finally embracing his sexual identity? It’s weird to feel good about anything happening with Monty right now.
Clay’s out of jail and back home with a GPS unit on his ankle that will track him to his cleared destinations: school, the library, etc. It’s a lot better than prison! And Clay’s mom tells Justin that Seth has been arrested for parole violations and is going away for a long time. Plus, they had detectives tailing them. Justin tells Clay the favor he asked of Seth was to get rid of the dealer Justin saw the night of Bryce’s murder so Justin could be Clay’s alibi. That’s actually really sweet in a totally messed up way! And then Justin tells Clay some “really heavy s–.” He tells Clay something that Jess told Ani the night before, but we don’t hear what it is.
At the police station, Deputy Standall goes over some evidence that showed someone with a limp struggled with Bryce before his death. It could be explained by Zach, but it could also mean Alex, which is definitely what Standall is thinking. But Tony’s also still suspicious, and his boyfriend Caleb asks him again to tell him the truth about Homecoming night. Clay meets with the school’s guidance counselor who tries to inspire him to keep showing up, because things do change; just look at how he helped Tyler.
Ani tells Clay new information which we still don’t hear, and Clay is worried about her going to the police with it. We hear the beginning narration back from the season premiere as she starts from the beginning playing over a scene where Clay finds Zach cleaning out his locker. Clay tells Zach “the truth,” but we still don’t hear it. What is happening?! Jess gives something to Justin and says she’s scared. They’re planning something big.
Ani tells Deputy Standall the killer is someone who was most likely to take a gun and pull the trigger. The only person we know who has done that to a human being is Alex … to himself. Alex, meanwhile, is asking Tyler for a gun. But Tyler doesn’t have any. What he does have is his secret project, where he’s been taking a photo of himself every day since his attack to see how he’s changed. And Alex realizes that Tyler talking to the police was like a weight had been lifted off of him. Clay catches up to Alex in the hallway and says that he thinks Ani did it because she’s the only one left. But it’s clear that Clay is trying to get something out of Alex. He knows. Ani gets a coded text message and starts talking about how Monty threatened Bryce the night of the game and all the other players heard it. But as Ani continues her speech about how Monty followed the Hillcrest bus to follow Bryce, we see that she’s wrong: Monty actually stayed back with the guy he hooked up with the summer before. They went back to his house and slept together, and Monty actually seemed really happy, but still refuses to call himself gay.
The night of Bryce’s murder, we see that Jess really was home and in bed, and she calls someone after she can’t get ahold of Justin to meet up. We also learn that Tony wasn’t in bed with his boyfriend – he was meeting up with a fixer with ties to the Mexican cartel because he was laundering money to send to his family. According to Ani, Alex met up with Tyler and Clay was with her, driving around all night, and Monty went to the pier to kill Bryce. But we see what really happened: Alex showed up at the pier with Jess. Bryce gave her a tape he made (and accidentally got blood on) with his confession and apology owning up to everything he did. Jess wanted to leave him but Alex went to help him stand up, but Bryce, in a fury of pain, started yelling about ruining Zach’s life for what he did, and how Jess obviously set him up, so Alex pushed him over the edge. He couldn’t swim and drowned. Jess tells Alex that they have to stay apart to make sure they never get caught for Bryce’s murder. The group came together to help cover it up for Alex, and Tyler agreed to be his alibi because Alex was the one person who was always nice to him. They convinced Charlie to plant Bryce’s tape in Monty’s locker to seal the frame job. Standall is still convinced that it’s Alex, based on his questioning, but the group doesn’t waver in their cover-up.
When Ani puts the blame on Monty, Standall says it would be a tragedy to blame the wrong person for Bryce’s murder. However, he drops the bomb that Monty was killed in his jail cell only hours ago. Back at Clay and Justin’s room, the whole gang (including Charlie!) gathers and Alex reveals he wrote a confession earlier, which is why he had asked Tyler for a gun. Jess reveals she made a copy of Bryce’s tape and she plays it for the whole group. Standall tells Alex that Monty is being named as the killer, but the way he watches his son react to the news speaks volumes. He knows the truth. They hug and cry together, and later Standall burns the tape and the clothes Alex wore when he killed Bryce, sealing the frame-up.
Things are surprisingly happy at Thanksgiving, with Jess joining the Standalls for dinner and Caleb and Tony FaceTiming with Tony’s family before joining the Jensens for dinner. Justin finally comes clean about needing more help with his addiction. Ani tells her mother that she’s dating Clay, which is news to him but he goes with it. Their first date? Tyler’s photo exhibit at Monet’s that Justin convinced him to do to show off all his hard work, with a photo of everyone who helped him this year. Zach apologizes to Tyler for everything that happened and any way he contributed to Tyler’s life being hell (and turns out he also doesn’t know that he’s good-looking????????). Everything seems like it turned out okay, weirdly.
But some random fisherman digs up the bag of Tyler’s guns that had been thrown in the river, and the guy Monty had hooked up with, Winston, confronts Ani, knowing that Monty didn’t kill Bryce. He says Monty didn’t deserve to die like that. Clay, Justin, Jess, and everyone else may be content with how things ended up, even getting excited about deserving some happiness in the future, but there are a few really large loose ends that are going to rear their heads next season. We’ve got one season left at Liberty High. Will everyone make it out alive? Will anyone get real happiness?
Who killed Bryce Walker: Alex, while Jess watched and didn’t help save Bryce. And the entire group helped cover it up to frame Monty, who was killed in prison.