Machinist’s Mate 1st Class Jake Holman (Steve McQueen) arrives aboard the river patrol gunboat USS San Pablo (nicknamed the ‘Sand Pebble’ with its sailors dubbed ‘sand pebbles’) which has been assigned to patrol a tributary of the Yangtze in the middle of exploited and revolution-torn 1926 China.
His iconoclasm and cynical nature soon clash with the “rice-bowl” system which runs the ship – the ofﬁcers have hired coolies to do most of the routine work, leaving the sailors free for military drills or just lounging about – and the uneasy symbiosis between Chinese and foreigner on the river.
An industrious individualist and avid mechanic, Holman takes over the operation and maintenance of the ship’s engine – inadvertently insulting the chief engine room coolie, Chien (Tommy Lee) in the process. Holman also alienates most of his fellow sailors, who are lazy, but he does become close friends with a water tender named Frenchy Burgoyne (Richard Attenborough).
Holman discovers a serious problem with a crank bearing on the boat’s engine and informs the captain, Lt. Collins (Richard Crenna), but Collins refuses to have it repaired until his executive ofﬁcer declares an emergency.
Chien asks to complete the repair and is accidentally crushed to death when a jack slips. The chief coolie, Lop-eye Shing (Henry Wang), blames Holman, believing that a “ghost in the machine” killed Chien.
Holman selects Po-Han (Mako Mako) as a replacement for Chien, and the two men soon become friends. Po-Han is harassed by ‘Ski’ Stawski (Simon Oakland), a brutish sailor, and the two box while the rest of the crew places bets on the outcome.
Po-Han wins the ﬁght, creating greater friction between Holman and the other crewmembers. Lt. Collins orders the crew to refrain from any hostilities with the Chinese, as they don’t want to add fuel to the propaganda ﬁre.
The boat embarks, but Po-Han is sent ashore to avenge Chien’s death. Po-Han is run down, taken captive, and tortured by Chinese peasants while the crew watches from the boat. Chinese refuse to release Po-Han and Collins shoots him to relieve his suffering.
The San Pablo moors on the Xiang River due to low water levels and Lt. Collins begins to fear a mutiny. Frenchy dies from pneumonia after too many swims ashore to visit his new wife Maily (Emmanuelle Arsan). Kuomintang (Chinese Nationalist Party) army soldiers locate Holman as he tries to comfort Maily, beat him, and drag the grieving woman away.
The next day, the Chinese claim that Holman has “murdered” Maily and her unborn baby and demand that he is turned in as a criminal. The crew worries for their safety and asks Holman to surrender, but then Collins shocks the Chinese with a gunshot to their boat, and Holman is left alone.
In the spring, Collins begins river patrols anew but is then ordered back to the Yangtze River. Before heading to his new post, Collins steams upstream to rescue Jameson (Larry Gates), an idealistic missionary and his schoolteacher assistant, Shirley Eckert (Candice Bergen), from their remote China Light Mission.
After a good deal of ﬁghting between the sailors and the Chinese near Dongting Lake, Collins leads three sailors, including Holman, ashore. Jameson does not want to be rescued, claiming that Eckert and he have renounced their American citizenship and are committed to their post.
Collins orders Holman to evacuate Eckert and Jameson, but just as Holman declares that he is going to stay with them, Jameson is suddenly killed by Nationalist soldiers in a surprise attack. Collins is killed trying to provide cover for Holman, leaving him in command.
He tearfully parts from Eckert and is then fatally wounded right as he goes to join the others on his boat. The San Pablo sails away.
The movie’s climactic ﬁght between the San Pablo and 30 Chinese junks blockading it, supposedly on the Chien River in mainland China, was actually shot on a narrow inlet in Hong Kong’s Sai Kung district. The massive 1,000-foot bamboo rope that linked the junks together weighed 25 tons.
Joe Di Reda