It depends honestly. Each game is different. Each team is different. Each strategy is different. I've had good games where we swapped heroes depending on setup. People actually called out the swaps and others agreed. I had games where people refuse to swap, seeing that it simply doesn't work.
Usual troll argument they give: "I got x-objective kills" "My score is higher" etc. It means nothing if you lose the game. And one person doesn't carry in Overwatch. People play this game as if it is some kind of LoL / Dota.
Also, just won a difficult 5v6. Our entire team performed well. And this is how I got rewarded:

It just feels unfair. Losing makes you drop a whole rank almost always, but winning? Hahahaha...
- Making sure as Tracer that enemy Mercy / Lucio and Pharah is non-stop harassed? > You get nothing.
- Protecting strategically your team as Reinhardt, shielding crucial moments. Using Earth Shatter proper > You get nothing.
- Using awesome ult chains as Zarya so your team can clean them up? > Nothing.
- Be Mercy/Lucio, just heal and rez entire game > 1 Bar of rank up most of the time.
Maybe I should just spam Lucio every game.