The novel alternates between present-day chapters and flashback sections labeled "THEN," which gradually reveal events from the summer that fourteen-year-old Becca McGuire disappeared from a sleepaway camp in the Berkshires of Massachusetts. In a brief prologue set in the past, Becca makes her best friend, Kate, pinkie-swear that they will be friends forever, squeezing hard and warning her not to laugh because forever is a long time.
Twenty-six years later, Kate Willis is a psychologist at the University of Virginia who consults for the university's Division of Perceptual Studies (DOPS), a department investigating extraordinary cognitive phenomena. Dr. Rushkin, the chair of DOPS, refers her to the case of six-year-old Henley Haskell in Stockbridge, Massachusetts, whose mother claims the girl recalls a past life. Kate's ex-husband, Steve, a social anthropologist at DOPS, discusses the case with her. Kate, who has a track record of debunking such claims, must determine whether Henley's reported memories are credible. The trip also brings her back to the area where she attended Camp Sauquamet as a girl, a place she has avoided since Becca vanished.
Kate meets Emily Haskell, Henley's mother, a former attorney who moved to the Berkshires after her twin sister died of cancer. Emily explains that Henley began speaking about her "other grandparents" at age three, referring to people named Nana, Poppa, Sammie, and Noodle, and eventually called this period "the time before she died." Emily's three years of notes and drawings include repeated images of a yellow house with a tree house, a church with a cannon on the lawn, and a graveyard rising from a lake. The graveyard image triggers Kate's memory of Fair Isle, a small island in Lake Sauquamet with an abandoned cemetery linked to a local ghost legend about the Gray Lady. When Henley meets Kate, she freezes, calls Kate "mean" and "a liar," and runs away, as if she recognizes her.
Kate reconnects with Mariana Edwards, one of her closest camp friends from a group they called the "Bunk-Twelve Four," which also included Becca and Lennie Anderson. Mari, now a music teacher living nearby, reveals that Lennie died of cervical cancer. When Kate raises Becca's death, she is stunned to discover that Mari remembers only the official story: that Becca snuck out alone in a canoe and drowned. Mari shows no memory of what Kate believes really happened, and Kate leaves shaken.
Flashback sections gradually reveal the truth. That final summer, the four girls were consumed by the legend of the Gray Lady. Becca, increasingly volatile, pressured them to paddle to Fair Isle and flirted aggressively with Cameron Dunbar, an eighteen-year-old counselor on whom Kate had a crush. On the night of the trip, Becca brought a bottle of Fireball whisky she refused to explain. On the island, they found the graveyard and a stone mausoleum. When Becca tried to force a terrified Mari inside, Mari shoved her, and all three girls slammed the door shut and locked it. They fled into the woods, where they saw a woman in white with a hideous, bloated face who pointed at them. They screamed and ran.
When they returned thirty minutes later, Becca was dead, her skin blue and her face frozen in a grimace. Panicked, the girls carried her body to a canoe, filled her pockets with rocks, and sank her in the lake. Lennie made them swear to a cover story: They never left the bunk.
In the present, Kate's investigation deepens. During an interview, Henley identifies Becca's photograph in a camp yearbook and points to Kate's, saying "That's me" and "That's you." She insists she did not drown and tells Kate that someone hurt her, that she could not breathe, and that Kate locked her in a dark place with the Gray Lady. Kate calls Tammy McGuire, Becca's mother, and confirms that Henley's references to "Sammie" and "Noodle" match real details of Becca's childhood, a beloved stuffed animal and a doll, that were never made public.
Kate tracks down Jenny Lin, who founded Henley's former preschool but now works at a local restaurant. Jenny reveals that on the night Becca disappeared, three canoes were missing from the boathouse, not two, meaning someone else followed the girls to the island. Jenny also discloses that Cameron vanished after that summer.
Kate confronts Mari at the camp, forcing her to face the truth about what they did to Becca's body. Mari leaves furious, tearful, and shaken. Kate then meets Natalie Horace, Becca's rival from a neighboring cabin, who confesses she followed the girls to Fair Isle disguised as the Gray Lady. The prank was coordinated with Becca herself, who wanted to scare her friends. But Natalie heard no screaming from the mausoleum when she arrived, meaning Becca may already have been dead or dying.
Kate's research connects a second cold case. A teenage boy known as the Twin Falls John Doe was found dead in a nearby state park fifteen months before Becca's disappearance, his skin described as blue, with a bottle of Fireball whisky among his possessions. Kate discovers the boy was the real Cameron Dunbar, a seventeen-year-old from Texas, and that the counselor she knew had stolen his identity.
Kate's friend Stephanie Morrow, a toxicologist at the National Institutes of Health, explains that sodium nitrate, a chemical found in food preservatives and fertilizer, could cause fatal respiratory failure and cyanosis, a blue-purple discoloration of the skin, within an hour. Kate theorizes that the whisky was poisoned. She confesses the true events on Fair Isle to Lieutenant Detective Matt Bishop, who matches the fake Cameron's fingerprints to an arrest in New Jersey under another stolen identity. Kate traces the trail to Richie Novak, a serial impostor suspected of arson in an earlier house fire. Richie once lived in the same motel as Becca's family and used to babysit young Becca. Kate realizes Becca recognized Richie at camp and tried to blackmail him, prompting him to poison her whisky.
Meanwhile, a threatening note addressed to "Becca" appears in the Haskells' mailbox, suggesting someone is watching the family. Kate also discovers a rational source for Henley's "memories": Mari's teenage son, Alex, told Henley the story of Fair Isle and showed her drawings of that night, based on details Lennie drunkenly shared with him. Kate recognizes that she herself may have unconsciously guided Henley's responses to confirm the connection to Becca.
When Henley disappears from school, Kate races to Lake Sauquamet, certain that Richie, now living locally under the name Ethan Moore, has taken her. She spots him dropping Henley's limp body into the lake from a canoe. Kate dives into the freezing water and pulls the girl to Fair Isle, performing CPR until Henley revives. Near the old graveyard, Richie confronts them with a gun, calling Henley "Becca." Henley suddenly grows calm and speaks to someone unseen, saying "the lady" is pointing at Richie. Terrified, Richie spins toward the darkness, slips, and the gun fires into his own face, killing him.
In the hospital, Henley draws a woman holding hands with a little girl, identifying the woman as "the lady who helped last night" and the child as Becca. When Kate asks whether Henley invented her memories, Henley insists she does not remember anything. Kate accepts that she may never know the full truth. Henley makes Kate pinkie-swear they will always be friends, then says, in a voice echoing the novel's opening, "You shouldn't laugh, you know. Forever is a long time."
Kate returns to Virginia considering attending Alcoholics Anonymous and acknowledging that some mysteries may be larger than science can explain. The novel closes with a phone call from a defense attorney about a new case: a twelve-year-old boy arrested for murder claims the killing occurred during a nightmare.