Matija Nastasic denied Nurnberg what would have been a vital victory in their fight against relegation from the Bundesliga as his late equaliser earned Schalke a point from a 1-1 draw.
Nurnberg found Schalke goalkeeper Alex Nubel in inspired form as he made a string of fine saves, including a first-half penalty.
Schalke survived two scares close to the end of the opening half when first Nurnberg had a goal disallowed for offside and then Nubel saved from the spot.
First Hanno Behrens had his effort chalked off for a foul in the build-up before seeing his penalty saved by Nubel who had fouled Matheus Pereira to concede the spot kick.
Nubel was finally beaten but Omar Mascarell cleared the ball off the line. With 11 minutes to go Schalke were also denied a goal by an offside flag as the sides remained deadlocked.
But with eight minutes remaining, Yuya Kubo headed home from a Pereira cross only for Matija Nastasic to level the scores within 90 seconds when he prodded home from Mascarell's corner.
The draw leaves Nurnberg in 17th spot and seven points off 15th-placed Augsburg with five games to go, with Schalke still 14th and a further two points better off.
ga('create', 'UA-72310761-1', 'auto', {'name': 'pacontentapi'});
ga('pacontentapi.set', 'referrer', location.origin);
ga('pacontentapi.set', 'dimension1', 'By Press Association Sport Staff');
ga('pacontentapi.set', 'dimension2', '4b7c39e4-30c3-41f5-85c2-66f94242288a');
ga('pacontentapi.set', 'dimension3', 'paservice:sport,paservice:sport:club-news,paservice:sport:football,paservice:sport:match-reports,paservice:sport:world');
ga('pacontentapi.set', 'dimension6', 'story');
ga('pacontentapi.set', 'dimension7', 'composite');
ga('pacontentapi.set', 'dimension8', null);
ga('pacontentapi.set', 'dimension9', 'sport:football');
ga('pacontentapi.send', 'pageview', { 'location': location.href, 'page': (location.pathname + location.search + location.hash), 'title': 'Late goal stuns struggling Nurnberg'});