A Gary Hooper hat-trick against St Mirren helped move Celtic to within four points of Rangers at the top of the Scottish Premier League.
Danny Lennon's men found themselves two goals down after eight minutes.
Georgios Samaras smashed a low shot under Craig Samson, then Hooper scored his first with a tap-in.
Hooper added his second after the break with a fine turn and shot and dinked home Celtic's fourth before sub Dylan McGeouch scored a wonderful solo goal.
Celtic's early goals followed a spell of crisp passing and good movement by the visitors in the opening three minutes.
Yet, in the blink of an eye, Celtic were on their way to making it four SPL wins in a row.
Marc McAusland gifted possession to Samaras when he took a fresh-air swipe at the ball and the Celtic striker slammed a low shot from 16 yards at goal. Samson ought to have saved it but he allowed the ball to squirm over the line.
And Samaras was involved in Celtic's second.
He picked up a pass from Joe Ledley and set off on what should by now be a trademark run - if only the Greek could find consistency. He rampaged into the St Mirren box, passed to Anthony Stokes on the left and the Irishman's ball across the face of goal was turned in by a grateful Hooper.
Celtic winger James Forrest was next to trouble the Saints goal. He hit a left-foot effort from 14 yards that Samson used his legs to smother and the Scotland international followed that with a meaty thump at goal that cleared the St Mirren crossbar by a foot or so.
With the rain bucketing down, Samaras continued to test the legs and lungs of his opponents with runs from deep, yet St Mirren gradually got a handle on the game and began to enjoy more possession by simply passing and moving.
With Jim Goodwin winning challenges in midfield, the attack-minded Paul McGowan and Kenny McLean keen to get on the ball and Nigel Hasselbaink and Gary Teale making decent runs down the left and right wings respectively, St Mirren were capable of troubling Celtic.
However, the problem for Buddies boss Lennon, who signed a new deal earlier in the week, was that there was seldom any St Mirren player in a threatening position when crosses were hit into the box.
This he hoped to put right at the interval when he swapped Teale for centre-forward Steven Thompson.
But the action was all at the other end after the break. Only 15 seconds into the second period, Samson saved superbly from Hooper's close-range shot, and he was soon called upon to repel a Beram Kayal drive.
In 53 minutes Hooper made sure of the points. Stokes ripped through the Saints defence on the left wing and crossed for the little English scorer whose turn and shot were worthy of applause.
A dejected-looking McGowan drilled a shot just over the bar from 22 yards before team-mate David Barron replaced the presumably injured van Zanten.
Hooper claimed his hat-trick when, 40 yards out, he cushioned a high ball and raced at goal. He worked a one-two with Stokes and was fortunate to get the break of the ball off a Saints defender before dinking the ball over Samson.
McGeouch had been on the pitch for Forrest for eight minutes when he scored a wonderful solo goal to make it 5-0. He waltzed from deep through the red and black jerseys before despatching a low left-foot shot into the net.
St Mirren could find no way past the Celtic rearguard and left the east end of Glasgow on the end of a heavy defeat.
Celtic, though, are now putting together a real challenge for the title.
Live Text Commentary
Full Time The referee blows for the end of the match.90:00 +1:01
Kenny McLean delivers the ball, save by Fraser Forster.90:00 +0:41
Corner taken short by Nigel Hasselbaink.89:31
Adam Matthews decides to take a short corner.88:19
Corner taken by Graham Carey from the right by-line.87:14
Kenny McLean has an effort at goal from long range that misses to the right of the target.85:13
Daniel Majstorovic challenges Nigel Hasselbaink unfairly and gives away a free kick. Free kick taken by Nigel Hasselbaink.81:01
Beram Kayal challenges Nigel Hasselbaink unfairly and gives away a free kick. Graham Carey takes the free kick.79:35
Beram Kayal produces a drilled left-footed shot from deep inside the penalty area which goes wide of the right-hand post.76:26
Centre by Graham Carey, clearance made by Glenn Loovens.74:21
Beram Kayal takes the direct free kick.74:21 Substitution
Substitution (Celtic) makes a substitution, with Mohamed Bangura coming on for Georgios Samaras.74:21
Foul by David Barron on Georgios Samaras, free kick awarded.73:23
Direct free kick taken by Daniel Majstorovic.73:23 Substitution
Substitution Patrick McCourt on for Gary Hooper.73:23 Booking
Booking Georgios Samaras receives a yellow card for unsporting behaviour.73:14 Booking
Booking Paul McGowan booked.72:49
Unfair challenge on Georgios Samaras by Paul McGowan results in a free kick.71:32 Goal scored
Goal! - Dylan McGeough - Celtic 5 - 0 St Mirren Goal scored by Dylan McGeough from the edge of the area to the bottom left corner of the goal. Celtic 5-0 St Mirren.70:53
Direct free kick taken by Jim Goodwin.
Booking Glenn Loovens goes into the referee's book.70:43
Paul McGowan fouled by Glenn Loovens, the ref awards a free kick.69:52
Effort on goal by Paul McGowan from inside the box misses to the right of the target.68:35
Free kick awarded for a foul by Victor Wanyama on Paul McGowan. Graham Carey delivers the ball from the free kick left-footed from right channel, save by Fraser Forster.68:20 Substitution
Substitution Graham Carey replaces Illias Haddad.67:13
Short corner taken by Joe Ledley from the left by-line.66:59
Adam Matthews sends in a cross, blocked by David Barron.66:44
Adam Matthews decides to take the corner short.66:23
Victor Wanyama takes a shot. Jim Goodwin gets a block in.63:41
Indirect free kick taken by Fraser Forster.63:41 Substitution
Substitution (Celtic) makes a substitution, with Dylan McGeough coming on for James Forrest.63:41
The offside flag is raised against Steven Thompson.62:06
Centre by Adam Matthews, Craig Samson makes a save.61:13
The ball is delivered by Kenny McLean.60:22
The official flags Paul McGowan offside. Indirect free kick taken by Fraser Forster.58:12
Kenny McLean takes a outswinging corner to the near post, Joe Ledley manages to make a clearance.56:24 Goal scored
Goal! - Gary Hooper - Celtic 4 - 0 St Mirren Gary Hooper grabs a goal from close range high into the middle of the goal. Celtic 4-0 St Mirren.55:24 Substitution
Substitution David Barron replaces David van Zanten.55:08
Paul McGowan has an effort at goal from just outside the penalty box which goes wide of the left-hand post.53:43
Anthony Stokes produces a left-footed shot from just outside the penalty box that misses to the left of the goal.52:17
Assist on the goal came from Anthony Stokes.52:17 Goal scored
Goal! - Gary Hooper - Celtic 3 - 0 St Mirren Gary Hooper finds the net with a goal from close in to the top right corner of the goal. Celtic 3-0 St Mirren.50:09
Georgios Samaras has an effort at goal. Craig Samson makes a save.47:45
Anthony Stokes crosses the ball, Beram Kayal takes a shot. Craig Samson makes a save.46:38
Jeroen Tesselaar is flagged offside by the assistant referee. Fraser Forster takes the free kick.46:08
Centre by Georgios Samaras, clearance made by Jeroen Tesselaar.45:20
Adam Matthews takes a short corner.45:04
Gary Hooper takes a shot. Craig Samson makes a save.45:01
The match restarts for the second half.45:01 Substitution
Substitution (St Mirren) makes a substitution, with Steven Thompson coming on for Gary Teale.45:00 +0:03 Half time
Half Time The players leave the pitch at half time.44:07
The offside flag is raised against Paul McGowan. Fraser Forster restarts play with the free kick.38:46
Inswinging corner taken from the right by-line by Kenny McLean, Nigel Hasselbaink challenges Fraser Forster unfairly and gives away a free kick. Free kick taken by Fraser Forster.38:38
Nigel Hasselbaink sends in a cross, Georgios Samaras manages to make a clearance.35:11
A cross is delivered by Gary Teale, save by Fraser Forster.33:19
A cross is delivered by David van Zanten, Glenn Loovens makes a clearance.31:26
Illias Haddad gives away a free kick for an unfair challenge on James Forrest. Direct free kick taken by Glenn Loovens.31:16
The ball is swung over by Jeroen Tesselaar, Adam Matthews gets a block in.30:42
The referee blows for offside against Anthony Stokes. Craig Samson restarts play with the free kick.30:03
Kenny McLean sends in a cross, save by Fraser Forster.29:17
Unfair challenge on Beram Kayal by Jim Goodwin results in a free kick. Free kick taken by Glenn Loovens.27:25
Gary Hooper challenges Illias Haddad unfairly and gives away a free kick. Lee Mair takes the free kick.26:16
Nigel Hasselbaink is caught offside. Daniel Majstorovic takes the indirect free kick.25:29
Unfair challenge on Paul McGowan by Daniel Majstorovic results in a free kick. Jim Goodwin takes the direct free kick.23:13
Outswinging corner taken left-footed by Joe Ledley, Effort from inside the area by Victor Wanyama misses to the right of the target.20:04
James Forrest has shot on goal from just outside the area which goes wide of the right-hand upright.19:31
Inswinging corner taken from the right by-line by Kenny McLean, Fraser Forster makes a save.19:25
A cross is delivered by Gary Teale, clearance made by Glenn Loovens.17:54
James Forrest takes a shot. Save by Craig Samson.16:52
Inswinging corner taken left-footed by Kenny McLean, save by Fraser Forster.16:24
The ball is crossed by Gary Teale, clearance made by Glenn Loovens.16:10
Victor Wanyama concedes a free kick for a foul on Nigel Hasselbaink. Free kick taken by David van Zanten.15:03
Shot by Kenny McLean from a long way out goes over the net.14:40
Gary Teale concedes a free kick for a foul on Georgios Samaras. Daniel Majstorovic takes the free kick.14:08
The official flags Nigel Hasselbaink offside. Fraser Forster restarts play with the free kick.13:00
Adam Matthews takes a corner.12:52
A cross is delivered by James Forrest, Kenny McLean manages to make a clearance.10:02
The ball is delivered by Joe Ledley.7:32
The assist for the goal came from Anthony Stokes.7:32 Goal scored
Goal! - Gary Hooper - Celtic 2 - 0 St Mirren Goal scored by Gary Hooper from close in low into the middle of the goal. Celtic 2-0 St Mirren.6:30
Victor Wanyama challenges Gary Teale unfairly and gives away a free kick. Direct free kick taken by David van Zanten.3:17 Goal scored
Goal! - Georgios Samaras - Celtic 1 - 0 St Mirren Goal scored by Georgios Samaras from inside the penalty box low into the middle of the goal. Celtic 1-0 St Mirren.2:12
Glenn Loovens gives away a free kick for an unfair challenge on Paul McGowan. Direct free kick taken by Jim Goodwin.1:47
A cross is delivered by Jeroen Tesselaar, clearance by Adam Matthews.0:48
Unfair challenge on Georgios Samaras by Jim Goodwin results in a free kick. Free kick taken by Beram Kayal.0:27
The ball is sent over by Paul McGowan, clearance by Daniel Majstorovic.0:00
The referee gets the game started.
Live data and text provided by our data suppliers