Teenager Mary Cummings (Jena Malone), who has “been born again her whole life,” is about to enter her senior year at American Eagle Christian High School near Baltimore. She and her two best friends, Hilary Faye (Mandy Moore) and Veronica (Elizabeth Thai), have formed a girl group called the Christian Jewels. Mary’s “perfect Christian boyfriend” Dean Withers (Chad Faust) tells her, as they’re swimming underwater, that he thinks he’s gay. In her shock, Mary hits her head in the pool and has a vision in which Jesus tells her that she must do everything she can to help Dean. Hoping for a sign, Mary goes to a shooting range with Hilary Faye, who has a “spiritual solution for everything” and tells Mary (not knowing about the situation with Dean) that if all else fails, Jesus could still restore their “spiritual and emotional virginity.” Believing that Jesus will restore her purity, Mary sacrifices her virginity to have sex with Dean in an attempt to restore his heterosexuality.
Despite Mary’s efforts, when she comes by Dean’s house on the morning of the first day of school, Dean’s parents tell her that they found gay pornography under his bed and that they’re sending him to Mercy House, a Christian treatment center. Mary tells her friends, as well as Hilary’s brother Roland (Macaulay Culkin), who uses a wheelchair, about Dean’s homosexuality, and makes them promise to keep it a secret. When they arrive at school, they see Cassandra Edelstein (Eva Amurri), the school’s only Jewish student and a rebel who despises Hilary. In homeroom, Mary meets new student Patrick (Patrick Fugit), the son of the school’s principal, Pastor Skip Wheeler (Martin Donovan), a skateboarder who has been doing missionary work (through skateboarding) in South America. Mary tries to put up a good front at the assembly, in which Cassandra fakes speaking in tongues in order to get under the skins of the other students.
Mary soon realizes that she is pregnant from her encounter with Dean. When she goes to Planned Parenthood to confirm the pregnancy, she is seen by Roland and Cassandra. Roland reveals that he isn’t really a Christian, unlike his fanatically religious sister. Cassandra reveals she’s only at American Eagle after being thrown out of her old school and decided she could “handle the freaks” at American Eagle over being homeschooled by her parents. Roland and Cassandra bond over their shared skepticism. Mary finds out that she’s not due to give birth until after her high school graduation and decides to hide her condition from her friends and family until then. However, she feels forsaken by Jesus and loses her faith, causing her to be ostracized by Hilary and replaced in the Christian Jewels with a previously unpopular girl, Tia (Heather Matarazzo), who’s been struggling to get into the Christian Jewels for years. Later, after Pastor Skip gets word about Mary, he tells the Jewels to help Mary regain her faith, but they seem to misunderstand him and stop Mary in the street and try to exorcise her of demons instead.
By Christmas, Mary is still hiding her pregnancy. Cassandra mocks her about it when they are alone in the bathroom, but when she realizes Mary’s anguish, Cassandra changes her tone and offers her support. They cut school with Roland, and the three of them become good friends. When they run into Patrick and Hilary at the mall, Cassandra distracts Hilary (pretending she wants to be converted) while Patrick and Mary sneak away and Patrick confesses his feelings for Mary. Pastor Skip warns his son when they’re at home together against dating Mary, even as Pastor Skip (still married to his wife, although they live separate lives) has been secretly dating Mary’s mother, Lillian (Mary-Louise Parker).
A few months later, after multiple fights at school between Hilary Faye and Cassandra, Pastor Skip puts Roland, Cassandra and Mary on the school prom committee (chaired by Hilary Faye) to punish them. While working together, Patrick asks Mary to go with him to the prom, which Mary accepts, but as friends. Later that day, Roland and Cassandra get their hands on a picture of a younger, much heavier, and much more awkward Hilary Faye and load it onto the desktop of every computer in the school. The next day, someone vandalizes the school with graffiti. Mary and Cassandra are initially the prime suspects, and to their shock the spray cans are found in their lockers. While searching the lockers with the Jewels looking on, Mary’s homeroom teacher finds a sonogram of Mary’s baby. She tries to hide it, but it drops to the ground in front of Pastor Skip’s feet. Cassandra is expelled from school, while Mary is banned from the prom.
Pastor Skip tells Lillian that he will break off their relationship if she doesn’t send Mary to Mercy House. Lillian decides that she’s going to send Mary away, saying that it’s the best thing for Mary and the baby, but secretly because she doesn’t want Skip to break up with her. Despite being banned, Cassandra and Roland scheme to go to prom and to bring Mary with them, providing her with a dress and inviting Patrick to meet them. Roland also finds that Hilary Faye charged several cans of spray paint to her credit card just hours before the attack—indicating that she was the one who spray-painted the school.
Hilary Faye, Tia and Veronica head to the prom. On their way in, Tia finds a credit-card receipt for the spray paint—signed by Hilary Faye, revealing that Hilary did, in fact, spray-paint the school. When Mary, Patrick, Cassandra and Roland arrive, Hilary attempts to have Mary and Cassandra thrown out, but Pastor Skip decides to let them stay. The four then accuse Hilary Faye of committing the vandalism herself and framing Mary and Cassandra for it as revenge for humiliating her. Hilary Faye attempts to swear before God that she is innocent, but Tia, fed up with Hilary Faye’s lies and hypocrisy, reveals the signed receipt to everyone, exposing Hilary as the true vandal. Veronica turns on Hilary as well, calling her a fake.
As the now-exposed Hilary Faye flees with the others in pursuit, Dean suddenly arrives with other teenagers from Mercy House. Dean is surprised, but not upset, by Mary’s pregnancy; he meets Patrick warmly, and Mary is similarly accepting towards Dean’s roommate/boyfriend Mitch. Pastor Skip tries to send the new arrivals back to Mercy House, but they refuse, and Mary and her friends support them. Suddenly, Hilary crashes her van into the school’s huge effigy of Jesus. Realizing what she has done, she breaks down in tears of regret. Cassandra shows some sympathy towards Hilary, feeling sorry for her. As paramedics arrive to the accident scene, Mary abruptly goes into labor and is taken to the hospital.
In her hospital room, Mary’s and Dean’s friends and family crowd around the baby girl, while Pastor Skip waits outside debating whether to come in. In a voice-over, Mary tells the audience how she has returned to believing in a God who loves and helps the ones that love and help others in need.
It’s a brilliantly funny but also has underlying moral issues about Christianity and acceptance and deals with many different types of problems facing adolescents, from disability to underage pregnancy