Marian MacAlpin works in a market research firm, writing survey questions and sampling products. She shares the top-floor apartment of a house in Toronto (never named in the novel) with her roommate Ainsley and dates a dependable and boring boyfriend, Peter. Marian also keeps in touch with Clara, a friend from college, who is now a constantly pregnant housewife.
Ainsley announces she wants to have a baby – and intends to do it without getting married. When Marian is horrified, Ainsley replies, "The thing that ruins families these days is the husbands." Looking for a man who will have no interest in fatherhood, she sets her sights on Marian's "womanizer" friend Len, who is infamous for his relationships with young, naive girls.
At work, Marian is assigned the task of gathering responses for a survey about a new brand of beer. While walking from house to house asking people their opinions, she meets Duncan, a graduate student in English who intrigues her with his atypical and eccentric answers.
Marian later has a dinner date with Peter and Len, during which Ainsley shows up dressed as a virginal schoolgirl – the first stage of her plan to trick Len into impregnating her. Marian finds herself disassociating from her body as Peter recounts a gory rabbit hunt to Len:
"After a while I noticed that a large drop of something wet had materialized on the table. I poked it with my finger and smudged it around a little before I realized with horror that it was a tear."
Marian runs from the restaurant and is chased down by Peter in his car. Unaware of Ainsley's plan to get pregnant by Len, Peter chides, "Ainsley behaved herself properly, why couldn't you?"
At the end of the night, Peter proposes to her. When asked to choose a date for the wedding, Marian slips into unexpected passivity:
"'I’d rather have you decide that. I’d rather leave the big decisions up to you.' I was astonished at myself. I’d never said anything remotely like that to him before. The funny thing was that I really meant it."
Marian and Duncan have a surprise meeting in a laundromat, engage in awkward conversation, and kiss. Shortly afterwards, Marian's problems with food begin when she finds herself empathizing with a steak that Peter is eating, imagining it "knocked on the head as it stood in a queue like someone waiting for a streetcar." After this, she is unable to eat meat – anything with "bone or tendon or fiber".
Ainsley's plot to seduce Len succeeds. When Len later learns that Ainsley is pregnant, he talks to Marian, who confesses that pregnancy was Ainsley's plan all along. Len reveals his childhood fear of eggs, and from that point Marian can no longer face her soft-boiled egg in the morning. Soon thereafter, she is unable to eat vegetables or cake.
Peter decides to throw a party, to which Marian invites "the office virgins" from her work, Duncan, and Duncan's roommates. Peter suggests that Marian buy herself a new dress for his party – something less "mousy" than her normal wardrobe. Marian submits to his wishes and buys a daring red dress. Before the party, Ainsley does Marian's makeup, including false eyelashes and a big lipsticked smile. When Duncan arrives, he says, "You didn't tell me it was a masquerade. Who the hell are you supposed to be?" He leaves and Marian follows. They end up going to a sleazy hotel, where they have unsatisfying sex. The next morning, they go out to breakfast and Marian finds that she cannot eat anything.
After Duncan leaves, Marian realizes that Peter is metaphorically devouring her. To test him, she bakes a pink cake in the shape of a woman and dares him to eat it. "This is what you really want", she says, offering the cake woman as a substitute to him feeding upon her. Peter leaves disturbed. Once Peter leaves, Marian feels hungry and realizes it's just a cake so she starts eating it.
Marian returns to her first person narrative in the closing pages of the book. Duncan shows up at her apartment; Marian offers him the remains of the cake, which he polishes off. "'Thank you,' he said, licking his lips. 'It was delicious.'"