The visitors took a shock lead as Iago Aspas scored in an empty net but Messi equalised less than two minutes later.
Suarez gave Barcelona the lead just past the hour but Maxi Gomez fired home eight minutes later to ensure the points were shared.
After a slow opening quarter of an hour, the game burst into life with two goals in as many minutes.
Celta took the lead after Daniel Wass played a ball down the right that put Aspas through on goal. He squared to Gomez, who forced Marc-Andre ter Stegen into a superb save from point-blank range, only for the former Liverpool man to tap in the rebound.
However, the visitors’ lead did not last long as Barcelona drew level less than two minutes later. Luis Suarez and Paulinho linked up just outside the area and the ball fell to Messi, who calmly tucked under Ruben Blanco for his first goal in six matches.
Ernesto Valverde’s men should have been ahead just after the half-hour mark. Suarez found some space in the box but his effort was blocked away to Messi, whose first attempt was saved before his second hit the post.
Just as Barcelona looked destined to take the lead, Celta spurned a glorious chance of their own. With the goal gaping, Wass sent a right-footed volley from Pione Sisto’s cross high over the bar.
Barcelona resumed where they left off in the opening period, camped in Celta’s half, and again came agonisingly close to moving ahead. Paulinho drove into the Celta box and rounded the onrushing Blanco, but he could only find the the side netting with the goal gaping.
They finally found the back of the net just after the hour mark thanks to a trademark Barcelona goal. Messi slipped the ball in behind for Jordi Alba and he squared for Suarez, who made no mistake and fired past Blanco.
They could have had a third moments later, but Messi’s powerful header was expertly clawed away by the sprawling Celta goalkeeper.
Barcelona’s lead, however, did not last long either as Celta equalised with 20 minutes to play. Samuel Umtiti pulled up holding his hamstring allowing Aspas to drive down the right flank and he reached the byline before cutting back for Gomez, who took a touch before tucking home from close range.
Not content with a draw, Barcelona threw everything forward in the closing stages of the match. Gerard Pique hit the post before Messi headed wide, and substitute Paco Alcacer sent a header over from six yards out in injury time with what surely would have won the match.
With plenty of chances for both sides, neither could find the decisive goal and the game ended all square. Barcelona remain top of the La Liga standings, five points ahead of Valencia in second, while Celta move up to eighth ahead of Real Betis on goal difference.