The Swans made one change as Jefferson Montero started in place of Modou Barrow, who was taken off during the draw against Sunderland with a knee injury.
The only other change to the squad saw Wayne Routledge return to the bench for the first time since overcoming the calf strain suffered during the home defeat to Chelsea last month.
Ben Foster, Craig Dawson, Gareth McAuley, Joleon Lescott, James Morrisson (Craig Gardner, 85), Chris Brunt, Darren Fletcher (capt), Claudio Yacob, Callum McManaman (Stephane Sessegnon, 57), Brown Ideye, Saido Berahino.
Boaz Myhill, Andre Wisdom, Chris Baird, Jonas Olsson, Sebastien Pocognoli.
Lukasz Fabianski, Kyle Naughton, Federico Fernandez, Ashley Williams (capt), Neil Taylor, Ki Sung-Yueng, Jack Cork, Jonjo Shelvey (Nelson Oliveira, 62), Nathan Dyer (Wayne Routledge, 62), Jefferson Montero, Bafe Gomis.
Gerhard Tremmel, Angel Rangel, Jordi Amat, Tom Carroll, Jay Fulton.
West Brom came into this contest on the back of just one defeat in six matches since Tony Pulis took over, while the Swans had recorded four points from their last two games against Southampton and Sunderland.
But it was Albion who almost went ahead in the 12th minute as Craig Dawson's near-post header from a James Morrison corner was parried away by Lukasz Fabianski, with the Swans defence then managing to clear the danger.
The hosts then saw Callum McManaman shoot over the bar, before the winger picked up the game's first booking for a rash challenge on Jefferson Montero.
Swansea's first sight of goal came just past the midway point of the first half when Montero's cross found Bafetimbi Gomis, but the Frenchman's effort was high and wide.
Jonjo Shelvey - who scored the winner against Southampton in the Swans' last away triumph - curled a shot wide of the left-hand upright on 33 minutes before Neil Taylor evened up the booking count with a foul on McManaman.
Gomis then had a decent chance five minutes before the break as the ball sat up invitingly inside the box but his volley was straight at Ben Foster.
Half-time: West Brom 0 Swans 0
Neither side made any changes at the interval and Albion striker Saido Berahino had the first real sight of goal but his effort was way off target as the ball sailed wide.
The home side were forced into their first change after 57 minutes as Callum McManaman took a knock and was replaced by Stephane Sessegnon, and just two minutes later the hosts were ahead.
Berahino's run opened up some space at the heart of the Swans defence and after he found Brown Ideye inside the box, Albion's record signing saw his right-foot shot find the bottom right-hand corner past Lukasz Fabianski.
That setback prompted Garry Monk to make a double change just past the hour mark as Nathan Dyer and Jonjo Shelvey made way for Wayne Routledge and Nelson Oliveira.
And it was Routledge who was presented with a great chance to equalise on 67 minutes as Neil Taylor's pull back found him in the box, but the winger's effort was well blocked by Gareth McAuley.
But with just over 15 minutes left to play the home side doubled their advantage.
After Jefferson Montero was robbed of possession by Craig Dawson inside midway inside his own half, Berahino played a neat one-two with Ideye before curling a fine effort past the stranded Fabianski.
Bafetimbi Gomis was presented with a chance late on as Montero picked out the unmarked striker inside the penalty area, but his header failed to test Foster as it drifted wide.
The defeat leaves the Swans in ninth place in the Barclays Premier League, with 34 points from 25 games played.