Alex Mosher (Winslow Fegley), a young boy from Brooklyn, New York, holds an artistic talent for writing bewitching scary stories. However, one night, Alex breaks down in his room and threatens to burn all of his stories while his parents discuss their worries for his unusual love for horror outside, causing Alex to run away from his apartment.
Alex takes the elevator to reach the boiler room downstairs. However, the elevator mysteriously halts on a strange floor where Alex finds an eerie apartment, 4B. A television plays Alex’s favorite horror film, “Lost Boys,” and a slice of pumpkin pie lures him inside the apartment. But as soon as he walks in, the apartment traps the adolescent storyteller.
Moments later, the witch, Natacha (Krysten Ritter), captivates Alex and commands him to write a new scary story for her each night. However, Natacha threatens the storyteller, saying if they aren’t good or scary enough, it will be the last thing he’ll ever do. Frightened by the warning, Alex decides to narrate the stories from his nightbooks, as he suffers from writer’s block and fails to pen down new stories.
In the witch’s magical apartment, Alex meets another trapped kid, Yazmin (Lidya Jewett). She helps Alex get accustomed to the apartment and its mundane life quickly so that he can concentrate on the task for which he has been held captive. She explains that the apartment travels all over the world and lures kids in, where they either become slaves to Natacha like Yazmin or mysteriously vanish, implying Natacha kills them, if they prove to be un-useful. While brainstorming ideas in the apartment’s library, Alex found hidden writings inside age-old storybooks. The girl who scribbled the messages was lured into the apartment by the sight of a unicorn, and when she followed its trail, a witch trapped her there. Alex dubs this enigmatic author “Unicorn Girl.”