Most of my tokens have come from token farming
Ie. surveys, videos etc.
But I have got a hell of a lot from tapjoy on the iPhone.
I have purchased tokens in the past, primarily for the odd red pack when I've had tons of injuries.
I'd say I buy around 50 tokens a season using my own money.