The film opens in the town of Vernon, where podcaster Chris Dubasage (Jonathan Potts) is talking about the infamous Sweet Sixteen Killer from 1987. In October of that year, Tiffany Clark (Liana Liberato) was murdered and found in her parents’ garage on the night of her sweet sixteen party, and she was stabbed sixteen times. Days later, Tiffany’s friends Marisa Song (Stephi Chin-Salvo) and Heather Hernandez (Anna Diaz) were also killed and found in a similar manner. The killer was never found, but Vernon still views him as an icon and hosts a “murder tour” while people wear his mask.
Teenager Jamie Hughes (Kiernan Shipka) is getting ready to go to a concert with her best friend Amelia Creston (Kelcy Mawema). Her mother Pam (Julie Bowen) tries to come in and tell her to be safe since it’s the 35th anniversary of the murders, and Pam was friends with the victims. When Pam suggests that Jamie stay and celebrate Halloween with her and her dad Blake (Lochlyn Munro) like always, Jamie coldly brushes Pam off before Blake takes her and Amelia to the concert. Pam is also seen getting a message from Chris, who Blake always found to be a creepy weirdo and always preferred his beloved newscaster dad Norm (Fred Henderson).
While Pam is waiting for trick-or-treaters, someone wearing the Sweet Sixteen Killer’s mask shows up at the Hughes house. Pam thinks it’s a crude joke until the guy slashes at her with a knife. Pam uses self-defense techniques against him, but the killer overpowers her and stabs her to death. Her body is found by two kids before Jamie and Blake return to the scene. Jamie is left crying in her room, regretting the last thing she said to her mom.
At school, Principal Doug Summers (Conrad Coates) offers his condolences to Jamie, while Sheriff Kara Lim (Patti Kim) suggests Jamie is a suspect or knows something about the killer’s identity. Jamie fires back at her, saying she is as useless as her own sheriff father was in catching the killer back in 1987.
Jamie later joins Amelia at the site of the school science fair, where her project is a working time machine, based off the designs of her mother Lauren (Kimberly Huie). While it is not complete, Amelia has the travel date set to October 27th, 1987, which is the night of Tiffany’s murder when the killing spree began. Jamie later contacts Chris since she knew he and Pam were texting, with hopes that they may uncover the killer’s identity. Chris shows Jamie a note that was supposedly left in Pam’s locker in high school by the killer, warning her she was going to be next. When Jamie returns to join Amelia at the fair, the killer appears and chases after Jamie. She hides in the photo booth where the time machine is, and the killer activates it by stabbing the control panel.
Jamie time-travels to 1987. She is taken to the high school to look for the young Pam and is instantly enrolled as a new student. She meets Pam (Olivia Holt), who is the most popular mean girl at the school alongside Tiffany, Marisa, and Heather, who are all called “The Mollys” because they like to dress like Molly Ringwald. Jamie ends up playing dodgeball in gym class with them, and Pam repeatedly hits her with multiple balls. After class, Jamie introduces herself to the girls and tries to find a way to get Tiffany to cancel her sweet sixteen party for that night, but just gets rudely told off by Pam.
Jamie first goes to find Sheriff Dennis Lim (Randall Park), Kara’s father, to try and warn him that murders will begin happening. She then goes to find the young Lauren (Troy L. Johnson), who is a science nerd like Amelia will be. Jamie explains her situation like the plot of “Back to the Future” and how she needs to find the killer and return home as soon as possible. She convinces Lauren by showing her her iPhone and then taking her to the photo booth where the machine is. Lauren gets her tools to try and fix it.
Later, Jamie and Lauren go to Tiffany’s party, but jock Randy Finkle (Jeremy Monn-Djasgnar), who is Jamie’s gym teacher in the present, bars them from entering because they are “losers”. The young Doug (Nathaniel Appiah) is also rejected from going in, and Jamie also finds the young Kara (Ella Choi), who is a major stoner here. Jamie tries to find a way to sneak in and get in with The Mollys, even though they think she’s weird. She sees the young Blake (Charlie Gillespie) and gets grossed out after briefly finding him hot, and he is already dating Tiffany. Randy ends up throwing her out again.
When Jamie gets back inside, she witnesses Blake and Tiffany fighting, and Jamie inadvertently convinces Tiffany to hook up with a classmate named Eddie Royal (Tate Chernen), who is a super famous rock star that Jamie is a fan of. Tiffany and Eddie go to her parents’ bedroom to make out, and Jamie starts going all around the house looking for Tiffany when she doesn’t appear in the garage. Eddie disappears, and the killer emerges from the closet to begin stabbing Tiffany to death on the waterbed. Jamie and Pam arrive too late to find her dead. Jamie and Lauren accompany a traumatized Pam home, where they see that she is rude to her mother (Jamie previously noted that her grandmother never visits because of Pam).
Back in the present, Blake notices Jamie has gone missing, and he suspects Chris had something to do with it. Amelia sees her time machine and figures Jamie was sent back in time. She gets help from Chris, as they find new crime scene photos of Tiffany’s murder, since they remember her being found in the garage unlike now where it was her parents’ bedroom. Amelia also notices a message on the waterbed from Jamie saying “Stab the machine”, cluing her in that another metal conductor is needed to make the machine work.
Jamie returns to school with the girls and learns about a student called “Fat Trish” who died after driving drunk. Trish had a brother that everyone calls Lurch (Zach Gibson) that works at the fair and is known to creep others out. Jamie later joins Pam, Marisa, and Heather at the same cabin where Marisa was murdered, despite Jamie’s protests to keep things small. Randy, Kara, and Blake also show up for festivities. Jamie also tries to prevent Pam from hooking up with Blake so soon for fear of messing something up in the future. When Jamie gets locked out of the cabin, she sees the killer entering and tries to warn Kara and Randy. Jamie then sees the killer going after Heather instead of Marisa. The killer chases Heather and stabs her to death in the living room. Jamie and Blake manage to fight the killer off and send him running.
Lauren later tells Jamie that her phone, which is going to help her return to her time period, is running low on battery, and if it gets to zero, Jamie will be stuck in 1987 forever. At the fair, Jamie sees the ride, the Quantum Drop, and thinks it can be an alternate source of power. Jamie only remembers it because Pam had mentioned that she found out she was pregnant with Jamie while on that ride.
Jamie then sees Lurch, suspecting he is the killer. She goes into his van and is found by him, but he just has video game cartridges everywhere. Lurch catches Jamie and tells her he is not a killer, but he does have an interest in wanting to develop games.
The rest of the group shows up at the fair, while in the present, Amelia is closer to fixing her machine. The group gets stalked by the killer inside a haunted house. As he goes after Marisa, the others fight back against him, ending with Kara impaling the killer with a scythe. Jamie unmasks the killer, revealing him to be Doug. Pam then remembers that Doug was Trish’s boyfriend. Marisa then realizes that Doug knew about a sleepover they had where the Mollys invited Trish over and got her drunk because they wanted to know if she really had sex with their coach. After crying in Tiffany’s room, Trish drove home and got into her fatal accident. Jamie starts to blame Pam, thinking she would allow Trish to do that, but Pam says that she was in a fight with Tiffany at that point and was not at the sleepover. She also doesn’t remember receiving a note in her locker like what Chris had shown Jamie. Moments later, ANOTHER killer shows up and slashes Marisa’s throat, forcing everyone to run. Also back in the present, Lauren finds Amelia knocked out, and the time machine is gone.
Jamie runs toward the Quantum Drop, and the killer takes a moment to stab Norm on live TV. Pam and the killer follow Jamie onto the ride, where Pam recalls hearing Jamie saying something about a pivotal moment there involving her. The killer stabs Pam, but Jamie ejects her from the ride so she can be safe. The killer is revealed to be Chris, who killed Pam and his own dad to kickstart a new killing spree so he can profit off of it with his podcast. He attempts to kill Jamie as the time machine activates, but Jamie shoots him with Lauren’s nail gun and kicks him against the walls of the machine, causing Chris to explode into pink mist.
Jamie returns to the present and is elated to find Pam alive. Lauren and Amelia show up moments later, letting them know that their efforts to save Jamie worked. Lauren privately talks to Jamie outside, letting her know that a lot has changed since she altered the past, so she gives her a notebook to check in on all the differences. A young man (Alex Pychtin) shows up at the house, revealed to be Jamie’s 34-year-old brother, who is actually the one named Jamie, and the main Jamie is now called Colette.
The ending text of Lauren’s notebook reveals more differences, such as how Pam and Blake got together immediately, leading to Jamie having an older brother with a husband and daughter. Pam also has a better relationship with her mom. Randy became the school principal, and Kara is now chief of police, and much happier with her job. Lauren has a better job as a bioengineer, and Amelia is still Jamie’s (or Colette’s) best friend and a genius. Lurch became a video game developer and started an anti-bullying organization in honor of Trish. Eddie Royal went from a hard rocker in a band called “Killer Instinct” to an emo band called “A Waterbed Away” because that’s how close he was to death. Chris is still alive now since his father’s murder traumatized him and led him to become a monk, but Lauren still keeps tabs on him.