Source plot synopsis — includes the ending
Upon discovering Luca's actions, his parents decide to send him to live in the deep with his uncle Ugo. To avoid this, Luca runs away from home and hides in Portorosso with Alberto. The boys run afoul of Ercole Visconti, the local bully and five-time champion of the Portorosso Cup, a triathlon of swimming, pasta-eating, and biking. When Ercole tries to soak Luca in a fountain, Giulia Marcovaldo, a young little girl, stops him. In hopes of winning the money needed for a Vespa, the boys team up with Giulia for the triathlon.
Giulia invites them to stay at her house and introduces her fisherman father, Massimo, who is prejudiced against sea monsters. Meanwhile, Luca's parents infiltrate the town to find their son. Giulia and Luca bond over their love of learning, to Alberto's ire. When Luca shows interest in attending school, Alberto intentionally reveals his own sea monster form to Giulia to prevent it, frightening her. Unwilling to give himself up, Luca feigns shock at the transformation, and a betrayed Alberto flees as Ercole's gang arrives to hunt him. Shortly after, Giulia finds out that Luca is a sea monster as well, and sends him away for his safety.
Luca heads to Alberto's hiding place in an effort to reconcile with him, and learns that Alberto was abandoned by his father long ago. Though Alberto declines to participate in the triathlon, Luca promises to win the Vespa to rebuild their friendship. The triathlon begins with Luca and Giulia competing separately. Luca successfully completes the swimming race in a diving suit and the pasta-eating contest without revealing himself, but it begins to rain during the bike race. Alberto shows up to give Luca an umbrella, but Ercole knocks it away, exposing Alberto's sea monster form and shocking the spectators and Ercole. Luca rescues Alberto, revealing his own true form, and the two bike towards the finish to get to the sea.
Giulia deliberately collides with Ercole's bike to stop him from harpooning Luca and Alberto, falling off her bike in the process. Luca and Alberto unintentionally cross the finish line before turning back to help Giulia. When Ercole and the other townsfolk confront the boys, Massimo stands up for them and insists that they have won. Luca is reunited with his family and the townsfolk accept the sea monsters, except Ercole, who is thrown into a fountain by his much-abused henchmen Ciccio and Guido.
Luca and Alberto buy an old Vespa with their winnings, but Alberto sells it to get a train ticket for Luca, allowing him to go to school in Genova with Giulia. Luca's family, Massimo, and Alberto see Luca and Giulia off at the train station, where they all promise to stay in touch. Luca meets Giulia's mother and attends school with Giulia, while Massimo adopts Alberto as his son.
In a short post-credits scene, Ugo talks to a stray goatfish about his great life in the depths of the ocean.
Sources and content license
Source and revision history ↗ · Adapted from Wikipedia contributors, Luca (2021 film). Section headings and formatting adjusted. · Content license