When 16-year-old Fabiola and her mother, Manman, try to emigrate from Haiti to New York, Immigration and Customs Enforcement (ICE) detains Manman in New York. Fabiola, however, is allowed to go on to Detroit to go live with her aunt and cousins. Upon landing in Detroit, Fabiola meets her cousins Chantal, Primadonna, and Princess. Chantal, the oldest, tries to track down Manman but learns that she’s going to be taken to a detention facility in New Jersey. She assures Fabiola that her mother, Fabiola’s aunt Matant Jo, will take care of it.
When Fabiola and her cousins arrive at Matant Jo’s house, Jo is disappointed that Manman isn’t coming. Matant Jo recently had a stroke and was hoping that her sister could help take care of her and her daughters. No one feeds or properly welcomes Fabiola to Detroit, and Fabiola feels lonely. In the middle of the night, she gets up to pray to her Vodou shrine. She hears a homeless man named Bad Leg singing outside. Fabiola watches as a young man—Donna’s abusive boyfriend, Dray—tries to beat him up.
The next day, Fabiola gets ready for school. As she does, she notices her cousins react strangely to a story on the local news about a white girl who died after taking designer drugs. Then, while Fabiola braids Pri’s hair, Pri tells her about her father, Phillip’s, murder, and how Matant Jo provided for her daughters after this. At school, the sisters are known as the Three Bees—nobody messes with them. Their reputation makes things hard for Fabiola, as she doesn’t want people to think she’s dangerous. Fabiola does manage to befriend Imani, a girl in her English class.
On Saturday night, Fabiola goes to a party at the Q club with her cousins. Here, she meets Dray and Dray’s best friend, Kasim. She feels drawn to Kasim, but she’s disturbed by how Dray abuses Donna. Later that night, back home, Fabiola takes her cousins’ advice and goes to ask Bad Leg where he got his name. When Bad Leg explains that he left it “on the other side,” Fabiola realizes that Bad Leg is actually Papa Legba, the lwa (Vodou spirit) of the crossroads. None of Fabiola’s cousins believe this, however.
After school the next Friday, a woman stops Fabiola and says that she knows Fabiola’s cousins and that Phillip was murdered. The woman introduces herself as Detective Stevens and tells Fabiola that she’s investigating the same overdose death Fabiola saw on the news; Detective Stevens believes that Dray sold the drugs. She offers to expedite Manman’s processing and get her a green card if Fabiola helps her find evidence on Dray. After this, Fabiola runs into Kasim, and he takes her out for dinner. They kiss when Kasim drops Fabiola back home.
Soon after this, Imani offers to tutor Fabiola in English. The girls take a bus to the café where Kasim works and hang out for hours. Dray pulls up outside at the same time as Fabiola and Imani leave the café, and he forces Imani to take a picture with him. Then, he insists on driving them home. At Fabiola’s house, Donna rips Imani out of the car and accuses her of trying to steal Dray—she saw the picture Dray posted online. As Donna and Dray fight, Fabiola realizes that Dray is the living embodiment of the lwa Baron Samedi, the caretaker of graveyards. She runs upstairs and texts Detective Stevens.
Later that week, Kasim takes Fabiola to see a dance performance. Kasim admits that the expensive tickets came from Uncle Q, Dray’s uncle—and he notes that Uncle Phillip “went down for Q.” This is all news to Fabiola. The next day, Fabiola feels so overwhelmed and distraught about Manman that she stays home from school. She uses the day to follow Papa Legba’s cryptic poem through the city to the Q club, where Dray lives with Uncle Q. The club is also the epicenter of their drug operation. When Fabiola calls Detective Stevens to tell her this, Detective Stevens already knows—but she says that tomorrow, Fabiola can talk to Manman on the phone. Manman calls the next day, and although their conversation is short, Fabiola is happy to hear her mother’s voice.
A few days later, Chantal drops Donna and Fabiola off at a beauty parlor for makeovers in preparation for Dray’s 21st birthday party. Fabiola sees this as an opportunity to trick Dray and get information on him, and she realizes that the parlor itself is an altar to Ezili, the lwa of women. When she sees that Donna’s wigs have been hiding more bruises from Dray, Fabiola tells Donna about Ezili-Danto, a version of Ezili who fights for women. She silently vows to cut Dray out of Donna’s life.
At the party, Everyone but Kasim loves Fabiola’s new look, but Fabiola tells herself she can’t worry about Kasim. Instead, she focuses on Dray and manages to snoop on his text messages. When she sees messages that she assumes are about a drug deal, she texts Detective Stevens. Over the weekend, Donna breaks up with Dray. The police arrested and released him, and then he cheated on Donna with a white girl.
During lunch that week, a girl named Tonesha accuses Fabiola of stealing Kasim—her cousin, Raquel, has already claimed him. But when Kasim picks Fabiola up after school and hears about this, he shouts out the windows that he loves Fabiola.
That night, Fabiola wakes up to pounding on the door. Her cousins shush her and make her stay upstairs, but Fabiola eavesdrops anyway. The visitor is Uncle Q, and he wants his $20,000—and he doesn’t care that Chantal, Pri, and Donna need to lay low for a while after their drugs killed the white girl. Once Uncle Q leaves, Fabiola demands to know the truth. Chantal explains that after Phillip died, Uncle Q gave Matant Jo money to raise the kids. When Matant Jo started giving the money away, Uncle Q pushed her to become a loan shark. But now, they don’t want her to have to do that anymore, so it falls to them to support the family. They swear Fabiola to secrecy and insist that she’s now the Fourth Bee—but Fabiola is livid. She knows that Detective Stevens has it all wrong: Dray didn’t sell the drugs that killed the girl. Now, Fabiola will never get Manman back.
The following weekend, Fabiola goes out to eat with her aunt and cousins. When Kasim shows up at the restaurant, she pretends she doesn’t love him anymore and breaks up with him. They make up when Kasim drops in to join Fabiola’s family for Thanksgiving. He also joins Fabiola at a basketball game later that week, but Dray is with him. Dray makes a scene by offering Donna a diamond pendant, and Donna forgives him. But that night, Donna comes home with bleeding scratches on her face.
Fabiola grows increasingly angry at Dray and at the world when she discovers that Dray has been courting Imani, but Imani is too afraid of Donna to tell him to stop. Fabiola reaches the boiling point when two girls start a fistfight with her one day after school, and ends up getting suspended for three days. Fabiola's mood doesn’t improve when she learns her cousins plan to steal Matant Jo’s pain pills and sell them at a party over the weekend.
On the first day of her suspension, Fabiola visits Kasim at work. When she sees Dray pull up outside, she knows what she has to do: she kisses Dray and offers to hook him up with people from a Haitian gang in exchange for a cut of his profits if he sells drugs at a party this weekend. He agrees. That night, Fabiola convinces her cousins to stay home, and she tells Detective Stevens that Dray will be at the party with drugs on him.
Later that week, Fabiola and Kasim have sex for the first time. That weekend, Kasim suddenly cancels his plans with Fabiola, saying that he has work to do. Fabiola gets increasingly nervous as she listens to Bad Leg sing an ominous song outside. When Fabiola can’t get ahold of Kasim, she confesses everything to her cousins. They drive to the party, and there, Fabiola finds Detective with Kasim’s dead body—the police shot and killed him. When Fabiola and her cousins get back home, Dray is there, waiting for Fabiola. He’s distraught and puts a gun to Fabiola’s head, but Papa Legba shoots Dray before Dray can kill Fabiola. Then, Papa Legba disappears into thin air. From the underworld, Dray reveals to the reader that he accidentally killed Phillip when he was 10 years old. This is why he hates Donna—Phillip’s ghost has been haunting him since then.
After this, Matant Jo decides to move out of 8800 American Street to escape the ghosts in the house. On the day that the family moves, they’ll be able to get Manman from the airport; Detective Stevens made good on her promise to Fabiola. As they pull away from the house, Fabiola mouths “thank you” to Papa Legba.