Samantha "Sam" Kingston awakens on February 12, known as Cupid's day. She is picked up by her friends Lindsay, Ally, and Elody, who are excited about Sam's plans to lose her virginity to her boyfriend Rob that night. During a class lecture on
Sisyphus, students distribute roses. Sam receives one from Rob and another from a boy named Kent McFuller, a former grade school friend who is in love with her. Kent invites her to a party at his house, but she is unenthusiastic. During lunch, the girls make fun of Juliet Sykes, an outsider whom they view as a "psycho". At the party, Lindsay confronts Juliet and the two fight, resulting in many of the guests dousing Juliet with beer. Humiliated, Juliet leaves in tears. As Sam and her friends are driving home, the car crashes, apparently killing them. Sam wakes in her room on Cupid's Day again. Assuming the previous day was just a nightmare, Sam continues on with her day but finds that similar events occur, culminating in a car crash again. Sam wakes up on the same day again. Realizing she is in a
time loop, she convinces the group to have a sleepover instead of going to the party. They avoid the crash, but discover later in the night that Juliet committed suicide that day. Sam also learns that Lindsay and Juliet were once best friends. As the time loop continues, Sam realizes that nothing she does matters. She starts airing her grievances with people, then attempts to spend more quality time with the ones she loves. She also attempts to make amends with Anna Cartullo, a student she had bullied, and becomes closer to Kent, who comforts her after an unsatisfying first sexual experience with Rob. In another loop, at the party, Kent recalls that Sam once defended him from a bully after his father died, after which he resolved to one day be her hero. They share a kiss. Sam hears the fight between Lindsay and Juliet from the hall and chases the latter through the woods. Juliet reveals that Lindsay's stress from her parents' constant fighting before their divorce caused her to start
wetting her bed. When the two were on a camping trip, Lindsay wet her sleeping bag, but blamed Juliet and has been bullying her ever since. Juliet later commits suicide by running in front of Lindsay's car, and making Sam realize that it was Juliet who they hit on the original day. Sam wakes up again with a sense of calm and understanding, knowing what she must do to end the loop. She resolves to be kind and considerate as she goes about her day. She sends roses to both Juliet and Kent, breaks up with Rob, and tells her friends why she loves them. At the party, she kisses Kent and tells him she loves him. When Juliet attempts to run into traffic, Sam pushes her out of the way at the last second and is hit by a truck. As she dies, Sam remembers all her positive memories. Her ghost sees Juliet standing over her body saying that Sam saved her, but Sam states, "No. You saved me." == Cast ==