Eighteen-year–old Charity Royall is bored with life in the small town of North Dormer. She is a librarian and ward of North Dormer’s premier citizen, Lawyer Royall. While working at the library, Charity meets visiting architect Lucius Harney.
When Harney’s cousin, Miss Hatchard, with whom he is boarding, leaves the village, Harney becomes Mr. Royall’s boarder, and Charity his companion while he explores buildings for a book on colonial houses he is preparing. Mr. Royall, who once tried to force his way into Charity's bedroom after his wife's death, and later asked her to marry him, notices their growing closeness. He tries to put a stop to it by telling Harney he can no longer accommodate him in his house. Harney makes it appear as though he has left town, but only moves to a nearby village and continues to communicate with Charity.
On a trip to Nettleton, Harney kisses Charity for the first time and buys her a present of a brooch. Afterwards they run into a drunken Mr. Royall, who is accompanied by prostitutes. Mr. Royall verbally abuses Charity, causing her to become overwhelmed with shame. After the trip, Charity and Harney begin a sexual relationship.
At a ceremony during North Dormer’s Old Home Week, Charity sees Harney with Annabel Balch, a society girl whom she envies. Afterwards, Charity goes to the abandoned house where she and Harney usually meet. Mr. Royall unexpectedly shows up and, when Harney arrives, Mr. Royall asks him sarcastically if that is where he intends to live after he marries Charity. After an angry Mr. Royall leaves, Harney promises Charity that he is going to marry her, but that he has to go away for a while first. After Harney has left the town, Charity’s friend Ally lets slip that she saw him leave with Annabel Balch, to whom he is engaged to be married. Charity writes a letter to Harney telling him to do the right thing and marry Annabel.
Charity has been feeling unwell, so she goes to Dr. Merkle ("a plump woman with small bright eyes, an immense mass of black hair coming down low on her forehead, and unnaturally white and even teeth"), who confirms her suspicion that she is pregnant. After the examination Dr. Merkle charges five dollars, and Charity, not having enough money to cover it, has to leave the brooch Harney gave her. When she gets home she reads a letter from Harney that makes her realize that, despite his promises, he is unlikely to break his engagement to Miss Balch.
Charity decides she cannot stay at home and so makes her way to the mountain, intending to look for her mother. On the way she sees the minister, Mr. Miles, and her friend Liff Hyatt. They are on their way to the mountain because Charity’s mother is dying. When they arrive, Charity’s mother is already dead, and the three of them bury her.
Charity stays on the mountain overnight, where she sees the abject poverty and resolves not to raise her child there. She decides that she is going to be a prostitute, and with the money she earns she will hire someone to take care of her child. On the way home she meets Mr. Royall, who has come to pick her up. He offers to marry her.
After Charity marries Mr. Royall in Nettleton, she realizes that he knows she is pregnant and has married her only to protect her. He gives her money to buy clothes, but instead she goes to Dr. Merkle to get her brooch back. Dr. Merkle has heard of her marriage to Mr. Royall and demands a large sum for returning the brooch. Rather than paying the money, Charity quickly grabs the brooch and rushes from the office (in a few editions of the novel, she leaves the money with Merkle).
Charity writes a last letter to Harney, telling him about her marriage, and finally returns to North Dormer to live with Mr. Royall.