Cheltenham Town missed the opportunity to rubber stamp their place in this year's play-offs after defeat by Crewe Alexandra.
A goal by skipper David Artell, a minute before the interval, divided the sides on a tense afternoon at Gresty Road.
The Robins were unfortunate to trail at the break after making a promising start to the match.
They had created a handful of chances to take an early lead, Kaid Mohamed going closest when he clipped the woodwork in the opening exchanges.
But overall Mark Yates' side didn't do enough in the final third to make the breakthrough, and Crewe protected their flimsy lead to boost their own promotion chances.
The result wasn't enough to secure a top-eight spot, and lay to rest last season's horror showing here.
Two games to go then, and despite this sixth successive away defeat Cheltenham hold their destiny firmly in their own hands.
A play-off berth is guaranteed with victory over lowly Bradford City at the Abbey Business Stadium next weekend.
Meanwhile the Railwaymen have seemingly timed their run of fine form to perfection, moving into seventh with this win.
On this evidence Steve Davis' team could well be the one to avoid in next month's play-off lottery.
Yates made four changes to the side which eased past Accrington Stanley last week.
England Under-21 goalkeeper Jack Butland returned to Birmingham City earlier in the week, so Scott Brown was restored to the starting eleven.
Club captain Alan Bennett missed out with a groin strain, resulting in Sido Jombati's return to the side.
The popular Portuguese had missed the last three matches through suspension and slotted in at at his favoured right back position.
Brian Smikle made his first start since the end of January while Jimmy Spencer was recalled ahead of Ben Burgess and Darryl Duffy, who dropped to the bench.
Spencer led the attack ahead of a five-man midfield, with Smikle on the right and Mohamed out on the left.
Pack was pushed into a more advanced role with Luke Summerfield sitting deeper, in front of his central defenders.
Significantly for Crewe, who opted for a 4-4-2 formation, Nick Powell was missing with tonsolitis.
The 18-year-old striker is regarded by many here as one of the best prospects to come off this famous old production line of young talent.
The afternoon started promisingly enough for Cheltenham, who created a handful of chances to take an early lead.
Spencer drilled one wide as early as the fifth minute.
Then Luke Garbutt presented Mohamed with a great chance to break the deadlock with 13 minutes on the clock, but the winger clipped the left upright with his side-footed effort from 12 yards.
Spencer was causing plenty of problems in the first half, and on one occasion twisted away from his marker before pushing one wide of the target.
At the other end, Brown was at his best to deny Shaun Miller, who had run onto Billy Bodin's threaded ball only to watch his firm strike pushed away.
The game then settled down after a flurry of early chances.
Brown was next called in action five minutes before the interval to block Byron Moore's path to goal.
But the Cheltenham number one was beaten in the 44th minute when Artell gave his side the advantage at the break.
It came about after Moore had sent in a corner from the left, met by Harry Davis and punched clear by Brown.
Moore was allowed a second chance to pick out Davis, who this time headed it back across goal for Artell to hook it home.
It was a blow for Yates' side, who had more than matched the hosts for large periods of the opening 45 minutes.
The goal gave the home side the impotus, and the began the second period in positive mood.
Cheltenham were awarded a 54th minute free-kick, but Garbutt blazed it high and wide of the target.
Ben Burgess was pressed into action alongside Spencer on the hour, replacing Russ Penn as Yates switched to a 4-4-2 formation for the final 30 minutes of the match.
Smikle was also withdrawn with Jermain McGlashan adding a fresh injection of pace on the right of midfield.
Crewe had made two changes of their own, and it had seemed to have paid off for manager Steve Davis when A-Jay Leitch-Smith had found the net a couple of minutes later.
Fortunately for the Robins, the striker had strayed beyond the last defender before applying the final touch.
Substitute Max Clayton wasted a great chance a moment later, while at the other end Burgess brought about a comfortable save from Steve Phillips.
Next Clayton thumped one over from distance.
Darryl Duffy swapped places with Mohamed for the final ten minutes, a moment before Spencer smashed one over from 25 yards.
Cheltenham rallied late in a tense finale, but Crewe defended well enough to thwart their late advances, with Burgess curling one wide with the final chance of the afternoon.
CREWE ALEXANDRA (4-4-2): Phillips; Tootle, Artell (c) (Mellor 56), Dugdale, Davis; Moore, Westwood (Bell 86), Murphy, Bodin; Leitch-Smith, Miller (Clayton 64). Subs not used: Martin (Gk), Brown.
CHELTENHAM TOWN (4-5-1): Brown; Jombati, Lowe, Elliott (c), Garbutt; Smikle (McGlashan 67), Summerfield, Pack, Penn (Burgess 61), Mohamed (Duffy 81); Spencer. Subs not used: Low, MacLean.
REFEREE: Oliver Langford
ATTENDANCE: 5,495 (348 from Cheltenham)