It all depends on the situations Oda uses Zoro and Sanji, usually Oda uses Zoro to look badass when its not a 1vs1 against a formidable enemy, Zoro gets priority on battles (obviously, thats his main role), while he puts Sanji on situations where he needs to somehow fail despite showing a bit of his strength so that way he is used as a hypetool , even tho this happens to Zoro but as i said, Zoro looks better in this aspect.
The most recent example is when he was fighting Apoo against X-Drake, then he cut Apoo to get the Antidote, Apoo looked like he was done but he kept fighting Drake. Zoro vs Killer also, Zoro got heavily hurt, but yet managed to defeat Killer even while hurt, and then fainted.
There are many reasons to why Sanji didn't get a 1vs1 in WCI against Oven for example, first, Sanji already showed he was strong enough when he casually blitzed Oven to save Lola, second, he would potentially look stronger than Zoro right away (who just beat Pica at that time, with a small help) and get a considerably higher bounty. There are standards Oda absolutely respects