While walking in the woods with her father, eight-year-old Violet follows a strange sound that he can’t hear. She starts digging and her father seems to be used to this. However, when she unearths a dead girl, he carries her away.
Violet gets up and gets in her Honda to take her and her best friend, Jay, to school. He is the only one outside of her family that knows her secret. He has changed over the summer and so have Violet’s feelings for him. SHe tries not to make it obvious, unlike the girls that are just starting to notice him. Violet tries to avoid him, feeling self conscious, until he sends a mutual friend, Chelsea, to find her in the bathroom.
A man is looking for an unsuspecting girl to abduct. He finds one on the side of the road with a flat tire. She admits to him that she doesn’t have her phone to call for help. He tells her that he is going back to his car so that she can use his, but he comes back with duct tape instead. He puts her in his trunk, promising not to hurt her.
After a few days, Violet and Jay’s friendship is back to normal. She drops him off after school and goes home. She ends up kicking her cat out of the house because he has the echo of everything that he has killed, which leaves a funny smell she can’t stand. Violet goes over to babysit her two cousins and Jay comes over. They hang out like normal and up joking and tickling each other. When her aunt and uncle return, and they are all tangled together, they don’t think anything of it. Violet is disheartened by her lack of chance with Jay, even though he seems to be turning down girls left and right because of flaws or lack of interest.
Violet has trouble sleeping and decides to go for a run. When she gets back home, Jay is there waiting for her. They go for a walk in the woods and make plans to go to the end of the summer party. Violet gets distracted by Jay’s smile and ends up falling. He gets her back home and cleans her scrapes. Violet realizes that Jay isn’t feeling how she is and realizes that she needs to get over her crush on him.
Later that day, they get to the Lake-house for the annual party. Jay is instantly surrounded by girls and over exaggerates the story of Violet’s fall. Violet goes to sit with Chelsea and falls asleep. Jay wakes her up so they can take out one of the wave-runners. After a while, they start heading back towards shore, but Violet is drawn to something in shallow, grassy water.
Jay insists on Violet’s Chief of Police uncle bing called and he arrives very quickly. Violet is uncomfortable around so many public safety figures that have caused deaths, but her uncle helps. Her parents arrive and she goes home with her tranquil dad. When she breaks down crying, he explains that she will be okay once the girl is laid to rest. He feels bad that she inherited her grandma’s skill, but is happy with how she turned out despite it.
The man who killed and dumped the girl at the lake watches the scene after the body is found. He revels in his success and looks at potential victims before leaving.
Violet tries to deal with her situation, but can’t seem to shake off the fog until a week later when the body was buried. Another dead girl is found the same day, but this doesn’t seem to affect her. However, when another girl vanishes...
As all of the excitement starts winding down, everyone seems to act more normal. Grady, a mutual friend of Violet and Jay’s, asks Violet to homecoming. She doesn’t have chance to answer before the bell rings and says they will talk after school. She tells Jay what happened and he gets mad and avoids her. She waits for him after school but Grady lets her know that he left with his cheerleader admirer, Lissie. Violet is furious, but plays calm and agrees to go to the dance with Grady.
Violet is in a foul mood all night and hides in her room attempting to do homework. There is a knock on the door and she is surprised when it is Jay. He apologizes for his actions and explains that he doesn’t want anything to come between their friendship. Violet apologizes for dragging him with her when she found the body. They lay on her bed together and he kisses her on the forehead.
The killer finds another girl walking on the side of the road. He approaches her knowing that he has to be careful so as not to get caught. However, she seems to sense something about him and takes off running. He catches her and is able to restrain her. However, unlike the others, she struggles the whole time, rather than believing his soothing words.
Violet goes shoe shopping with her girlfriends. On the way home, she tries to convince them that she and Jay are just friends, but none of them believe it. They next morning, she comes home and her parents tell her about a girl that she used to babysit, Hailey, going missing. Violet decides that she has to do what she can to help find the murderer.
Violet tells Jay about her plan to stop the murderer. Jay tries to stop her, but soon realizes that she will not relent. They start searching at the movie theater. When they arrive in the lobby, a group of girls start talking with Jay. Violet thinks they are embarrassing themselves. Jay won’t let Violet out of his sight and even walks her to the bathroom in the middle of the movie. He holds her hand through the movie. When they leave, the flirty group of girls sees them. jay makes a gesture and Violet realizes that he isn’t as oblivious as she thought. she plans to get over her crush so as not to ruin their friendship.
At the mall Jay gets distracted in the arcade and Violet wanders off. She gets the taste of garlic in her mouth and knows it is an echo. She follows it to the other side of the mall and is about to confront whoever is in the men’s bathroom when Jay stops her. He sends her to the crowd and goes in himself. He comes back to report that there was only some kids in there smoking. When the group of boys returns to the mall, she makes eye contact with the one who gives off the echo. It takes too much out of her and she decides she needs to be more prepared.
Jay is so angry at Violet that he gives her the silent treatment at school. This gives Grady a chance to hang around Violet more and more, making it obvious that he is looking more than just friendship. Violet uses this to get Grady to take her to Brooke’s grave so that she can see her echo. she lies to her mom and says Grady asked her to go. Even though it is the kind of place Violet would normally avoid, her mother agrees to let her go.
Grady picks Violet up and they go to the cemetery. Neither of them know where Brooke’s grave is so they start wandering around looking for it. Violet senses some echoes of others, and she eventually finds the girl she is looking for (which sounds like a ringing bell).
The killer buries a girl far out in the woods. he is already anticipating his next kill.
Friday rolls around and Jay is still ignoring Violet. Grady doesn’t show up at lunch, which gives Chelsea and their other friends (Jules and Claire) a chance to poke fun at Violet about her love life. Jay walks into the cafeteria with Lissie Adams. The girls stop joking and convince Violet to go to a party to make her feel better On her way to their next class, Lissie gives her some odd looks, like she’s telling Violet to stay away from Jay. Later that night, the girls come to pick up Violet and they leave for the party.
While at the teenage house party, Chelsea and Violet make sure they avoid Grady. By the time he catches up with Violet he is incredibly drunk. Violet takes his keys and offers to drive him home. When they get to his car, he pins Violet between himself and the car. Violet tries to tell him to stop, but he keeps trying to seduce and kiss her. He only stops when Jay shows up and makes him. Grady has to beg Jay to stop. Jay tells Violet to get in his mom’s car, but she refuses, suddenly furious at him for ignoring him and then giving her orders. She tells him off and start walking back to the party.
Back on the prowl, the killer finds a girl on the side of the road walking somewhere and crying. He comforts her and she gets in his car.
Violet walks down the street, regretting not getting in the car with Jay. A car pulls up and Jay gets out and kisses her. He tells her to get in the car. She hears a car pulling away somewhere in the distance, but is too distracted by Jay to really process it.
Violet wakes up the next morning and her mom tells her that another girl, Mackenzie, went missing from the party that Violet was at. Violet goes to find her uncle so that she can help. She ends up being put into a search party and heads out to the woods. She hears a cell phone and starts following the sound. She soon realizes that the sound is Brooke’s bells. She runs to find them and runs into an officer. She continues on her way and finds the man with the echoes. He is faking his search by standing on another grave. Violet gets to a team leader and is eventually able to convince them to call for her uncle, the police Chief.
Violet hides in her room to avoid her mother’s wrath. When she hears two male voices talking, she goes to see if her uncle came to tell them what happened. Jay is there listening to the story from her father. They converse secretly and end the talk with a handshake. Her dad leaves and Jay immediately goes over to Violet and kisses her. He takes her up to her room and they make out on the bed for a while. Jay explains that he has been waiting for Violet to realize her feelings. He called Lissie to cancel on the dance. Violet agrees to go with Jay if he tells her what he was talking about with her dad. Jay yells at her for her running after the killer again because he doesn’t want to loose her. He realizes that they are in love with each other.
The next morning, Uncle Stephen is at the house. He tells Violet that the man confessed to a lot of the murders, including the girl she found when she was eight. He asks her to search the killer’s house for Mackenzie. Violet knows the missing girl isn’t on the farm, but points out any echoes for her uncle to mark.
The killer’s partner is at the house when the police chief and his niece arrive. He realizes that she was in the search party the previous day. He has to kill her if he wants to continue hunting other girls.
Violet is worried about showing hers and Jay’s new relationship at school. He makes it very obvious and most of the girls are not happy about it. Lissie confronts Violet, but she doesn’t get much accomplished before Jay shows up. Grady is avoiding Violet and even more so, Jay. The new couple spends all the time together they can. One day, Jay is called home by his mom and Violet decides to go for a run.
The killer has been watching Violet for days He is surprised when he sees her leave alone to run. He follows her.
Violet senses an echo while running. When she realizes that it is following her, she starts to run away from the hunter. It starts gaining on her and she goes off the path. She sees a man in complete camouflage chasing her. Jay yells out for her and she screams back for help. She goes through some trees and ends up falling down the ravine that leads to the river she has been trying to avoid. The imprint goes away and she closes her eyes.
Violet wakes up in an ambulance on the way to the hospital and Jay follows. He stays by her side the entire time. It isn’t until her uncle shows up that Violet is ready to tell the whole story Uncle Steven was concerned about a partner because so much evidence lead to a dead end. He orders a watch on his niece, who has a sprained ankle.
Back at home, Violet misses a day of school and keeps her ankle up. Jay comes by after school with flowers and DVDs. When she gets back to school, he is given special permissions to help her. Lissie tires to make a job at Violet, but Jay shuts her up by Kissing Violet. Later that night, Jay tells Violet that he convinced her parents to let her go to the homecoming dance.
Violet and Jay go to the pep rally where he tells her Lissie, the homecoming queen, isn’t as pretty as her. He drops her off after school and Violet tries to fight the boredom since she can’t go to the football game. There is a tapping on her door late at night. She checks the peephole and sees Jay, who shows her his new to him Acura that he got to take her to the dance. They settle in on the couch and Violet’s fear melts away, finally letting her get some sleep.
Violet gets ready for the dance. Jay picks her up and instead of a corsage, he gives her a necklace with a heart on it. They go to the dance, have their picture taken, and talk with friends. Chelsea drags Violet to the bathroom and Jay takes his guys friends to see his car.
The murderer is at the dance, dressed up as himself. When he sees Jay and Violet split up, he sees an opportunity.
Violet sends her friends ahead of her because she has to rewrap her ankle. The hunter comes in. He knows that she is the one that found the bodies. He explains that he only caught the girls and his partner killed them. Until the last one, which he buried in the same spot as the last one.
Jay sees Chelsea and asks where Violet is. When she tells him she is in a farther away bathroom, he sends her to the cop stationed at the dance and heads down the hall to help his girlfriend. The hunter tells Violet that he could snap her neck or shoot anyone that tried to help her, so she agrees to go with him.
The killer cop starts to lead Violet down the hall to take her away and kill her. Jay comes by and asks where she is going. She tries to lie to him to get him to go away, but he knows something is wrong. He punches the man, but it doesn’t phase him. while he is dealing with Jay, Violet gets the opportunity to hit the killer in the temple with her crutch. They start running, but Violet has trouble. jay carries her, but he falls. The cop catches up. Two shots are fired and a new echo smelling like dandelions is formed.
The first shot had only grazed Jay. The second shot was her uncle firing at the murdering, who left the dandelion echo. The police had found a receipt for disposable cell phones at the first killer’s house. This gave them enough to trace the second killer and realized that he was at the dance. They found the girl, Mackenzie, where Violet said she would be.