Tlou Segolela scored for Pirates in the 17th minute, before setting Andile Jali up late in the game for the second.
For his splendid performance, Segolela walked away with the Man of the Match award.
Pirates are on top of the table with 35 points after 17 games.
The first real chance of the game came in the fifth minute when Isaac Chansa played a one-two with Thulasizwe Mbuyane, but the latter directed his shot straight into the hands of Kennedy Mweene.
In the 17th minute Segolela brought the stadium to its feet when, after dispossessing Free State Stars, he made a solo run from Pirates’ half and zoomed past a cluster of Stars’ players before beating Mweene with a low shot to give Bucs the lead.
The goal did wonders for the game as Free State Stars were forced to come out of their slumber and try some attacking options.
Their main problem on the day was not only their failure to create chances, but also how to get past Rooi Mahamutsa and company in the Pirates’ defence.
Segolela nearly got his second for the day, but after a beautiful chip in the 38th minute, ‘Speedy Gonzalez’ could only watch in disbelief when his attempt hit the crossbar.
The pattern of the game was much the same after the break with Pirates pressing hard for the second while Free State Stars hung on.
Steve Khompela introduced Noah Chivuta and Thabane Motaung in place of Manti Moholo and Matome Madimabe and the move nearly paid dividends as Stars pushed forward and forced Pirates into some mistakes.
Mahamutsa failed to clear the ball under pressure, but with only Moeneeb Josephs to beat Madoda Motha shot horribly wide in the 62nd minute. The latter was replaced by Mxolisi Gumede two minutes later.
Segolela outran a defender again in the 84th minute before delivering a brilliant pass to Jali in the box, who tapped home to make it 2-0.