Popeye the Sailor Man (Robin Williams) arrives in the seaport of Sweethaven to look for his father, Poopdeck Pappy. The townspeople are leery of strangers and they avoid him, except the local tax collector, who charges him a tax for docking his boat and entering town. He eventually rents a room at the home of the Oyls and immediately becomes smitten with their daughter Olive (Shelly Duvall). Olive has been promised to Captain Bluto, a mean former pirate who oversees the tax collection for the leader of the town, the Commodore. The tax collector who Popeye met earlier works for Bluto. Because of Bluto's promise of Olive, the Oyl family is exempt from paying the exorbitant taxes that has been levied on everything in town. On the night they are supposed to make their engagement official, Olive attempts to end the engagement by leaving town, but runs into Popeye. While Popeye and Olive are talking, someone switches out Olive's basket with another. The duo soon discover that the new basket contains an orphan baby and a note asking that Popeye take care of him. Popeye quickly embraces his new fatherhood and names the baby Swee'Pea. They return to the Oyl home, where a furious Bluto is waiting for her. Bluto sees Popeye and, thinking he stole her away, beats him up. Bluto then tells the Oyls that they are no longer exempt from the taxes and owe over $12,000 in back taxes.
Unable to pay, the Oyls will have to do whatever they can to get the money or they will have to leave town. This includes Olive's brother Castor Oyl agreeing to fight a boxer in a "survive a round and win" match. After getting humiliated in the ring, Castor is replaced by Popeye, who promptly beats the boxer and gives the prize money to the Oyls. Later on, the tax collector, who's been collecting taxes from Popeye for a variety of things, approaches him and demands payment of a new baby tax for Swee'Pea. Popeye has had enough and pushes him into the sea. All of the townspeople see this and immediately embrace Popeye as their new hero.
Popeye and the Oyls soon discover that Swee'Pea has a knack for predicting the future by whistling when he hears the right answer to a multiple choice question. One day, Olive's Uncle Wimpy takes Swee'Pea to the racetrack. The Oyls track down Wimpy to stop him, but when they see that he has won over $120 based on Swee'Pea's predictions, they want to use him to help them pay off their debt. However, Popeye refuses to allow his son to be used for ill-gotten gain. Bluto, who also runs the racetrack, overhears their conversation and eventually kidnaps Swee'Pea. Bluto wants to use Swee'Pea to find the Commodore's lost treasure chest. Olive and Wimpy soon find Swee'Pea with Bluto on the Commodore's boat, and also discover that the Commodore (who up to this point has never been seen in public) is Poopdeck Pappy, Popeye's father. They go get Popeye and they, along with the entire Oyl family, go after Bluto.
Popeye gets on the boat and soon finds the Commodore (Ray Walston), who is indeed Poopdeck Pappy. Pappy asks if Popeye has been eating his spinach, but Popeye tells him he hates spinach. They get off the boat, only to see Bluto has taken Olive and are headed out to sea on his pirate ship. Bluto has questioned Swee'Pea and learned that the treasure chest is on a nearby island. They arrive there and Bluto quickly finds the treasure chest. Before he can open it, Popeye, Pappy, and the Oyls arrive. They ram Bluto's ship, causing both vessels to sink. Bluto and Popeye fight while a tied up Olive is fighting off a giant octopus. Pappy goes to the treasure chest and opens it. Inside is not treasure, but mementos of Popeye's childhood, including several cans of spinach. Pappy, seeing that Popeye is losing the fight, tells him that he wouldn't be losing if he ate his spinach and throws a can his way. Popeye still won't eat the spinach, so Bluto opens the can and forces him to eat it. This causes Popeye to immediately become stronger and promptly beats up Bluto, causing him to (literally) turn yellow and swim out to sea. Popeye then fights off the octopus and rescues Olive. The movie ends with a grateful Olive kissing Popeye and then everyone sings the Popeye theme song.