The film explores adolescent issues through the minds of three friends and their reactions after a boy named Rudy Carges (Conor Donovan) is killed in a tree house set on fire by local bullies Jeff and Kenny, who carelessly didn't find out he was inside until too late. The boy's twin brother Jacob, a boy with a huge birthmark (also played by Donovan), decides to seek revenge against the bullies. Leonard (Jesse Camacho) who's overweight, survives the tree house fire but loses his sense of taste and smell. Thanks to the fire, this prompts Leonard to go on a diet, which isn't welcomed by his obese family. The boys' female friend Malee (Zoe Weizenbaum) tries to befriend an adult named Gus (Jeremy Renner), a grief-stricken patient of her therapist mother, Carla (Annabella Sciorra). Jacob's family falls apart after the death of his brother. But shortly after, his parents adopt a boy named Keith Gardner. Meanwhile, Malee begins to have a crush on Gus and changes the song for her recital to one Gus liked, just for him. As time goes by, she sees Gus as her "soul mate". She sneaks into his house one night to find him grieving. Afraid to confront him, Malee steals his gun and leaves. She gives it to Jacob the following day.
Jacob's mother gets furious when she finds out Jeff and Kenny are being put in juvenile hall for only one year as they were charged with manslaughter instead of murder, while Jacob's father views Rudy's death as an accident. Jacob frequently visits Jeff and Kenny, and initially threatens them, until eventually Jeff commits suicide. Jacob befriends Kenny, soon learning he has an early release and is illegally moving to New Mexico. Meanwhile, Leonard's father decides to take his sisters to Florida instead of Leonard (who would usually go). Leonard decides to force his mother to lose weight by trapping her in the cellar. They both end up in the hospital after a gas leak in their home. Next, Jacob and Kenny agree that Jacob can go with him to New Mexico. Malee visits Gus and removes her clothes in an attempt to seduce him. Instead, Gus calls Malee's mother to come and pick her up. The next day, Gus explains to therapist Carla about the last fire he ever fought (which involved killing an injured little girl, upon the girl's request), claiming that Malee wanted him to take her pain away, as he was aware of her growing crush on him.
Meanwhile, Jacob's mother tells him that Keith Gardner wasn't adopted to replace Rudy, and that she wants Kenny dead, which reminds Jacob of his planned revenge. The night of escape for Jacob finally comes and he meets up with Kenny. Jacob insists on going through a construction site which he says is a secret route. Once there, Jacob points Gus's gun at Kenny, and tells him "you killed him" before shooting him dead. Jacob buries the body and leaves. He returns in the daytime, and sees Gus spreading cement above Kenny's grave.
Malee begins visiting her estranged father and Leonard's family finally starts eating healthily. The movie ends with Jacob's mother smiling at him from inside the house.