Full time! Schalke 2-1 Bremen
Schalke's celebrations speak volumes. They were staring down the barrel after going behind to Ducksch's first-half goal, but a late rally turned it around. The Royal Blues stay second bottom, but the gap to Bochum and Stuttgart is now a single point, with four games to go.
What a huge goal this could be in the relegation battle! Schalke go long after that goal-saving block from Drexler. He's suddenly all alone in the Werder box as Zalazar clips a pass over the Werder defence and duly rolls the ball past the on-rushing Pavlenka. the Royal Blues are now just a point from safety!
Ducksch is a brave Drexler block from winning it for Bremen. He did everything right...
Into the first of five additional minutes in Schalke's penultimate home game of the season...
Frey juggles the ball in the Bremen area, before helping it on for Ouwejan. He pulls his foot back, but a defender nicks it away from him. Why didn't Schalke play this way in the first half?!
Final Schalke change
It's Ouwejan for the nine-goal Bülter. The Dutch full-back has a wand of a left foot - can he get some crosses into the Werder box?
And the free-kick from Ducksch whistles narrowly past Schwolow's right-hand post. There's another goal in this...
Van den Berg is very high on Gruev. He's lucky the Bremen man isn't badly injured.
Schalke are level!
Out of nothing, we have an equaliser. A long throw is cleared only as far as the edge of the Bremen area, where van den Berg reacts fastest to steer an unerring strike into the bottom corner. Game on!
Werner shakes up his midfield, with the introduction of Gruev and Schmidt. There's also a change in the Schalke defence, with fit-again Liverpool loanee van den Berg making his first appearance since Matchday 8.
After Bittencourt bends an effort just wide of the Schalke goal, Reis switches up his attack. For Polter, it marks a first appearance of the year following a cruciate knee injury.
Uronen drifts a ball into the box for Karaman. He stoops to head goalwards, but it's slightly behind him and lacks the power to seriously trouble Pavlenka.
... but can they make one of their chances count?
No faulting Schalke's effort levels...
Off the bar!
So close to the equalising goal! Pavlenka parries a dangerous Zalazar corner out to Krauß, who fires a first-time effort against the crossbar. The ensuing cross isn't dealt with either, but there are no takers at the far post. Schalke are throwing everything at the visitors!
Drexler does really well to hold off the challenges as he runs in off the right-hand flank. He finds Zalazar unmarked in the Bremen area, but his snap-shot is blocked by Pavlenka. Yoshida heads past the upright from the resultant corner.
Veljkovic will have to watch his step now. Bülter wasn't going anywhere - he didn't need to make that challenge.
Schalke not doing enough with the ball
Zalazar sends a teasing cross over the top of the Bremen defence and towards the back post, where Karaman is inches from applying the finishing touch. Encouraging signs from Schalke since the restart...
Schalke's top scorer drifts inside, before unleashing a 25-yard rising drive that Pavlenka does well to push over. Zalazar's ensuing corner is headed back across goal, but Bremen clear their lines.
How long before Thomas Reis shuffles his pack...?
Half time! Schalke 0-1 Bremen
Marvin Ducksch's 12th goal of the season is the difference between the two sides at the break. Bremen have been relatively comfortable and might have added to their lead. Work to do for Schalke...
Max power, not enough accuracy
Yoshida makes a mess of his clearance as Werder swarm in the Schalke half. Some tidy one-touch passing opens the door for Max Philipp inside the area, but he shanks wide of the near post.
Bremen here to stay
Pavlenka gets both hands on a tame Yoshida header from a corner. Schalke's struggles in front of goal - they've scored a league-low 26 times so far this season - are plain to see...
Schalke's best chance by a mile as Uronen races in behind the Bremen defence and loops a cross towards the penalty spot. Terodde throws himself at the ball, his diving header forcing a finger-tip save from Pavlenka.
Stage goes into the book after bringing down Karaman.
Bremen favourites for the win
Ducksch on fire
That's Ducksch's 12th goal of the season, and ninth during the second half of the season. The former Dortmund youth player also has five assists.
Ducksch strikes again!
A hat-trick last week, and the opener today! Ducksch caps a lightning transition with a first-time finish from inside the box. That all came from a misplaced Schalke throw-in. Superb counter-attacking play!
Schalke break following a Bremen corner. Zalazar squeezes a pass into the feet of Karaman, who runs in on goal under pressure from a back-tracking defender. All he can do is shoot, but he pulls it wide from an awkward angle.
Schalke go on the offensive with Bülter, but his left-wing cross is beaten clear by Pavlenka. If the home side can get the first goal, it'll blow the roof off the Veltins...
Bremen cut open the Schalke defence with Stage. He pulls the ball back to the edge of the area for Bittencourt, whose goal-bound shot is blocked by the sliding Yoshida.
Schalke are in royal blue with white shorts. Bremen are in their change strip of salmon and green. With games against Mainz, Bayern, Frankfurt and Leipzig to come, you feel the home side need a result here...
Watch: The Hunter years
The Füllkrug factor
Bremen have picked up points in 10 of the 13 games in which Füllkrug has scored so far this season, but lost eight of 13 when the Germany international hasn't fired and two of three that he's missed.
Bremen closing in on mathematical safety
The Green-Whites start the weekend on 35 points, seven clear of the relegation zone and with a superior goal difference on all the teams below them. With five games to go, they are tantalisingly close to secured a second successive season of top-flight football.
Eyes on the basement
Results have not gone the way of second-bottom Schalke so far on Matchday 30. After Bochum held Dortmund, Stuttgart picked up a crucial win over Gladbach earlier today. Those two are now level on 28 points, with VfB outside the bottom three on goal difference. Schalke are four points further back in 17th.
Watch: Schalke in the house!
More on those teams
Maya Yoshida's back for Schalke, the Japan international slotting back into the heart of the defence in place of the injured Moritz Jenz. Tom Krauß is back from suspension, while Rodrigo Zalazar is preferred to Dominik Drexler in attacking midfield. With Niclas Füllkrug sidelined once more, Bremen are unchanged from the 4-2 win at Hertha.
Schalke starting line-up
Schwolow - Matriciani, Yoshida (c), Kaminski, Uronen - Kral, Krauß - Karaman, Zalazar, Bülter - Terodde
Langer, Ouwejan, Greiml, van den Berg, Latza, Drexler, Mohr, Frey, Polter
Bremen starting line-up
Pavlenka - Veljkovic, Stark, Friedl (c) - Weiser, Bittencourt, Groß, Stage, Jung – Philipp, Ducksch
Zetterer, Pieper, Buchanan, Chiarodia, Salifou, Schmid, Schmidt, Gruev, Mbom
Coach view: Schalke
Coach view: Werder
Ole Werner: "We need to play to our best in order to win games in this league and we can only focus on what we can influence – namely, the game against Schalke. They need every point they can get, which will be obvious on the pitch.”
Watch: Bremen 2-1 Schalke - previous meeting
Watch: Freiburg 4-0 Schalke - highlights
Watch: Hertha 2-4 Bremen - highlights
Schalke fighting to stay afloat
Schalke, who won the 2021/22 Bundesliga 2 title ahead of Bremen, have a long way to go to ensure their seat at Germany's top table next season. The Royal Blues are currently second bottom of the table, a point outside the relegation play-off spot occupied by Stuttgart and three adrift of outright safety.
Bremen almost home and hosed!
Bremen can secure top-flight football for next season this weekend. A win at Schalke, coupled with favourable results elsewhere, will make relegation a mathematical impossibility with four games remaining.