Celie is a poor, uneducated 14-year-old girl living in the American South in the early 1900s. She writes letters to God because her stepfather, Alphonso, beats her harshly and rapes her continuously. Alphonso has already impregnated Celie once, a pregnancy that resulted in the birth of a boy she named Adam. Alphonso takes the baby away shortly after his birth. Celie has a second child, a girl she named Olivia whom Alphonso also abducts. Celie's ailing mother dies after cursing Celie on her deathbed.
Celie and her younger sister, 12-year-old Nettie, learn that a man identified only as Mister wants to marry Nettie. Alphonso refuses to let Nettie marry, instead arranging for Mister to marry Celie. Mister, needing someone to care for his children and keep his house, eventually accepts the offer. Mister and his children, whose mother was murdered by a jealous lover, all treat Celie badly. However, she eventually gets Mister's squalid living conditions and incorrigible children under control.
Shortly thereafter, Nettie runs away from Alphonso and takes refuge at Celie's house, where Mister makes sexual advances toward her. Celie then advises Nettie to seek assistance from a well-dressed black woman that she had seen in the general store a while back; the woman had unknowingly adopted Celie's daughter and was the only black woman that Celie had ever seen with money of her own. Nettie is forced to leave after promising to write. Celie, however, never receives any letters and concludes that her sister is dead.
Time passes and Mister's children begin to grow up and leave home. Harpo, Mister's son, falls in love with an assertive girl named Sofia, who becomes pregnant with Harpo's baby and, despite initial resistance from Mister, marries Harpo. Harpo and Sofia have five more children in short order.
Celie is amazed by Sofia's defiant refusal to submit to Harpo's attempts to control her. Kinder and gentler than his father, Harpo feels emasculated due to his inability to get Sofia to "mind." Celie advises Harpo not to try to dominate Sofia; she also tells Harpo that Sofia loves him, admitting that she, Celie, only obeys Mister out of fear. Harpo temporarily follows Celie's advice but falls back under Mister's sway. A momentarily jealous Celie then advises Harpo to beat Sofia. Sofia fights back, however, inflicting serious injuries on Harpo. After Sofia confronts her, Celie, who was already feeling guilty about what she had done, apologizes and confides in her about all the abuse she suffers at Mister's hands. She also begins to consider Sofia's advice about defending herself against further abuse from Mister.
Glamorous Shug Avery, a jazz and blues singer and Mister's long-time mistress, falls ill, and Mister takes her into his house. Celie, who had been fascinated by photos of Shug she found in Mister's belongings, is thrilled to have her there. Mister's father expresses disapproval of the arrangement, reminding Mister that Shug has three out-of-wedlock children. Mister proudly states that he knows for certain that all the children have the same father, indirectly admitting to being their father. Mister's father leaves in disgust after drinking a glass of water into which Celie spit. While Shug is initially rude to Celie, who has taken charge of nursing her, the two women become friends, and Celie soon finds herself infatuated with Shug.
Frustrated by Harpo's domineering behavior, Sofia moves out, taking her children with her. Several months later, Harpo opens a juke joint where a fully recovered Shug performs nightly. Shug decides to stay when she learns that Mister beats Celie when she is away. Shug and Celie's relationship grows more intimate.
Sofia returns for a visit and promptly gets into a fight with Harpo's new girlfriend, Squeak, knocking Squeak's teeth out. In town one day, while Sofia is enjoying a day out with her new beau, a prizefighter, and their respective children, the mayor's wife, Miss Millie, approaches the group. She begins to "finger" Sofia's children (physically examine them in a way reminiscent of slaves on an auction block) without bothering, at first, to speak to their mother or ask permission. At first, Sofia silently endures. Miss Millie then looks up and addresses Sofia, remarking on how clean the children are and bluntly asks Sofia if she would like to be her maid. Sofia, who does not work as a maid, straightforwardly refuses, saying "Hell no." The mayor then pushes his wife aside, calling Sofia "girl" and daring her to repeat herself. When Sofia does so defiantly, the mayor slaps Sofia. Sofia responds by using her fist to knock the mayor onto the ground. The police quickly arrive at the scene and brutally beat Sofia as she pleads with the prizefighter not to intervene on her behalf and instead to take her children to safety. Sofia emerges from her ordeal with a cracked skull, broken ribs, her face rendered nearly unrecognizable, and blind in one eye. She is subsequently sentenced to 12 years in jail.
Squeak, a mixed-race woman and Sheriff Hodges' illegitimate niece, attempts to blackmail the sheriff into releasing Sofia, resulting in her being raped by the sheriff. Squeak cares for Sofia's children while she is incarcerated, and the two women develop a friendship. Sofia is eventually released and begins working for Miss Millie, which she detests.
Despite being newly married to a person called Grady, Shug instigates a sexual relationship with Celie on her next visit. One night Shug asks Celie about her sister, and Shug helps Celie recover letters from Nettie that Mister has been hiding from her for decades. The letters indicate that Nettie befriended a missionary couple, Samuel and Corrine, the well-dressed woman that Celie saw in the store, whom Nettie eventually accompanied to Africa to do missionary work. Samuel and Corrine have unwittingly adopted Celie's son and daughter (by Celie's stepfather), Adam and Olivia. Corrine, noticing that her adopted children resemble Nettie, wonders if Samuel fathered the children with her. Increasingly suspicious, Corrine tries to limit Nettie's role in her family.
Through her letters, Nettie reveals that she has become disillusioned with her missionary work. Corrine becomes ill with a fever. Nettie asks Samuel to tell her how he adopted Olivia and Adam. Realizing that Adam and Olivia are Celie's children, Nettie then learns that Alphonso is her and Celie's stepfather. Their biological father was a store owner whom white men lynched because they resented his success. She also learns that their mother suffered a mental collapse after the death of her husband and that Alphonso exploited the situation in order to control their mother's considerable wealth.
Nettie confesses to Samuel and Corrine that she is in fact their children's biological aunt. The gravely ill Corrine refuses to believe her until Nettie reminds her of her previous encounter with Celie in the store. Later, Corrine dies, finally having accepted Nettie's story. Meanwhile, Celie visits Alphonso, who confirms Nettie's story. Celie begins to lose some of her faith in God, which she confides to Shug, who explains to Celie her own unique religious philosophy.
Celie, having had enough of her husband's abuse, decides to leave Mister along with Shug and Squeak, who is considering a singing career of her own. Celie puts a curse on Mister before leaving him for good.
Celie settles in Tennessee and supports herself as a seamstress. She learns that Mister, suffering from a considerable decline in fortunes after Celie left him, has changed dramatically and Celie begins to call him by his first name, Albert. Albert proposes that they marry "in the spirit as well as in the flesh," but Celie declines.
Alphonso dies, Celie inherits his land, and moves back into her childhood home. Around this time, Shug falls in love with Germaine, a member of her band, and the news thereof crushes Celie. Shug travels with Germaine, all the while writing postcards to Celie. Celie pledges to love Shug even if Shug does not love her back.
Meanwhile, Nettie and Samuel marry and prepare to return to America. Before they leave, Adam marries Tashi, an African girl. Following an African tradition, Tashi undergoes the painful rituals of female circumcision and facial scarring. In solidarity, Adam undergoes the same facial scarring ritual.
Just after Celie realizes that she is content in her life without Shug, Shug returns, having ended things with Germaine. The end of the novel has Nettie, Samuel, Olivia, Adam, and Tashi arriving at Celie's house. Nettie and Celie embrace, having not seen each other for over 30 years. They introduce one another to their respective families as the novel ends.