The novel opens with a ghostly prologue narrated by Frances Nicoll, a dead girl whose spirit is trapped beneath a school, recounting how masked doctors dissected her searching for something inside violet-eyed women.
Set in an alternate Victorian England where the boundary between the living and the dead, known as the Veil, has thinned enough for spirits to reach through, the story follows Silas Bell, a 16-year-old autistic transgender boy assigned female at birth, publicly known as Gloria. People born with violet eyes can perform spirit-work, communicating with the dead through the Veil. The Royal Speaker Society, a powerful brotherhood, controls all mediums and enforces the 1841 Speaker Act, which prohibits violet-eyed women from practicing spirit-work under threat of execution. Silas has spent his life hiding his gender identity while tutors trained his autistic traits out of him through punishment. He calls his internalized voice of fear and compliance "the rabbit." At his brother George's wedding six months earlier, Silas begged George for help escaping their parents' marriage plans, but George refused. When Silas saw that George's bride had violet eyes and wore a Speaker ring, signifying membership in the Society, he understood George was complicit in the system threatening him.
In November 1883, Silas disguises himself as a boy and attends a Speaker gala hosted by Viscount Luckenbill, the Society's president, hoping to receive a medium's seal, a brand granting legal freedom. The ceremony requires him to open the Veil while a condemned violet-eyed woman is executed, but Silas refuses to kill her. She breaks free and stabs a medium; Silas performs emergency surgery. To protect George from professional consequences, Silas reveals his identity by pulling off his cap.
Lord Luckenbill proposes a deal: Instead of execution, Silas will attend Braxton's Finishing School and Sanitorium, which claims to treat "Veil sickness," a fabricated diagnosis applied to violet-eyed women who deviate from expected behavior. In exchange, Silas's parents consent to his engagement to Lord Luckenbill's son, Edward. Silas's father pins him down and calls him ungrateful before Lord Luckenbill intervenes and escorts Silas to the remote, walled school.
At Braxton's, Mrs. Forrester, the headmaster's wife and a violet-eyed former student, forces Silas to strip for inspection. Isabella Rossi, an older student, warns that the teachers will do extreme things to cure the girls. Silas meets Mary Carter, who is fiercely protective of a recently disappeared student named Frances Nicoll; Charlotte Hudson, who believes in the school's mission; Louise Hare; and Agnes Warwick, the youngest at 14. Captain Ernest Forrester, the headmaster and a former military medium, conducts an invasive assessment in an office lined with haunted war relics. When Dr. Bernthal from Bethlem Royal Hospital, commonly known as Bedlam, claims Agnes as his wife, another student, Ellen Wright, drops Agnes over the staircase banister in jealous rage, breaking her arm. Silas identifies Ellen, and Headmaster takes her away. She never returns.
When Edward visits, he reveals his true name is Daphne. She is a transgender girl who recognized Silas's discomfort at the gala. During the visit, speaking tiles, white porcelain squares that spirits can move, spell out the names Ellen Wright and Frances Nicoll with a plea for help. Silas and Daphne realize the missing students are dead and agree to investigate from inside and outside the school, respectively.
Headmaster's private lessons involve physical violence: He strangles Silas to prove that Silas's body is too weak for manhood. Silas steals a haunted button from the office and contacts a spirit killed by Headmaster, who warns him to run. He befriends the mute groundskeeper, an indentured medium who makes a recurring gesture Silas misinterprets. Daphne's letters confirm no records of Frances or Ellen exist, meaning the bodies remain at the school. Headmaster stages a demonstration by presenting Harriet Johnston, a former student whose tongue, teeth, and eyes have been surgically removed. Mrs. Forrester breaks down at the sight. During a subsequent lesson, Headmaster forces a kiss on Silas. Isabella comforts him afterward, implying she has endured similar abuse.
When George visits, Silas discovers that Headmaster has been placing glass shards in Mrs. Forrester's shoe liners. Silas tells George students are being killed, but George dismisses the claim as a Veil sickness symptom, revealing he has joined a Speaker research team.
At the winter garden party, Silas and Daphne slip away and encounter men in burial-shroud masks unlocking the dressing room. Silas realizes the groundskeeper's gesture was mimicking these masks, warning about masked men at the school. Isabella's suitor, Dr. Jessett, claims her as his fiancée. That night, Silas finds Isabella having cut herself open to remove a fetus from Jessett's repeated assaults. Silas performs an emergency procedure and stitches her closed. Headmaster takes Isabella away, and she is killed.
Mary, having connected Frances's disappearance to the dressing room murders, agrees to help Silas. When Headmaster returns with Dr. Bernthal, Mary attacks him with a mirror shard, and Silas grabs the fallen keys. In the dressing room, he discovers a trapdoor to a basement operating theater where Isabella's dissected body lies. Silas opens the Veil, and the spirits of Frances, Ellen, and Isabella emerge. Headmaster throws Mary down the stairs and locks them both in.
Headmaster returns with Dr. Bernthal and a third masked man, straps Silas to the table for vivisection, a live dissection intended to locate the anatomical source of spirit-work. Silas recognizes the third man: George. Before they begin, Daphne arrives at the school. With Mary held at scalpel-point as insurance, Silas is sent to the parlor, where he whispers the truth against Daphne's lips during a kiss while Mrs. Forrester eavesdrops.
Silas enlists the groundskeeper to smash Headmaster's office window, climbs through, and finds a letter George wrote confirming the vivisection program. When Mrs. Forrester discovers him, Silas grabs every haunted relic and tears the Veil open, unleashing spirits that flood the school with supernatural cold. He realizes Louise secretly sent his letters to Daphne. With stolen keys, Daphne and Silas reach the frozen basement, where Headmaster and Dr. Bernthal have been killed by the spirits. Mary survives on the table, protected by Frances's ghost. George has escaped. The school collapses as they flee.
At Lord Luckenbill's manor the next morning, Silas presents the incriminating letter. Lord Luckenbill reveals he approved the experiments, sparing Silas only because Silas resembles his late wife. He proposes marriage to Silas, pins him against a mirror, and tears his clothing. Silas mentally kills the rabbit, his internalized voice of compliance, smashes the mirror, and drives a glass shard into Lord Luckenbill's throat. Daphne and Mary find him, clean him up, and confirm no one will mourn Daphne's father. Daphne cuts Silas's hair short, and they dress in clothes matching their true identities before leaving together.
An epilogue one year later finds Silas and Daphne married under the surname Barry in Liverpool, where Silas studies for medical school. Mary invites them to Manchester, where they reunite with Agnes, now widowed with a baby. The coffeehouse bears a symbol of resistance against the Speakers: an eye with a needle through it. Agnes asks Silas if he wants to kill George. The novel closes on the Latin phrase
Mors vincit omnia: Death conquers all.