Full-time: Mainz 1-4 Stuttgart
A huge result for Stuttgart, coming from behind to claim all three points for just the second time away from home this season. They’re now out of the bottom three and have survival in their own hands. As for Mainz, their hopes of European qualification are officially over. But they will still have a role to play this season, going to Dortmund on the final day.
He'll miss the trip to Dortmund on the final day.
A goal and two assists since coming on just after the hour mark. A big impact on today and Stuttgart's season as a whole.
Coulibaly wraps it up!
Mainz had gone all out to try and get back in this but VfB hit them on the break, Führich getting the better of a slipping Kohr to get onto a long clearance and coolly square for Coulibaly to roll into an empty net.
A raft of changes
Five substitutions in one go from the two coaches, including a final home appearance in Mainz colours for Aaron Martin. He's joined on the field by teenager Nelson Weiper, who's held in very high regard in these parts.
Superb stuff from Bredlow as Mainz try to get one back. First he denied a well-struck drive from Stach, getting back up immediately to turn an Ajorque rebound over the bar. Celebrated like a goal by the VfB defence.
Mainz have conceded three goals for the fourth game in a row for the first time in their Bundesliga history.
What it means to the travelling supporters
© Christian Kaspar-Bartke/Getty Images
Three goals and three points for VfB?
Stuttgart are on course for three huge points and having their survival in their own hands on the final day. Führich is played through by Endo, perhaps a little wide to the left, but he cuts back inside on his right and picks out the far corner for another big VfB goal.
Bell upends Endo on the edge of the area and Guirassy tries to add a third from the free-kick, but it's held by Dahmen.
The Japan international decides that Stach had gone too far with a run through the middle and takes him down.
The former Dortmund man had come back on but now makes his way down the tunnel with the medical staff. Mainz send on their big man Ajorque to try and turn things back around.
Zagadou being checked
A clash of heads means Zagadou needs to be checked over by the club medics. They're being thorough with the defender, but appear happy for him to continue. Mavropanos is still being called back from his warm-up.
Stuttgart's chances of victory were looking pretty slip when they went behind, but that Guirassy header means the odds are very much in their favour.
Half chance for Endo
The captain tries to bend one from the edge of the area, but it's an easy take for Dahmen.
A HUGE GOAL!
It's another corner that does the job. Delivery is spot on this time for Stuttgart from substitute Führich, and Guirassy nods in from point-blank range to - as it stands - lift VfB all the way up to 15th!
Too late this time
This one wasn't as well timed by Kohr as he upends Tomas and picked up the 78th yellow card of his Bundesliga career, to go with five red cards.
Excellent tackle by Kohr
Silas lights the turbos and tries to race into the penalty area. He's one on one with Kohr, who stands his ground and pinches the ball away. Had to get that tackle right.
Fernandes has a go!
Onisiwo uses his strength yet again to win a free-kick wide on the left of the penalty area. Fernandes takes it and whips it towards the near post, with Onisiwo very nearly putting Bredlow off, but the VfB keeper keeps his eye on the ball and palms it away.
A tale of two corners
Onisiwo uses his strength to win a corner against two defenders. Fernandes delivers it low, with Stach latching onto it, but it's blocked.
Back we come
No changes for either side at the break as we return for the second 45 minutes.
Half-time: Mainz 1-1 Stuttgart
It's all square at the break in Mainz. Stuttgart started brighter before they were caught napping at a corner and Ingvartsen pounced. A Mainz corner then led to a VfB equaliser thanks to a blistering counter, finished in some style by Endo. It means we're level after 45 minutes.
The difference one goal can make, Stuttgart are absolutely back in this and in with a chance of getting the win that will help them so greatly.
One shot on target, one goal for the visitors.
Got to take them
We'll have three extra minutes.
Endo leading by example
© Christian Kaspar-Bartke/Getty Images
It had to be Captain Fantastic!
Brilliant counter-attack from the visitors, from defending a corner in their own area to the edge of the Mainz box in a matter of seconds thanks to Silas. His square ball is actually cut out, but only to Endo arriving from deep. He takes a touch, the ball sits up and he volleys it past a stranded Dahmen from 18 yards. That's why they call him 'Legendo' in Stuttgart!
Over from Endo
He was their saviour last season and looks to be trying to do it all again this year. Corner in from the right is met cleanly by the skipper leaping high, but he can't plant his header below the rossbar.
Stuttgart don't necessarily need to win here, but three points would be a huge help to them going into the final day. That Ingvartsen goal has really knocked their chances, though.
Endo has looked Stuttgart's most creative player so far and slips in Guirassy again. But some brave goalkeeping from Dahmen, playing his final home game for Mainz after 15 years at the club, rushes out and dives at the feet of the big striker to halt any danger.
With temperatures a bit warm in Mainz today at 26 degrees Celcius, there's a drinks break midway through this half. Perhaps a fortunate time for Stuttgart and a chance to regroup.
The ensuing corner catches Stuttgart napping, as Onisiwo nods it back across goal at the far post - via a flight deflection off Endo - and Ingvartsen is completely free a yard out to turn it home.
First blood almost for Mainz as Onisiwo spins on the edge of the box and goes for the far bottom corner. He slips slightly and hits it twice, but it still takes an excellent save from Bredlow to turn it around the post.
Stuttgart seeing the ball
A physical encounter
© IMAGO/Patrick Scheiber/IMAGO/Jan Huebner
All in the middle third
We're yet to see a shot in anger, with just one Tomas free-kick delivered into the area the only slither of action in either box so far. All the play between the penalty areas has been pretty quick, though.
A battle to keep an eye on
Danny da Costa Nikolas Nartey
Different weight classes
Guirassy has a good 10 kilos on Kohr, but that's not stopping the Mainz man from getting close to the Stuttgart striker and marking him closely whenever VfB have the ball.
Both teams starting as predicted and matching each other with 3-4-3 formations. That means Dominik Kohr - sporting a face mask - in the middle of the Mainz back three.
Players are out...
Kick-off is just moments away at a packed Mewa-Arena.
Pre-match contract news
Mainz have just announced that striker Karim Onisiwo has signed a two-year contract extension to keep him at the Mewa-Arena until 2026.
Watch: Mainz begin their warm-up
Mainz remain in contention for a too-six finish that would bring European football back to the Mewa-Arena, but will have to win here and against title-chasing Dortmund on the final day to have a chance, plus likely have other results go their way. As for Stuttgart, they're fighting for survival in 17th place. They can't join Hertha in being relegated this weekend regardless of the result, but only victory will see them climb out of the drop zone. A draw leaves them a point behind Schalke in the play-off spot.
Record for Bell
This game is also Stefan Bell's 255th in the Bundesliga for Mainz, which sees him draw level with Nikolce Noveski as the club's record appearance maker in the top flight.
Watch: Inside the Stuttgart changing room
Mainz team news
It's a whole five changes for the hosts, which is the most Bo Svensson has made between games this season. They include a first start of the Rückrunde for Aymen Barkok on his 25th birthday. Goalkeeper Robin Zentner also misses out, so Finn Dahmen makes his seventh appearance of the campaign in his final home game for the club. He's yet to keep a clean sheet this season but does have three wins (plus a draw and two defeats).
Stuttgart team news
Sebastien Hoeneß makes just one change to the side from last week as Nikolas Nartey replaces Borna Sosa. VfB are yet to win this season without Sosa in the side (three draws, five defeats). It's Nartey's first start since Matchday 19.
Watch: The visitors have arrived
Mainz starting XI
Dahmen - Fernandes, Kohr, Bell - da Costa, Barreiro, Stach, Caci - Barkok, Ingvartsen - Onisiwo (c)
Rieß, Martin, Laux, Lee, Gruda, Ajorque, Mustapha, Burgzorg, Weiper
Stuttgart starting XI
Bredlow - Anton, Zagadou, Ito - Vagnoman, Endo (c), Karazor, Nartey - Silas, Guirassy, Tomas
Müller, Mavropanos, Stenzel, Coulibaly, Millot, Haraguchi, Führich, Egloff, Pfeiffer
Watch: Time running out in relegation battle
Mainz's Andreas Hanche-Olsen is out suspended after getting his fifth yellow card of the season last weekend against Frankfurt. Only Nicolas Höfler of Freiburg has intercepted more passes in 2023 than Hanche-Olsen (33).
Coaches' poor record
Bo Svensson has not won any of his four previous Bundesliga meetings with Stuttgart. Sebastian Hoeneß has not won any of his four previous meetings with Mainz, for that matter.
Serhou sequence of strikes
Stuttgart's Serhou Guirassy has scored in three consecutive Bundesliga matches for the first time.
Anton always there
Stuttgart defender Waldemar Anton has started each of his side's past 37 matches going back to last season. No other Bundesliga player has such a long record of always starting.
Strong Stuttgart record
Stuttgart are unbeaten in five matches against Mainz since gaining promotion in 2020 (three wins and two draws).
Watch: Mainz 1-1 Stuttgart - previous meeting
Watch: VfB Stuttgart 1-1 Bayer Leverkusen - highlights
Watch: Eintracht Frankfurt 3-0 Mainz - highlights
Stuttgart teetering on the brink
They're not bottom, but Stuttgart could be one of two teams relegated on Matchday 33 of 34. If Bochum win to send Hertha down on Friday, VfB will join them if they lose to Mainz, Schalke beat Frankfurt and Hoffenheim avoid defeat against Union Berlin. A win, on the other hand, could lift them out of the bottom three with a game to go.