Celie is a poor, uneducated 14-year-old girl living in the Southern United States in the early 1900s. She writes letters to God because her father, Alphonso, beats and rapes her constantly. Alphonso has already impregnated Celie once, a pregnancy that resulted in the birth of a girl she named Olivia, but Alphonso took the baby away shortly after her birth and Celie thinks he killed her. Celie then has a second child, a boy named Adam, 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, a widower needing someone to care for his children and keep his house, eventually accepts the offer. Mister physically, sexually, and verbally abuses Celie, and all his children treat her badly as well.
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 saw in the general store a while back; the woman has unknowingly adopted Olivia 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 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, Harpo marries Sofia. 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. As Harpo is kinder and gentler than his father, Celie advises him not to try to dominate Sofia. Harpo temporarily follows Celie's advice but falls back under Mister's sway. Celie, momentarily jealous of Harpo's genuine love of Sofia, then advises Harpo to beat her. Sofia fights back, however, and confronts Celie. A guilty Celie apologizes and confides in Sofia 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.
Shug Avery, a jazz and blues singer and Mister's long-time mistress, falls ill, and Mister takes her into his house. Celie, who has 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, though Mister indirectly implies to him that he is those children's father. Mister's father then leaves in disgust. 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 grow closer.
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 boyfriend, a prizefighter, and their respective children, she gets into a physical fight with the mayor after his wife, Miss Millie, insults Sofia and her children. The police arrive and brutally beat Sofia, leaving her 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 her uncle. 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 man 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 both 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 actually 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 the 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. Shug helped Celie to realize that God is not someone who has power over her like the rest of the men in Celie’s life. Rather, God was an “It” and not a “Who”.
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 this news 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.
As Celie realizes that she is content in her life without Shug, Shug returns, having ended her relationship with Germaine. Nettie, Samuel, Olivia, Adam, and Tashi all arrive at Celie's house. Nettie and Celie reunite after 30 years, and introduce one another to their respective families as the novel ends.