It's the 4th of July, 1996 and four high school seniors, Julie (Jennifer Love Hewitt), her boyfriend Ray (Freddie Prinze Jr), Julie's best friend Helen (Sarah Michelle Gellar) and her boyfriend Barry (Ryan Phillippee) decide to have some fun on their last summer as kids. So they party and get drunk and go to an isolated beach by their town. While on the beach, they discuss their futures beyond their small town, as well as discuss an urban legend regarding a young couple who find a hook attached to their car door. Since Ray is the only one of them that is sober, he is tasked with driving them back home. The ride soon gets out of control when Barry spills alcohol in the car, distracting Ray, who accidentally hits a random stranger on the road.
The incident soon turns ugly when the group begin to argue over what happened. The police won't believe it as an accident, since there's alcohol spilled in the car, and the car belongs to Barry. The situation grows worse when a vehicle appears in the distance. This turns out to be another local teenager, named Max (Johnny Galecki). Julie distracts him by saying they just had car trouble, and he drives on.
Once he's gone, the talk turns to disposing of the body to hide what happened. Julie feels that they should tell what they did but Barry, drunk and in a violently-upset rage, demands that no one be told, with Helen taking Barry's side. They take it down to the nearby docks and dump the body in the water, with Barry making everyone swear to take the secret to their graves.
One year later and now a freshman in college, Julie goes home for the summer. While at home, her Mom gives her a letter that was received, but it has no return address and is not postmarked. Inside, she finds a folded piece of paper with a message: "I Know What You Did Last Summer!"
Panicked over their secret having gotten out, Julie goes to Helen's sister Elsa (Bridgette Wilson), to inquire for Helen's number in New York. However, Elsa soon reveals that Helen went to college in New York and then came back, now working in their family's store.
They then go to see Barry. Barry claims that no one can know, and as the three discuss that fateful night, Barry recalls how Max drove by, and he was the only person there that night. Barry immediately suspects him, and the three head down to the nearby docks. Barry claims he'll 'talk' to Max in private, but Barry gets carried away, threatening Max with an ice pick, telling him to leave them alone, even though Max claims he has no idea what Barry is talking about.
While down at the docks, Julie finds Ray working off a fishing boat down there. He tries to patch things up regarding their now-broken relationship, but she runs off.
Back inside Max's workplace, unseen by anyone, Max is killed when an unseen person uses the ice pick that Barry had threatened Max with.
Later that evening, Barry goes to a local gym to workout. In the locker room, he hears a sound. Looking around the locker room, Barry finds nothing until he returns to his locker. He soon finds a Polaroid photo of his BMW, with a message written on the back: "I Know." Barry also finds that his jacket is gone. Rushing out of the locker room, Barry see his car turn on, and back off down the road. Barry gives chase, only to have the driver attempt to run him down. The driver, wearing a dark fishermans rain slicker and weilding a large ice hook, gets out of the car and stands over him.
Barry ends up in the hospital, but is unable to tell the police anything about the person's identity, other than that he wore a black rain slicker, and carried an ice pick. In his hospital room, the four friends talk about what happened, with Barry still strongly against revealing what they did. Julie then reveals that she has been doing some investigating, and reveals that the name of the person they struck was David Egan. Feeling that maybe Egan survived and is staying with a local relative, Julie and Helen head out to the Egan's residence deep in the inland swamps.
Julie and Helen arrive at David's house where they find David's moody older sister, Missy (Anne Heche). Missy explains that David's death devastated their family, as Julie and Helen act under the guise that their vehicle has broken down. While both of them originally think that Missy may be the killer, talking with her, they soon write her off their suspects list. However, Missy does explain that someone came after her brother had died, claiming to be his friend. When the girls ask for this person's name, Missy believes it to be 'Billy Blue'.
Helen returns to her home that night, and prepares for the 4th of July parade the next morning. She does not notice the fisherman sneaking into her house through the back door, going upstairs and hiding in her bedroom closet. Waking up the next morning, she is horrified to find that someone has slashed her hair in the night, and written 'Soon' on her vanity mirror.
Helen then calls Barry and Julie to come over quickly. On her way over, Julie hears a strange sound coming from the back of her car. Upon reaching Helen's, she hears something in the trunk and opens it, to reveal Max's dead body, with crabs crawling over him! Julie rushes in to tell Barry and Helen, but when they return, the crabs and Max's body have disappeared from the trunk. Barry and Helen assume Julie was hallucinating, but she swears she did see Max's dead body.
Julie, Helen, and Barry confront Ray about the recent events, which Barry thinks that Ray is behind it. Ray strongly denies being the one and claims that whoever knows is after him too for he received a similar letter.
Julie decides to revisit Missy to ask her more questions about David Egan and about the visitor 'Billy Blue', while Helen and Barry go to participate in the 4th of July parade. During the parade, Barry keeps an eye out for the killer, but notices that there are several people wearing the dark rain slickers running about. Chasing one, Barry leaves Helen on one of the parade floats. As it passes by a 2-story building, she notices a shadowy figure in a black rain slicker, reveal an ice pick in a threatening way as the float passes by.
Meanwhile, Julie arrives back at Missy's house in hopes to convince her that her brother is still alive, and to secretly find out more about who the stranger called Billy Blue was. Missy tells Julie that her brother is dead, and presents her with a suicide note that was left by him which reads 'I will never forget last summer'. Julie thinks that the handwriting matches that of the note she received, and tries to convince Missy that her brother is not dead. However, Missy soon grows upset by Julie's ravings, and orders her to leave her property.
At the annual Croaker Pageant, Helen is in attendance as her reign as the Croaker Queen is about to come to an end. Barry is watching from an upstairs balcony, but as the pageant goes on, Helen lets out a yell when she sees the killer pull Barry into the shadows! Rushing upstairs with a police officer, they look around but find no sign of the killer or Barry. The officer thinks Helen imagined it, and offers to take her home.
On the way there, the officer cuts through an alley and finds someone working on their truck engine, which has stalled across the street. The officer gets out to investigate, only to come face-to-face with the killer, who kills the officer with the ice hook. Helen manages to break out of the police car, and rushes for her family's store, where her sister Elsa lets her in. Helen demands that Elsa lock all the doors, but before Elsa can finish the job, the killer enters through a side door and slashes her to death. The killer then stalks after Helen, chasing her out of the store, down an alley, and near a pile of used tires where she is killed steps away from the 4th of July parade that is going on.
Meanwhile, Julie has returned to town does some further research into the death of David Egan. A year before the 'accident,' David and his girlfriend Susie were involved in a car crash not far from where the film's 'accident' scene occurred. David survived, but Susie died. The research mentions that Susie had a father, named Ben Willis. Julie then figures it out: They did not kill David Egan that night! Her assumption is that David had been found along the road by Ben, who killed him and disposed of the body. But before Ben could get home, the four crashed into him during their joyride that night.
Julie then decides to tell Ray who is working down by the docks. She explains her theory, but he doesn't believe it. As they talk, she suddenly notices the name of the boat he works on Billy Blue! Julie panics, thinking that Ray may actually be the murderer and takes off running, only to be chased by Ray before a fisherman stops him, and puts her onto his boat.
As she looks around the boat, she finds one room that contains photos and other articles about her, Helen, Barry and Ray... and realizes that she is on Ben's boat! Ben has set the boat adrift and intends to kill Julie, who leads him on a cat-and-mouse chase through the ship. Eventually, Julie winds up in an ice room to store fish, and finds the corpses of Max, Helen and Barry.
Ray manages to come to his senses, and takes a small motorboat, catching up to Ben's boat. In the end, Ray manages to use the ship's rigging to save Julie, causing Ben to lose his arm in which he carried the hook, and plummets over the side.
All that is found of Ben is the severed arm with the hook in the hand. When the Police question Julie and Ray about why Ben would have wanted to kill them, they claim they have no idea.
A year later, Julie is enjoying another year of college, and is getting ready to return to her hometown to see Ray. As she prepares to take a shower, her college roommate says that there was a letter left for her. Fearing the same thing as before, Julie is relieved to find that it is an invitation to a pool party.
Returning to the showers, the hot water has caused the room to steam up. As Julie heads towards one shower stall, she stops upon seeing writing on one of the doors, which reads: "I still know."
The last shot is Ben, crashing through the glass shower door at the camera (aka Julie), the ice pick now embedded in the stump of his missing arm.