The separate demonstrations yesterday raised fears of more unrest when Brazil and Croatia play the first game in the business hub of 20 million people next Thursday.
Police fired tear gas and swung batons to beat back picketing strikers inside a metro station after commuters tried to enter it, with torrential rain adding to the traffic misery.
Across town, police officers estimated 3,000 people blocked the street in front of the Central Bank in a peaceful protest organised by the Force Union against the economic policies of President Dilma Rousseff.
The protests came as Brazil's national team was in town to play its last friendly against Serbia in Sao Paulo's Morumbi stadium.
Also Read
But the first World Cup game will be played in the city's new Corinthians Arena, which has yet to receive safety clearance to operate at full capacity, highlighting Brazil's struggle to be ready for the World Cup.
And officials are hard-pressed to resolve the metro strike, because the subway will be the main link to the arena for legions of fans.
The traffic mayhem has stranded the 4.5 million passengers who use the subway system daily in the sprawling city, while bumper-to-bumper traffic stretched for up to 250 kilometres.