The novel traces seven generations of Dupree women across more than 160 years, moving between present-day Chicago and the family's ancestral land in Land's End, Alabama. Through alternating timelines, the story unravels a legacy of secrets, trauma, and resilience, anchored by one young woman's search for her father and the family history her elders refuse to share.
Fourteen-year-old Tati has never known her father. She searches for clues during her mother Nadia's weekly hair appointments in their Chicago basement salon, where Nadia does Tati's grandmother Gladys's hair every Sunday before church. Gladys, whom Tati calls Mimi, is sharp-tongued and controlling, and whenever the conversation turns to Tati's absent father, Nadia shuts it down: "Ain't I enough?" Also present is Toya Grant, Nadia's longtime friend, and Toya's daughter Desirée, Tati's best friend. Mimi makes cutting remarks about Toya not being "their own kind," exposing fractures in every relationship in Tati's life.
The narrative reaches back to 1870 to introduce Emma Dupree, Tati's earliest named ancestor. Emma was raised by Evangeline, a midwife who practices root work, a form of folk healing using herbs and spiritual remedies, on the Dupree plantation. Evangeline is neither enslaved nor free. When the dying plantation owner, Zephaniah Foster Dupree, leaves his land to Evangeline and Emma, Emma begins asking about her origins. Evangeline reveals that Emma's father was Zephaniah Foster and that her mother, brought from across the Atlantic, died the day Emma was born, but Evangeline refuses to give the mother's name.
Emma marries George Dupree, but she miscarries three times in one year. Evangeline attributes the losses to Emma's mother's spirit and builds protective altars at every doorway. Under this protection, Emma delivers a daughter, Jubilee. Three subsequent boys all die at birth or within days. Evangeline tells Emma the curse allows only girls to survive: "She couldn't have you, so now only her girls can have her."
Jubilee, who goes by Jubi, leads a secret life. By 1917, she has spent eight years passing as white, having married a white businessman named Logan Danube after telling him she is Cajun. When Jubi delivers a daughter, Ruby, the child is born dark-skinned. Logan threatens to kill the baby. Emma intervenes, revealing Jubi's true identity and offering Logan an alibi: He can claim his wife and child died in childbirth. He agrees, and Jubi returns home across the tracks, her deception finished.
Ruby grows up proud but kept at arm's length by Jubi, who resents the child whose appearance ended her deception. At 17, Ruby discovers an unexplained gift for braiding hair, her fingers moving as if guided by instinct no one taught her. During the summer of 1934, she begins a secret affair with Sampson, whom she knew as a child. When Sampson leaves, Ruby is unknowingly pregnant. Jubi and Emma reveal the family curse: Dupree women can carry only girls, and any boys will die. Ruby delivers a daughter, Gladys.
Gladys's story bridges the Southern past and the Northern present. In April 1953, 18-year-old Gladys is walking alone to church when JB Springer and his cousin Carl Darren Danube, Logan's grandson, drag her into the cotton fields and assault her. Eugene, a Pullman porter who serves passengers on the railroad's sleeping cars, has been courting Gladys during his stops in Land's End. He proposes shortly after. Gladys accepts, afraid she may be pregnant. Jubi crosses the tracks to confront the elderly Logan, telling him Carl Darren assaulted his own granddaughter. On the train to Chicago, Gladys loses the pregnancy. She and Eugene begin married life in a cramped kitchenette, the trauma of Alabama sealed between them.
In 1980, Nadia, Gladys and Eugene's daughter, is a 25-year-old college dropout who left school to care for her younger brothers at Gladys's insistence. At a bar, Nadia meets Roman Bishop Brown, a nightclub promoter who says he and his wife, Deborah, are in a "rough patch." Nadia begins an affair. Months in, she discovers she is pregnant. Roman denies responsibility and disconnects his phone number. Gladys takes Nadia to church and requests prayers for her unwed daughter, humiliating her. Nadia blames Toya and Toya's boyfriend Lou for introducing her to Roman, and their friendship ruptures, renewed years later only when their daughters attend the same preschool.
The novel then tracks Tati from 14 to adulthood. At her eighth-grade graduation, Mimi excludes Toya and Desirée from a family photo, insisting, "Not all skinfolk is kinfolk." That September, after Tati's first homecoming dance, an argument in the salon escalates until Mimi reveals Tati's father's name: Roman Brown. Nadia breaks down, repeating "I'm enough."
During Thanksgiving break of her freshman year of college in 1999, Tati discovers a poem Nadia wrote about carrying a child in fear, hidden in a shoebox. She visits Lou Cortez, Desirée's father, who reveals that Roman lives in Indianapolis. At Thanksgiving dinner, Tati forces a confrontation that leads Mimi to reveal her own trauma: She was assaulted by white men in Alabama and was already pregnant when she came to Chicago, losing that baby on the train. She admits that Nadia, a girl, reminded her of the curse, while her sons, boys unprecedented in their family line, felt like blessings.
On New Year's Eve 1999, Tati meets Roman at his nightclub in Indianapolis. In his office, she sees a family photo showing his wife Deborah and their three children, including a daughter, Faith, who is the same age as Tati. Roman acknowledges he always knew Tati was his but refuses to claim her, calling her "too old to be barking up the daddy tree." Tati leaves understanding that Roman is not worth the search and that Nadia truly was enough.
That night, Tati burns her journal entries and does Nadia's hair for the first time, reversing their roles. Nadia opens up about Roman, and they reconcile. Just after midnight, Mimi arrives with the family Bible and tells them the origin story passed down through generations.
The final chapters reach back to 1860. A young woman from an African village is captured and brought to Alabama on a ship captained by Zephaniah Foster Dupree, who rapes her repeatedly and names her Sarah. On the plantation, Evangeline removes her braids and covers her hair. As war approaches, Sarah learns two English words: "war" and "run." She joins enslaved men planning an escape, braiding their route into her hair as a map. At eight months pregnant, she flees with six men on the night of the spring equinox. The next day, a search party captures her; her head covering has fallen, exposing the braided map. Zephaniah Foster administers 222 lashes, shaves the map from her scalp, and cuts off her fingers. He forces Evangeline to deliver the baby, a girl, in the dirt, then slits Sarah's throat. Her final consciousness is a memory of her mother braiding her hair and the sound of a drum.
In the epilogue, Gladys dies in 2019 and is buried in Land's End beside Emma, Jubi, and Ruby. Tati convinces Nadia and her partner, Curtis Knight, to relocate and gets the property listed on the National Register of Historic Places. She meets Joshua Freeman IV, a sociology professor, and together they research the family history. Tati becomes pregnant, marries Joshua at St. Joseph's African Methodist Episcopal church, and delivers a daughter at home. In the final scene, Nadia does her granddaughter's hair while Tati reads the dedication of her verse manuscript: a poem addressed to "Dear Sa'rah," naming the seven daughters of Dupree and declaring, "we remember."