Karou, a 17-year-old art student in Prague, doesn’t know much about her origins. Other-worldly creatures called chimera, which possess the physical characteristics of both animals and humans, raised her. Chimera are what humans refer to as demons or devils, and seraphim are their mortal enemies.
Karou is human, though her hair grows blue due to a wish granted her by Brimstone, the leader of her surrogate family. Brimstone is a sorcerer who uses dark magic and collects teeth of all kinds to provide power. He often sends Karou on errands around the world to pick up teeth and deal with his business partners. He pays her in small wishes.
Karou has ready access to Brimstone and the other chimera through doors around the world, which become portals when a chimera is waiting on the other side. In the human world, Karou takes classes, hangs out with classmate Zuzana and tries to get ex-boyfriend Kaz off her tail. When handprints start appearing on all of the portal doors that she uses, she discovers that seraphim are planning an attack on the chimera.
As a seraph named Akiva and his fellow soldiers mark doors, Akiva sees Karou. There’s something strangely familiar about her, and he can’t get her off his mind. Karou and Akiva fight on the street. Karou bears the tattoo-like markings of hamsas eyes on her hands, which give her power to subdue the angel and escape.
When Brimstone catches the curious Karou in his office and secret areas beyond, he sends her away. She can no longer access the chimera and suddenly realizes the war between the two sides is much more momentous than she imagined. Brimstone’s messenger bird delivers a wishbone to her, and she wears the mysterious token around her neck. Feeling she must help Brimstone, Karou formulates a plan to reach him through a portal in the sky. She intends to use high-value wishes she’s stolen off of Brimstone’s former clients to fly through the air.
Akiva continues to pursue Karou, trying to figure out who or what she is. He knows her name means hope in the chimera language. Readers learn Akiva was born and bred to be a soldier, as all seraphim are. His father had numerous concubines and offspring. A chimera named Madrigal once saved Akiva in battle, and the two became secret lovers. Madrigal was beheaded for her indiscretion with the enemy. After losing her, Akiva feels only bitterness and resentment.
Karou injures Akiva in another street encounter, then remorsefully brings him to her apartment to patch him up. They talk, and the romantic tension between them grows. Akiva explains Brimstone’s tooth collecting to her. He says the pain inherent in tooth extraction gives Brimstone his power, because magic always comes at a price. Karou and Akiva wander through Prague with Zuzana and her boyfriend.
Akiva begins to cry when he sees the wishbone around Karou’s neck, and he tells her that he now knows who she really is. She begs him to tell her about her past, but he’s afraid. Akiva’s half-siblings appear in all of their angelic glory before a gawking crowd. They are the angel’s closest companions, yet he battles them so they won’t destroy Karou.
Back at Karou’s, Akiva uses the wishbone to restore Karou’s memories of her true identity. Karou was actually Madrigal in her first life. She can suddenly recall everything, such as being romantically pursued by a leader named Thiago and being beheaded when Thiago caught her having an affair with Akiva. Because Brimstone supported Madrigal’s and Akiva’s desires to stop the war, he resurrected Madrigal as Karou. The hamsas on Karou’s hands were Akiva’s clue that she was a revenant, someone who had been resurrected. But the wishbone, which had been Madrigal’s, let him know she was his true love.
With her memories now intact, Karou understands her attraction to the enemy angel. She is anxious to restore their relationship and work with Akiva to end the war. Then Akiva confesses his terrible secret: He has recently helped kill all the chimera Karou loved. Karou leaves him and plans once more to access the portal in the air to determine what, if anything, is left of her family.