2025 Portuguese Moto3 - Race Results
Race results from the 2025 Portuguese Moto3 Grand Prix, which saw Maximo Quiles take the win in a frantic penultimate round at Portimao.

The Moto3 Portuguese Grand Prix, round twenty-one of the championship, saw several lead changes, with Maximo Quiles pushing ahead when his time came to win at the Algarve circuit.
The Aspar rider started from third and was immediately fighting for the podium.
Forced wide by Joel Esteban behind Joel Kelso, who lead for half the race from pole, the rookie of the year suddenly found himself seventh.
Quiles fought back to lead, but a strange, slow lap from the frontrunners brought the riders behind back into play, with Malaysia winner Taiyo Furusato now out front, with Quiles now battling Kelso behind.
Fighting in the chasing group saw the #28 and his Japanese rival pull clear, with Quiles easing out a gap over the closing laps to lead over the line by 1.663s for his third win in his debut season.
Angel Piqueras had broken free of the main group and put in a late bid for victory, catching and passing Furusato with a new race record lap, but with the gap to Quiles to much of an ask late in the race, taking his second podium in a row for Frinsa - MTHelmets - MSI.
Relived rather than frustrated after coming up from eleventh on the grid Taiyo Furusato backed up his Sepang win with another podium in third the top Honda finisher again for Honda Team Asia.
Joel Esteban had needed to come through Q1 for sixth on the grid for Red Bull and after being forced wide in a feisty race was again closing on Furusato as he took the chequered flag in a close fourth for Red Bull Tech 3, replacing Jacob Roulstone at the team.
Alvaro Carpe fought back for fifth for Red Bull KTM Ajo, just ahead of a spirited replacement run out for Casey O’Gorman.
Sitting in for David Munoz at Liqui Moly Dynavolt Intact GP, the Irish rider was a constant in the lead group and its ups and downs, on AKTM for the first time he secured an impressive sixth at the finish.
Joel Kelso launched from pole, but once caught and passed he lost positions in chunks. The LevelUP- MTA rider refused to give in picking up a place on the last lap for seventh.
The Australian overtook Scott Ogden, pushing the remaining CIP Green Power rider down to eighth, just ahead of Leopard rider Adrian Fernandez who slumped to ninth in the tough, contact filled race.
Luca Lunetta was heading the opposite way, with a late push seeing him inside the top ten for SIC58 Squadra Corse.
| 2025 Portuguese Moto3 - Race Results | ||||
| Pos | Rider | Nat | Team | Time |
| 1 | Maximo Qulies | SPA | CFMoto Gaviota Aspar Team (KTM) | 34m 05.182s |
| 2 | Angel Piqueras | SPA | FRINSA -MT Helmets - MSI (KTM) | +1.663s |
| 3 | Taiyo Furusato | JPN | Honda Team Asia (Honda) | +2.886s |
| 4 | Joel Esteban | SPA | Red Bull KTM Tech3 (KTM) | +3.243s |
| 5 | Alvaro Carpe | SPA | Red Bull KTM Ajo (KTM) | +3.537s |
| 6 | Casey O'Gorman | IRL | Liqui Moly Dynavolt Intact GP (KTM) | +4.123s |
| 7 | Joel Kelso | AUS | LEVELUP - MTA (KTM) | +5.345s |
| 8 | Scott Ogden | GBR | CIP Green Power (KTM) | +5.390s |
| 9 | Adrian Fernandez | SPA | Leopard Racing (Honda) | +5.483s |
| 10 | Luca Lunetta | ITA | SIC58 Squadra Corse (Honda) | +9.469s |
| 11 | Marco Morelli | ARG | GRYD - MLav Racing (Honda) | +9.556s |
| 12 | Hakim Danish | MAL | FRINSA -MT Helmets - MSI (KTM) | +24.276s |
| 13 | Brian Uriarte | SPA | Red Bull KTM Ajo (KTM) | +24.315s |
| 14 | Dennis Foggia | ITA | CFMoto Gaviota Aspar Team (KTM) | +29.897s |
| 15 | Nicola Carraro | ITA | Rivacold Snipers Team (Honda) | +29.972s |
| 16 | Eddie O'Shea | GBR | GRYD -MLav Racing (Honda) | +30.158s |
| 17 | Ruche Moodley | RSA | DENSSI Racing - BOE (KTM) | +30.188s |
| 18 | Stefano Nepa | ITA | SIC58 Squadra Corse (Honda) | +30.575s |
| 19 | Zen Mitani | JPN | Honda Team Asia (Honda) | +31.669s |
| 20 | Cormac Buchanan | NZL | DENSSI Racing - BOE (KTM) | +39.512s |
| 21 | David Almansa | SPA | Leopard Racing (Honda) | +39.522s |
| 22 | Guido Pini | ITA | Liqui Moly Dynavolt Intact GP (KTM) | DNF |
| 23 | Matteo Bertelle | ITA | LEVELUP - MTA (KTM) | DNF |
| 24 | Jesus Rios | SPA | Rivacold Snipers Team (Honda) | DNF |
| 25 | Valentin Perrone | ARG | Red Bull KTM Tech3 (KTM) | DNF |
Marco Morelli thrived in the competitive environment, passing up to eleventh, a seasons best for the MLav rider.
After a wildcard appearance in Sepang Hakim Danish was back for a second race in a row, this time as a replacement for Ryusei Yamanaka at Frinsa - MT Helmets - MSI, fighting up the lower points places for twelfth.
Brian Uriarte, back in the paddock as the Red Bull Rookies and Junior GP champion for the season, finished 13th for Red Bull KTM Ajo, in the seat usually belonging to absent champion Jose Antonio Rueda, getting an early run out at the team he is due to join full-time next season.
The remaining points went to Dennis Foggia in 14th on the second Aspar bike and Snipers rider Nicola Carraro, who passed Eddie O’Shea on the last lap for 15th.
Crashes, injuries and replacements
Valentin Perrone was the first to exit, off on lap four. David Almansa only lasted one lap longer, but remounted to finish 21st and last.
Matteo Bertelle also fell, with Guido Pini last off, slipping out of the chasing group late in the race.
Of the remaining additional riders, Zen Mitani -riding with Honda Team Asia instead of Tatchakorn Buasri - was 19th while Jesus Rios, in at the Snipers team, in for Riccardo Rossi, suffered an early exit.
CIP Green Power elected not to replace the recovering Noah Dettwiler.
Championship Standings
With the championship sewn up before his absence, Rueda stays on 365 points, with Piqueras still fighting for second, his podium taking him to 271, while rookie winner and race winner Qulies moves onto 263 behind.
David Munoz (197) stays fourth despite his long absence, but Carpe (195) passed Kelso (193) with both closing in behind the injured rider.










