Daniel Powell scored his third goal in as many games as Crewe climbed to second in League Two after coming from behind to win at Walsall.
Both sides created early chances as Crewe keeper Will Jaaskelainen held Shay Facey's near-post shot before Alex's Charlie Kirk lashed wastefully wide when free in the box.
Walsall led after 15 minutes as Caolan Lavery latched onto Josh Gordon's flick from a throw-in and sprinted between two defenders to poke a finish beneath the advancing Jaaskelainen.
Nathan Sheron scuffed a decent chance to double Walsall's lead wide from 15 yards and that proved costly as they suffered a third straight defeat.
Crewe levelled with their first effort on target after 50 minutes as Perry Ng met Harry Pickering's near-post corner with a header that Powell touched in from close range.
Chuma Anene missed a free header for Crewe but they completed the turnaround after 68 minutes as Kirk's classy cushioned header sent Oliver Finney striding into the box and he drilled into the far corner.
Alex leapfrog Exeter after the Grecians lost at table-topping Swindon.
Match report supplied by PA Media.