Counters are good and help the game stay strategic the problem I see is when a unit counters to large a segment of game. Roaches rock pretty much any unit in the game on the ground except Immortals and Marauders. Immortals and marauders are unstoppable except by air or large groups of weak units but against zerg they are necessary.
It just feels like these units should be good against each other a kind odd rock paper scissor but they should not be the crux of the game. You should not build just one unit type and win the game.
Yeah, it's a tough balance for sure.