Osasuna tightened their grip on a top-half finish in La Liga with a hard‑fought 1-0 victory over Girona at Estadio El Sadar, decided by an 80th‑minute strike from Ante Budimir in a tense Regular Season - 29 clash in Pamplona.
In a match that pitted two mid-table sides eyeing upward mobility rather than survival worries, Osasuna imposed themselves with far greater attacking intent, while Girona’s European qualification ambitions suffered another setback in a limp offensive display that failed to register a single shot on target.
The opening half was short on clear chances but rich in physical duels and territorial battles. Osasuna, in their familiar 4-2-3-1, pushed high through Javi Galán on the left and Valentin Rosier on the right, looking to feed Budimir early. Girona, mirroring the shape with Vladyslav Vanat as the lone forward, were more cautious, relying on Axel Witsel and Fran Beltrán to dictate the tempo.
The first notable flashpoint came on 39 minutes when Viktor Tsygankov went into the referee Jose Luis Guzman Mansilla’s book for a foul, a yellow card that summed up Girona’s growing frustration as Osasuna increasingly won the 50-50s. Still, despite their territorial edge, the hosts could not find a breakthrough before the interval, and the sides went in at half-time level at 0-0.
After the restart, the intensity ratcheted up. On 59 minutes, Javi Galán was shown a yellow card for a foul, a necessary intervention as Girona briefly threatened to break in transition. Moments later, Míchel’s side made the first move from the bench: at 60 minutes, Claudio Echeverri came on for J. Roca, a change aimed at injecting creativity between the lines.
Osasuna’s response came on 69 minutes, and it would prove decisive later. Kike Barja came on for A. Oroz, adding fresh legs and direct running on the flank. The substitution shifted the dynamic of the home attack, with Barja immediately stretching Girona’s back line and combining well with Rubén García and Victor Muñoz.
Girona tried to wrest back control with a double change on 75 minutes. Álex Moreno came on for A. Martinez, offering more thrust from left-back, while I. Martin came on for V. Vanat to provide a different profile up front. Yet the visitors remained toothless in the final third, and their inability to test Sergio Herrera – who finished the night without a single save – would ultimately define their evening.
The breakthrough finally arrived on 80 minutes, and it was richly deserved. After sustained pressure, A. Budimir scored, assisted by K. Barja. The substitute’s delivery and Budimir’s clinical finish capped a move that had been coming, as Osasuna’s attacking waves pinned Girona deep and exploited the visitors’ disjointed defensive shape. It was Budimir’s crowning moment in a performance built on relentless work rate and clever movement.
With the lead secured, Jagoba Arrasate turned to his bench to lock things down. On 83 minutes, Raúl Garcia came on for A. Budimir, a like-for-like change to preserve energy up front. In the same minute, Abel Bretones came on for R. Garcia, and A. Osambela came on for I. Munoz, freshening both midfield and wide areas as Osasuna looked to manage the closing stages and protect their narrow advantage.
Girona threw on more attacking options in the final minutes, but the pattern did not change. On 86 minutes, T. Lemar came on for V. Tsygankov and A. Ruiz came on for F. Beltran, another double switch designed to chase an equaliser. Yet the visitors’ build-up remained sterile, their possession lacking penetration, and Osasuna’s back four, marshalled by Alejandro Catena and Flavien Boyomo, stood firm.
Deep into stoppage time, the tension was evident. On 90+3 minutes, Jon Moncayola was booked for time wasting, a small price to pay as Osasuna ran down the clock and saw out a victory that felt as professional as it was hard-earned.
The numbers underlined Osasuna’s superiority. The hosts produced 19 total shots, with 11 on goal, forcing Paulo Gazzaniga into 10 saves and repeatedly threatening from inside the box (15 shots). Their expected_goals figure of 1.71 reflected the volume and quality of chances created, and Girona’s goalkeeper could do little about the one that beat him. Girona, by contrast, mustered only 5 shots, none on target, with an expected_goals of just 0.21 and 3 blocked shots – a stark illustration of their blunt attack. Osasuna’s 3 blocked shots and compact structure ensured Sergio Herrera’s “Goalkeeper Saves” column stayed at zero, perfectly in line with Girona’s failure to hit the target.
In possession, Girona edged the ball with 52% and completed 427 of 494 passes (86%), but their control was largely sterile. Osasuna, with 48% possession and 389 accurate passes from 441 (88%), used the ball more purposefully, turning phases of play into sustained pressure and, crucially, the game’s only goal.
From a table perspective, this result nudges Osasuna’s mid-table campaign forward. Coming into the match with 37 points and a goal difference of -1 (34 scored, 35 conceded), the win lifts them to 40 points from 30 games, with goalsFor rising to 35 and goalsAgainst improving to 35, restoring a neutral goal difference of 0 and consolidating 10th place in the battle for a top-half finish. Girona, who started on 34 points with a -13 goal difference (31 for, 44 against), remain stuck on 34 from 30 games, their goalsFor static at 31 and goalsAgainst climbing to 45, worsening their goal difference to -14 and leaving them mired in the same mid-table pack but drifting away from the European qualification battle.
On a chilly evening in Pamplona, Osasuna’s blend of discipline, intensity and a decisive contribution from the bench proved enough. For Girona, the lack of cutting edge and a zero in the “Shots on Goal” column told its own story – one that must change quickly if they are to reinsert themselves into the conversation for Europe rather than merely surviving in mid-table anonymity.





