St Johnstone suffered their fourth league defeat on the bounce at McDiarmid Park.
St Mirren took a deserved half-time lead but the home team were transformed after the break and got back on terms through Steven Anderson.
However, as the Perth men pushed for a winner they left the door open at the back and the visitors grabbed a late winner.
Neither side carved out a chance in the opening stages, but St Mirren were the livelier team.
So when the visitors broke the deadlock it came as no great surprise.
Tommy Wright has bemoaned the “individual mistakes” that have cost his team in recent weeks and here was another to add to the tally.
On 29 minutes Michael O’Halloran was dispossessed dangerously close to his own goal, and Sean Kelly cut the ball back for Jason Naismith, who gave Alan Mannus no chance with a 25-yard rocket.
As so often happens, a team is most susceptible to conceding after it has just scored and so it proved for St Mirren.
One minute later they allowed O’Halloran through on goal, but instead of atoning for his earlier error, the former Bolton Wanderers man skied his shot way over the bar with only Marian Kello to beat.
O’Halloran was again in the thick of the action on the stroke of half-time when he made an excellent run down the right side of the box and evaded Jim Goodwin.
David Wotherspoon had taken up a perfect position eight yards out and had his team-mate picked him out, would have had a simple finish. The set-up was wayward though, and St Mirren went into the break in front.
It was O’Halloran’s last contribution, as the start of the second half saw the introduction of new signing James McFadden in his place.
Lee Croft made an instant impact when he was brought on just after the hour mark. Croft drove down the right and fired in a low cross to the near post, where Brian Graham was just beaten to the ball by a St Mirren defender.
Saints were enjoying their best spell of the match and capitalised on it with a 67th minute equaliser.
Scott Brown sent a corner to the back post and Anderson rose highest to head home.
On 74 minutes the home team were denied the lead by the assistant referee’s flag after Graham finished brilliantly.
They pushed for a winner and were caught with the classic sucker punch on the counter attack on 84 minutes.
Adam Drury was put through by Ross Caldwell and found himself in space down the St Mirren right. Drury produced a cool finish, lifting his shot over the out-rushing Mannus.