Mallorca blew the La Liga title race wide open at Estadi Mallorca Son Moix, snatching a dramatic 2-1 win over Real Madrid with a stoppage-time strike that could prove pivotal at both ends of the table. In a tense Regular Season - 30 clash, the relegation dogfight met the Champions League spots battle head-on, and it was the underdogs from Palma who landed the decisive punch.
Real Madrid arrived in Palma second in La Liga on 69 points, hunting leaders in the title race and firmly entrenched in the Champions League spots. Mallorca, by contrast, kicked off 17th on 31 points, hovering just above the drop zone and desperate for breathing space in the survival battle. The contrast in styles and stakes was clear from the opening whistle.
As expected, Real Madrid dominated early possession, finishing with 64% of the ball and 568 passes at an 88% completion rate. But while Kylian Mbappé and Brahim Díaz probed, Mallorca’s compact 4-3-1-2 held firm, anchored by Leo Román and a disciplined back line. Real Madrid’s territorial control translated into shots — 15 in total, 13 inside the box and 6 on target — but the breakthrough fell the other way.
On 41 minutes, Mallorca struck with a clinical, direct move. Pablo Maffeo surged forward from right-back and picked out Manu Morlanes at the edge of the area. M. Morlanes scored, assisted by P. Maffeo, steering a precise finish beyond Andriy Lunin to give the hosts a 1-0 lead against the run of play. It was Mallorca’s only real clear chance of the half, reflected in their modest 1.22 expected_goals on the day, but it was ruthlessly taken.
Real Madrid emerged from the interval with increased urgency, yet their frustration quickly began to show. Just two minutes after the restart, at 47 minutes, Dean Huijsen went into the book for tripping, a yellow card that underlined the growing tension in the visitors’ ranks.
Alvaro Arbeloa responded with a triple substitution on 59 minutes to tilt the game. Éder Militão came on for D. Huijsen, Vinicius Junior came on for M. A. Moran, and J. Bellingham came on for E. Camavinga, injecting pace and creativity across the pitch. The changes pushed Real Madrid higher and wider, with Vinicius Junior targeting Mallorca’s flanks and Bellingham driving from midfield.
Mallorca, under siege, were content to defend deep and break sporadically. Their goalkeeper Leo Román was booked on 66 minutes for delay of game, a clear sign of the hosts’ intent to slow the tempo and protect the lead. Moments later, Martin Demichelis reshaped his side with a triple substitution at 70 minutes: D. Lopez came on for Samu Costa, M. Joseph came on for M. Morlanes, and J. Virgili came on for P. Torre, adding fresh legs in midfield and attack.
Real Madrid continued to press. On 72 minutes, T. Pitarch came on for A. Guler, followed by another attacking switch on 76 minutes as F. Mastantuono came on for B. Diaz. Arbeloa had effectively rolled the dice, loading the pitch with forwards in search of an equaliser.
Mallorca, meanwhile, sought energy on the counter. At 81 minutes A. Sanchez came on for Z. Luvumbo, giving the hosts a more industrious presence to help in both phases. But the pressure from the visitors was relentless. Mallorca finished with just 6 total shots (2 on target), while Real Madrid forced 5 saves from Leo Román and had 3 efforts blocked, numbers that perfectly mirror the hosts’ defensive workload.
The tension rose further when M. Valjent was booked on 84 minutes, as Mallorca’s defenders threw themselves into challenges to protect the slender advantage. The resistance finally cracked on 88 minutes. From a set piece situation, Real Madrid found their lifeline: Eder Militao scored, assisted by T. Alexander-Arnold, rising highest to power home a header and level the match at 1-1. It was no less than Madrid’s pressure deserved, matching their 1.27 expected_goals, and it seemed to rescue at least a point for the title chasers.
The drama, though, was far from over. In the 90th minute, F. Mastantuono was shown a yellow card, emblematic of Real Madrid’s increasingly frantic attempts to force a winner. Instead, it was Mallorca who produced the decisive moment deep into stoppage time.
At 90+1, the stadium erupted. V. Muriqi scored, assisted by M. Joseph, as the substitute forward slipped Muriqi through and the Kosovar striker kept his composure to beat Lunin and restore Mallorca’s lead at 2-1. The goal encapsulated Mallorca’s game plan: absorb pressure, then strike with precision when the opportunity came.
There was still time for one final flash of gamesmanship. At 90+5, P. Maffeo received a yellow card for delay of game as Mallorca ran down the clock, determined not to let this precious victory slip away.
When José María Sánchez Martínez blew the final whistle, Mallorca’s players collapsed in relief and celebration. From a pre-match tally of 31 points and 36 goals for with 48 against, they move to 34 points, 38 goals scored and 49 conceded — a vital step in their survival battle that could prove season-defining.
For Real Madrid, the arithmetic is more painful. They remain on 69 points, now with 65 goals for and 30 against, and while they stay firmly in the Champions League spots battle, this defeat may haunt them in the title race. Dominant in possession, sharper in passing, and with more shots and xG, they were undone by Mallorca’s efficiency and resilience.
In Palma, it will be remembered as the night the underdogs bloodied a giant and dragged themselves closer to safety, while leaving Real Madrid with the uncomfortable feeling that a championship opportunity had slipped through their fingers.





