The hosts were hoping to go into next week's League Cup final on a win and had the better of the first half, but Dundee United were much improved after the break and substitute Michael Gardyne twice went close to grabbing a winner.
After a fairly quiet start, St Mirren created the first chance when Gary Teale put a dangerous ball into the box, but the ball glanced off the head of Steven Thompson and went just wide.
Paul McGowan then put a shot just wide for the hosts after he had been found by Esmael Goncalves, and McGowan tried his luck again a few minutes later but Radoslaw Cierzniak made a comfortable save.
The hosts continued to hold sway and Teale sent over a nice cross which Goncalves headed just wide of the target.
But Dundee United gave themselves a lift just before half-time when Rory Boulding drew a save from Craig Samson after a good turn and shot.
The visitors continued to pose a threat after the break and Stuart Armstrong fired over, before Boulding shot wide of the target again.
Goncalves then shot straight into the arms of Cierzniak at the other end but Dundee United were soon back on the front foot and some great play from Armstrong created a chance for Barry Douglas, who put his shot right across the face of goal.
Gardyne came off the bench for the visitors and promptly went very close to breaking the deadlock, shooting inches wide of the post from 20 yards out after twisting and turning to make space.
The same player then went even closer with 10 minutes left when he connected really well with a Douglas corner, but Samson did brilliantly to keep out his close-range effort.
Armstrong then headed over the bar before Rankin was dismissed late on for a two-footed lunge on John McGinn.
However, Graham Carey put the subsequent free-kick over the bar and the hosts had to settle for a point a week ahead of their League Cup final showdown with Hearts.