Joe Ledley and Anthony Stokes netted against St Mirren to put Celtic into Monday's Scottish Cup semi-final draw.
Ledley's close-range header from James Forrest's cross gave the visitors a fifth-minute lead.
Emilio Izaguirre's blunder allowed Saints' Esmael Goncalves to level soon after, before Stokes headed home another Forrest delivery.
St Mirren pressed without success in the second half and Celtic's Gary Hooper fired against the crossbar.
It was just 34 days since St Mirren defeated Celtic 3-2 in the Scottish Communities League Cup semi-final at Hampden.
Celtic's Stokes had the game's first real chance on three minutes, profiting from Hooper's headed flick-on to run through the centre before being closed down quickly by St Mirren's defence.
However the visitors ensured their next attacking move had an end result.
Forrest tricked his way past Saints' Paul Dummett on the right and provided the cross for Ledley to head home on the six-yard box.
But any hopes Celtic had of this cup tie being a straightforward affair were extinguished when St Mirren hit back on 13 minutes.
Izaguirre looked to have Lee Mair's long diagonal ball covered but, under pressure from Steven Thompson, the Honduran's unsure first header was followed by a catastrophic one as he knocked it over onrushing keeper Fraser Forster, leaving Goncalves to nod into an empty net.
St Mirren Park was buzzing but Celtic tempered that in the 21st minute with a goal straight from the training ground.
Forrest's short corner to Hooper was returned to him and the winger dinked it to the far post where Stokes arrived unmarked to head in off the post.
The game was then given an opportunity to get its breath back before Efe Ambrose's slaloming run into the box ended with a blocked shot on 40 minutes.
Matthews and Hooper combined to set up captain for the day Ledley at the beginning of the second half, but the Welshman's tame effort was gathered easily by Samson.
St Mirren began to impose themselves on their visitors on the hour mark, when a series of corners led to Victor Wanyama blocking well from another Goncalves strike.
Mair misread an Ambrose header in the 68th minute which allowed Hooper to run clear and put his laces through a shot which Samson turned onto the bar.
Then it was Forster who had to be alert, rushing out to thwart Thompson.
Saints' midweek goal hero Graham Carey replaced Paul McGowan and, with 10 minutes remaining, he forced Forster into an excellent diving save from a whipped free-kick.
Kelvin Wilson cleared well from Gary Teale's cross in the closing stages, with the ensuing St Mirren corner presenting Mair with a great chance at the back post, but the defender could only slam in into the side-netting.
And it proved to be the home side's last opportunity as Celtic progressed to the semi-final stage.
- 01 Samson
- 02 van Zanten
- 03 Dummett (Parkin - 86' )
- 05 Mair
- 14 McAusland
- 10 McGowan (Carey - 73' )
- 21 Teale
- 24 Newton
- 09 Thompson Booked
- 29 J McGinn
- 77 Goncalves
- 16 Adam
- 11 Carey
- 17 Mclean
- 19 Parkin
- 27 Guy
- 01 Forster
- 02 Matthews
- 03 Izaguirre
- 04 Ambrose
- 06 Wilson
- 25 Rogne (Kayal - 81' )
- 16 Ledley
- 49 Forrest
- 67 Wanyama
- 10 Stokes (Samaras - 71' )
- 88 Hooper (Commons - 90' )
- 24 Zaluska
- 15 Commons
- 33 Kayal
- 07 Miku
- 09 Samaras
Live Text Commentary
Full Time The referee blows for the end of the match.90:00 +3:00
Gary Teale produces a cross, save by Fraser Forster.90:00 +2:37
The ball is delivered by James Forrest.90:00 +2:09
Unfair challenge on Beram Kayal by Esmael Goncalves results in a free kick. Indirect free kick taken by Adam Matthews.90:00 +0:18 Substitution
Substitution Kris Commons is brought on as a substitute for Gary Hooper.90:00 +0:18
Lee Mair produces a right-footed shot from close in which goes wide of the left-hand upright.89:48
Graham Carey takes a inswinging corner from the right by-line to the near post.89:37
The ball is swung over by John McGinn, clearance made by Kelvin Wilson.88:06
Joe Ledley gives away a free kick for an unfair challenge on Marc McAusland. David van Zanten takes the free kick.87:36
Outswinging corner taken by James Forrest.85:13
Outswinging corner taken right-footed by James Forrest, David van Zanten manages to make a clearance.85:13 Substitution
Substitution Sam Parkin joins the action as a substitute, replacing Paul Dummett.83:06
Shot from outside the box by Conor Newton goes wide right of the target.82:27
Kelvin Wilson challenges Esmael Goncalves unfairly and gives away a free kick. Free kick taken by David van Zanten.80:26 Substitution
Substitution (Celtic) makes a substitution, with Beram Kayal coming on for Thomas Rogne.79:16
Victor Wanyama concedes a free kick for a foul on Graham Carey. Strike comes in from Graham Carey from the free kick, Fraser Forster makes a save. Header on goal by Conor Newton from just inside the area goes over the target.79:08
Steven Thompson produces a cross, clearance made by Victor Wanyama.78:15
Unfair challenge on Conor Newton by Joe Ledley results in a free kick. Graham Carey delivers the ball from the free kick left-footed from right wing, Joe Ledley makes a clearance.77:59
The ball is crossed by Graham Carey, Thomas Rogne makes a clearance.77:11
Esmael Goncalves takes a shot. Save by Fraser Forster.
A cross is delivered by Graham Carey, save made by Fraser Forster.73:31
Gary Teale crosses the ball, Adam Matthews manages to make a clearance. Graham Carey takes the outswinging corner, Thomas Rogne manages to make a clearance.72:17 Substitution
Substitution Graham Carey comes on in place of Paul McGowan.70:37
Free kick taken by Lee Mair. Shot from long distance by Conor Newton goes over the bar.70:37 Substitution
Substitution (Celtic) makes a substitution, with Georgios Samaras coming on for Anthony Stokes.70:37
Free kick awarded for an unfair challenge on Paul McGowan by Efe Ambrose.69:51
The ball is swung over by Esmael Goncalves, Emilio Izaguirre manages to make a clearance.67:19
Gary Hooper takes a shot. Craig Samson makes a save. Shot from just outside the area by James Forrest misses to the right of the target.66:40
Shot from just outside the box by Paul McGowan misses to the left of the goal.66:31
Steven Thompson crosses the ball, clearance made by Thomas Rogne.65:49
The ball is crossed by Anthony Stokes, David van Zanten manages to make a clearance.65:15
The assistant referee signals for offside against Esmael Goncalves. Fraser Forster takes the free kick.64:21
The ball is sent over by Adam Matthews, Lee Mair manages to make a clearance.63:29
Foul by David van Zanten on Anthony Stokes, free kick awarded. The free kick is swung in right-footed by Anthony Stokes, Lee Mair makes a clearance.62:45
The ball is delivered by Paul Dummett, blocked by Adam Matthews.61:51
The ball is delivered by James Forrest.61:30
David van Zanten sends in a cross, save by Fraser Forster.59:12
Esmael Goncalves takes a shot. Save made by Fraser Forster.57:55
Inswinging corner taken by Gary Teale from the left by-line.57:18
Esmael Goncalves takes a shot. Victor Wanyama gets a block in. Corner taken right-footed by Gary Teale from the right by-line, clearance by Kelvin Wilson.56:52
Paul Dummett produces a cross, Adam Matthews gets a block in. Corner taken right-footed by Gary Teale from the left by-line, Kelvin Wilson makes a clearance.54:23
Shot by Anthony Stokes from deep inside the penalty area misses to the left of the target.53:47
Free kick awarded for a foul by Esmael Goncalves on Adam Matthews. Thomas Rogne takes the free kick.53:28
James Forrest delivers the ball.52:51
Unfair challenge on Gary Hooper by John McGinn results in a free kick. Free kick taken by Anthony Stokes.49:14
Esmael Goncalves is caught offside. Free kick taken by Fraser Forster.48:52
The ball is delivered by Gary Hooper, Joe Ledley takes a shot. Save by Craig Samson.48:09
The ball is swung over by Anthony Stokes, Marc McAusland manages to make a clearance. Corner taken right-footed by Anthony Stokes from the left by-line to the near post, Steven Thompson manages to make a clearance.45:01
The second half has started.45:00 +1:03 Half time
Half Time The match has reached half-time.45:00 +0:31
Effort on goal by Victor Wanyama from long range goes over the bar.44:36
Foul by Efe Ambrose on Paul McGowan, free kick awarded. Lee Mair restarts play with the free kick.41:35
Victor Wanyama gives away a free kick for an unfair challenge on John McGinn. Lee Mair takes the indirect free kick.40:24
The ball is crossed by Emilio Izaguirre, Paul Dummett manages to make a clearance.39:08
Effort from 18 yards by Efe Ambrose. Blocked by Marc McAusland. Corner taken by Anthony Stokes from the right by-line.38:11
Shot from 20 yards from James Forrest. Blocked by Lee Mair.36:50
Free kick awarded for an unfair challenge on Anthony Stokes by David van Zanten. Joe Ledley takes the free kick.36:20
A cross is delivered by Conor Newton, clearance made by Efe Ambrose.34:31
Gary Teale delivers the ball.34:11
Gary Teale decides to take a short corner.33:31
Gary Teale fouled by Kelvin Wilson, the ref awards a free kick. Free kick crossed right-footed by Gary Teale from right wing, clearance made by Efe Ambrose.33:08
Emilio Izaguirre concedes a free kick for a foul on Esmael Goncalves. David van Zanten takes the indirect free kick.32:30
Corner taken by Anthony Stokes from the right by-line played to the near post, Steven Thompson manages to make a clearance.32:22
James Forrest crosses the ball, clearance made by Marc McAusland.28:03
David van Zanten concedes a free kick for a foul on Anthony Stokes. Free kick taken by Emilio Izaguirre.24:04
Fraser Forster restarts play with the free kick.24:04 Booking
Booking The referee cautions Steven Thompson for unsporting behaviour.23:52
Steven Thompson concedes a free kick for a foul on Kelvin Wilson.22:50
Centre by Adam Matthews, save by Craig Samson.21:27
The assistant referee signals for offside against Esmael Goncalves. Indirect free kick taken by Fraser Forster.20:35
Assist on the goal came from James Forrest.20:35 Goal scored
Goal! - Anthony Stokes - St Mirren 1 - 2 Celtic Anthony Stokes finds the back of the net with a headed goal from close range. St Mirren 1-2 Celtic.20:27
A cross is delivered by James Forrest,20:03
The ball is swung over by James Forrest, blocked by Paul McGowan. James Forrest takes a short corner.18:12
The ball is crossed by Gary Teale, Foul by Steven Thompson on Thomas Rogne, free kick awarded. Indirect free kick taken by Fraser Forster.17:02
Esmael Goncalves produces a right-footed shot from just outside the box that misses to the right of the goal.15:23
Corner taken right-footed by Gary Teale from the right by-line, free kick awarded for an unfair challenge on Efe Ambrose by Steven Thompson. Indirect free kick taken by Fraser Forster.12:27
The assist for the goal came from John McGinn.12:27 Goal scored
Goal! - Esmael Goncalves - St Mirren 1 - 1 Celtic Esmael Goncalves grabs a headed goal from close in. St Mirren 1-1 Celtic.11:44
Paul McGowan fouled by Thomas Rogne, the ref awards a free kick. Direct free kick taken by John McGinn.11:00
The ball is sent over by Emilio Izaguirre, John McGinn makes a clearance.10:51
Centre by Emilio Izaguirre, clearance made by John McGinn.10:05
A cross is delivered by Anthony Stokes, John McGinn makes a clearance.9:28
Emilio Izaguirre delivers the ball, Gary Teale gets a block in. Corner taken by Anthony Stokes from the left by-line to the near post, Gary Teale makes a clearance.6:31
The offside flag is raised against James Forrest. Craig Samson takes the indirect free kick.4:25
James Forrest provided the assist for the goal.4:25 Goal scored
Goal! - Joe Ledley - St Mirren 0 - 1 Celtic Joe Ledley grabs a headed goal from close in. St Mirren 0-1 Celtic.4:16
A cross is delivered by James Forrest,3:41
John McGinn fouled by Victor Wanyama, the ref awards a free kick. John McGinn takes the free kick.3:04
Anthony Stokes takes a shot. Blocked by Lee Mair. Victor Wanyama takes a shot.1:58
Adam Matthews crosses the ball, Conor Newton manages to make a clearance. Corner taken right-footed by Anthony Stokes from the right by-line, clearance by John McGinn.0:36
Outswinging corner taken by Gary Teale from the right by-line.0:27
Centre by Gary Teale, clearance made by Thomas Rogne.0:00
The game kicks-off.
Live data and text provided by our data suppliers