It's not very consistent. Sometimes you get a gateway which is great, sometimes one which is limited to 10kbps, sometimes one running some monitoring experiments which doesn't care if you get any bandwidth (I was running one for a while).
My understanding is that bad/poor gateways are penalized. In my own experience, I've only ever needed to change circuits manually once (but I'm primarily using Tor to NAT punch to hidden services, not sure if that matters ).