Walsall fell to their first away league defeat of the season as three second half goals saw Cheltenham Town secure three points at the Jonny-Rocks Stadium.
The Saddlers looked bright in the first half and came agonisingly close taking the lead as Jake Scrimshaw hit the crossbar.
Cheltenham improved and scored twice in eight second half minutes through a Dan Scarr own goal and Matty Blair’s strike before Ben Tozer put the game to bed when he netted late on.
Darrell Clarke made three changes to the team that lost to Southend United last weekend.
Danny Guthrie, Emmanuel Osadebe and Scrimshaw all came into the starting XI while the suspended Alfie Bates, Wes McDonald and Caolan Lavery dropped out.
Captain James Clarke made the bench as he returned to the squad following an injury.
The Saddlers made a positive start and had a great chance to take the lead after just five minutes when Rory Holden broke forward and slid a through ball into the path of Elijah Adebayo whose shot was blocked brilliantly by Tozer.
Walsall also thought they should have had a penalty after nine minutes when Liam Kinsella appeared to have been clipped in the area but the referee adjudged the midfielder to have dived and brandished a yellow card.
Cheltenham grew into the game and had a glorious chance to take the lead on 22 minutes when Chris Hussey’s cross was met by the head of Andy Williams who guided his header onto the post before the ball was eventually cleared.
The Saddlers continued to cause the Robins problems and gave them a lot to think about from set pieces. They almost forced an own goal when Norman’s cross was flicked on by Scrimshaw and Charlie Raglan almost headed into his own net but to his relief, the ball flew just over the bar.
Clarke’s side had the best chance of the first half on 42 minutes when the ball fell to Scrimshaw who struck a beautiful half-volley that cannoned off the crossbar and bounced away.
The first half ended goalless but there was plenty of encouragement for the Saddlers.
Walsall were dealt a blow five minutes into the second half as they fell behind when Scarr headed Tozer’s throw into his own net as the Saddlers were left to curse their luck after a positive first half.
Cheltenham had the wind in their sails and they doubled their lead on 58 minutes when Blair picked the ball up on the right and smashed it into the roof of the net.
Clarke made a triple change on 69 minutes as he introduced McDonald, James Clarke and Lavery in place of Guthrie, Cockerill-Mollett and Adebayo.
The Saddlers had another penalty appeal with eight minutes to go but the result was exactly the same as the one in the first half as Lavery was booked for simulation.
The Walsall boss utilised the opportunity to use five substitutes as Jack Nolan and Stuart Sinclair came on for Osadebe and Scrimshaw on 87 minutes.
Cheltenham added a third with a minute of normal time to go when Tozer guided Hussey’s free-kick past Liam Roberts as Cheltenham picked up the three points.
Roberts; Norman, Scarr, Jules, Cockerill-Mollett (Clarke 69’); Kinsella, Guthrie (McDonald 69’), Holden, Osadebe (Sinclair 87’), Scrimshaw (Nolan 87’); Adebayo (Lavery 69’).
Subs: Rose, White