At the end of 1964, a 14-year-old white girl named Lily Owens thinks back on the eventful summer she’s had.
The narrative then jumps back to the start of the summer. Lily lives with her father, a cruel man named T. Ray Owens, in the town of Sylvan, South Carolina. Lily has vivid memories of the death of her mother, Deborah Fontanel Owens: when Lily was 4 years old, she remembers her mother packing a suitcase and arguing with her father. The next part of her memory is blurry, but she recalls holding a gun, followed by a loud explosion. Lily blames herself for Deborah’s death. She keeps a small box full of her mother’s old things, including a photograph of her, a pair of gloves, and a picture of the Virgin Mary depicted as a black woman. The words, “Tiburon, South Carolina,” are scrawled on the back of the picture of the Virgin Mary, though Lily doesn’t know why.
In July 1964, Lily’s maid, a black woman named Rosaleen, tells Lily she’s going to go into town to register to vote, since the Civil Rights Act has just been passed. Lily, who’s very close with Rosaleen, decides to go with her. As they walk into the center of town, Rosaleen gets in a fight with a trio of racist white men, who attack her and hit her in the head. Rosaleen is sent to jail for assault.
Lily rushes back to her home, where she has a fight with her father. T. Ray tells Lily that her mother never loved her, and was planning to leave them both on the day she died. He also tells Lily that Rosaleen’s life is in danger, since the trio of racists who attacked her will want to fight again. Furious, Lily decides to run away from home. She writes T. Ray a letter in which she tells him she doesn’t believe what he said about her mother. Then she goes to the hospital where Rosaleen’s injuries are being treated, and helps Rosaleen sneak out. Lily tells Rosaleen they’re going to Tiburon to find out more about Deborah, and Rosaleen reluctantly agrees, since she knows she’s in danger if she stays in Sylvan.
Rosaleen and Lily hitchhike to Tiburon. They stop at a general store, where Lily notices jars of honey with the same image of the black Virgin Mary on them. She learns that a local black family, the Boatwrights, makes and sells this honey, and she and Rosaleen go to their house, hoping to learn more about Deborah.
Rosaleen and Lily find that the Boatwrights are a trio of sisters: August (the oldest), June (a schoolteacher), and May (the youngest, and very “strange”). Lily lies and tells the Boatwrights that her parents are both dead, and that she and Rosaleen, her maid, are going to Virginia. August immediately tells Lily and Rosaleen that they’re welcome to stay with them. Rosaleen and Lily quickly learn that August’s life revolves around bees: she keeps a huge number of beehives, which she uses to make honey, candles, and other things. Lily also notices that the three Boatwright sisters keep a statue of the Virgin Mary, depicted as a black woman, which they call Our Lady of Chains. Finally, Lily learns that May had a twin sister named April, who shot herself. Ever since then, May has been odd and lonely—whenever she hears about something sad, she writes down a description of the event and slips it in a stone wall by the house.
Lily becomes acquainted with Zachary Taylor, a black teenager who works for August. “Zach” is handsome and intelligent, and Lily finds herself developing a crush on him—something she’d always believed impossible. Lily also bonds with August, who’s very wise and understanding. August tells Lily a story about a nun who runs away from her nunnery, and returns, years later, to find that the Virgin Mary has been “covering for her” all these years. Lily isn’t sure what this story is supposed to mean.
Lily learns that the Boatwright sisters hold weekly gatherings for a group called the Daughters of Mary—a makeshift religion that mixes aspects of Catholicism and African-American history. The Daughters pray before the statue of the Virgin Mary, which they claim was sent to the black people of America by God himself.
Lily and Zach go to visit a friend of Zach’s, the prominent white attorney Clayton Forrest. While in Forrest’s office, Lily decides to place a phone call to T. Ray. T. Ray demands to know where Lily is, but Lily only asks him, ‘What’s my favorite color?” T. Ray ignores the question and threatens to beat Lily if she doesn’t return—Lily hangs up the phone in tears.
One day Lily makes a surprising discovery. She notices that May feeds marshmallows to cockroaches—something that Lily remembers Deborah doing years ago. Lily asks May if she ever knew a woman named Deborah, and May immediately replies that Deborah stayed with them years ago. Amazed, Lily decides to show August the photograph of her mother. Her plans are delayed, however, when Zach is suddenly arrested for allegedly participating in a fight with a trio of white men. Zach spends the next few nights in jail. When May hears about Zach’s arrest, she’s so devastated that she drowns herself in a nearby river. June and August are devastated by May’s sudden death. When Zach returns from prison, having been freed by Clayton Forrest, the remaining Boatwrights hold a vigil for May. After the vigil, Lily asks Zach if he’d date her. Zach replies that he can’t date a white woman—although he likes Lily, he wants to become a lawyer and change racist laws first.
Lily finally confronts August about Deborah. She shows August the photograph of Deborah, and August immediately tells Lily the truth: August was Deborah’s maid years before, when Deborah was only a child. August allowed Lily and Rosaleen to stay with them because she immediately recognized that Lily was Deborah’s child. As August confesses this, Lily confesses that she’s been lying to August: her father is still alive, and she and Rosaleen left Sylvan to keep Rosaleen out of jail. August tells Lily that Deborah was very depressed during her marriage to T. Ray, although she loved Lily dearly. When Lily was a small child, Deborah abandoned her family to stay with August in Tiburon. She came back to Sylvan to take Lily with her, and during this visit, she died. Lily is devastated by the news that Deborah abandoned her, as T. Ray said, despite the fact that Deborah was coming back to take her to Tiburon. August tells Lily that she must forgive Deborah. The best way for Lily to forgive Deborah, August explains, is to begin by accepting that Lily is loved. Although Lily struggles with this, she comes to accept that August, June, Rosaleen, and Zach love her dearly. In the coming weeks, she slowly begins to forgive Deborah.
One day at the end of the summer, T. Ray shows up at the Boatwright house and demands that Lily come with him—he’s traced Lily’s whereabouts using the phone call she made to him from Forrest’s office. Instead of fighting back, Lily calls T. Ray “daddy,” and apologizes to him for running away from home. T. Ray begins to cry, and whispers that Lily looks just like Deborah. Lily tells T. Ray that she refuses to come back to Sylvan with him. As she says this, the Daughters of Mary enter the room, daring T. Ray to try to take Lily away. Angrily, T. Ray leaves the house. Before he drives off, Lily asks him if it’s true that she killed Deborah. T. Ray replies that it is: although it was an accident, Lily shot her mother.
In the following weeks, Lily and Rosaleen accept that they’ll live with the Boatwrights from now on. Lily slowly forgives T. Ray and Deborah for how they’ve treated her. Meanwhile, she enrolls in the local high school with Zach. Lily concludes that she’s extremely lucky: she has so many loving mothers, including Rosaleen, August, and the Virgin Mary.