Barcelona closed within a point of leaders Real Madrid after in-form forward Luis Suarez played a part in all three of their goals in a scrappy 3-1 victory at Granada in La Liga on Saturday.
Barca took the lead at the Nuevo Los Carmenes stadium when Ivan Rakitic smashed the ball into the net from close range after Granada defender Cala failed to clear a Suarez centre in the 25th minute.
Lionel Messi twice went close before Suarez ran on to a chipped Rakitic pass and slipped the ball under home goalkeeper Oier to make it 2-0 three minutes into the second half.
Barca appeared to be cruising against their second from bottom opponents but Granada pulled a goal back five minutes later when Marc Bartra felled Lassane Bangoura in the penalty area.
Fran Rico confidently stroked his spot kick past Claudio Bravo before Barca restored their two-goal lead in the 70th minute.
Suarez sped clear, left Oier floundering and unselfishly set up Messi to find the empty net.
It capped another fine performance from Uruguay international Suarez who struck twice in Tuesday's 2-1 Champions League victory at Manchester City.
Messi fluffed two good chances in the closing stages when twice sent clear by Neymar, leaving the Argentina captain on 27 La Liga goals for the season, two behind top scorer Cristiano Ronaldo of Real.
Barca have 59 points from 25 matches with Real on 60 from 24 ahead of their game at home to sixth-placed Villarreal on Sunday.
Champions Atletico Madrid are six points adrift of Barca in third and visit Sevilla, who are fifth, on Sunday.
How Dhoni's belief in Ashwin is paying off...
EPL PHOTOS: Rooney ends goal drought; United go third
VOTE: Who will win the 2015 World Cup?
We have to continue with the good effort: Dhoni
Could Messi's failed penalty return to haunt Barcelona?