The home side pressed early on and showed great movement to create an opening for Rodri Rios, but the forward sliced his effort wide of the post.
Almeria had another chance on four minutes when Angel Trujillo met a corner, however, his finish was poor and sailed over the bar.
Rodri Rios had a huge chance to give Almeria the lead on 10 minutes, but his strike from the edge of the area bounced straight off the left post.
Nolito could have given Celta the lead on 18 minutes after being found in the area, but the forward saw his effort saved well by the goalkeeper.
A minute later, Nolito gave the away side the lead after he latched onto a rebound in the area and fired into the bottom right corner to make it 1-0.
Almeria began to push forward for an equaliser and found one on 40 minutes through Rodri Rios, who found space and slotted past the goalkeeper to make it 1-1.
The away side started the second half strongly and got themselves back in front on 52 minutes when Nolito passed to Charles, who simply tapped into an open goal.
Nolito grabbed his second on the game on 71 minutes to make it 3-1 as Celta began to completely dominate.
Oscar Diaz snatched a late consolation goal for Almeria on 88 minutes, firing into the roof of the net after being picked out by Rodri Rios.