Daniel Upton, the story's narrator, begins by telling that he has killed his best friend, Edward Derby, and that he hopes his account will prove that he is not a murderer. He begins by describing Derby's life and career. He then tells of Asenath Waite, and how Derby and she wed.
A few years later, people start to notice a change in Derby's abilities. He confides in Upton, telling him strange stories of Asenath, and how he believes her father, Ephraim Waite, may not actually be dead.
Upton is called to pick up Derby who has been found in Chesuncook, Maine, rambling incoherently. On the trip back, Derby tells of Asenath using his body, and suggests that it is in fact Ephraim who resides in the body of Asenath. Before finishing, he has a small seizure and rapidly changes personality, asking Upton to ignore what he might have just said.
A few months later, Derby shows up at Upton's door and says he's found a way to keep Asenath away; to stop her using his body. Derby finishes renovations on his old family house, yet seems strangely reluctant to leave Asenath's old place.
Upton receives a visit from Derby, who begins raving about his wife and father-in-law. Upton gets him to sleep, but has Derby taken to Arkham Sanitarium. The Sanitarium calls Upton to tell him that Derby's "reason has suddenly come back", though upon visiting, Upton can see it is not the true personality of Edward Derby.
Upton is roused from his sleep by a knocking at his door, using "Edward's old signal of three-and-two strokes". Upton believes it may be Derby, but opens his door to find a "dwarfed, humped" messenger, carrying a letter from Derby. The letter explains that Derby had in fact killed Asenath and buried her body in their cellar. Despite this, Asenath had managed to take control of his body while he was in the Sanitarium, meaning that "the thing on the doorstep" was actually Derby inhabiting Asenath's putrefying corpse. The note implores Upton to go to the sanitarium to kill Derby, who has been permanently possessed by Asenath-Ephraim's soul. Upton does so, thus hopefully banishing Asenath-Ephraim's soul to the hereafter, though he reveals that he is afraid of having his soul transferred as well.