"Holes" follows the story of Stanley Yelnats, a young man sent to Camp Green Lake for stealing a pair of shoes. He maintains he is innocent and blames his bad luck on a family curse. Camp Green Lake, a reform camp for boys, requires inmates to dig holes in a dry lake bed every day to build character. Stanley soon discovers the camp's warden is actually looking for a lost family treasure.
"Holes" has several plot arcs. The main story is that of Stanley Yelnats and his time at Camp Green Lake. The book also tells the story of how Stanley's great-great-grandfather brought a curse on the Yelnats family by breaking a promise to a one-legged Gypsy named Madame Zeroni. In exchange for a pig, Elya, Stanley's great-great-grandfather, promises to help Madame Zeroni fulfill her dying wish. Elya uses the pig to propose to the girl he loves, but discovers that she isn't what he originally thought. Disenchanted, he leaves for America without keeping his promise to Madame Zeroni.
The book's third plot arc tells the history of Camp Green Lake. Katherine Barlow, the town's school teacher, finds herself developing feelings for Sam, an onion seller, after he fixes things around the schoolhouse. They share a kiss, but trouble arises because Sam is black and Kate is white. One of Katherine's rejected suitors stirs up the town, convincing them to kill Sam. When Sam and Kate attempt to escape across Green Lake, they are caught and Sam is killed. Driven mad by grief, Katherine turns to a life of crime as the outlaw Kissin' Kate Barlow.