The problem of counting journeys is that it can easily be gamed by split ticketing. Distance travelled is resilient to ticketing ploys.
Given that I think (for Advances) splitting should become the default, i.e. Advances should be issued per vehicle journey, I am inclined to agree that it should be based on something other than a number of journeys.
Personally I'd go on spend. Any business wants to encourage customers to cough up as much as possible, after all, because that's how you make money. And a business traveller buying a First Anytime Return once spends as much as a leisure traveller buying a Standard Off Peak 5 times, so why not give them both about the same. (Manchester-London fare example).
Season tickets perhaps a bit extra given that they provide a reliable base income. You could make it so a monthly season (or consistently hitting a contactless monthly cap on contactless) got you Silver tier automatically, and an annual season Gold tier, effectively replacing the Gold Card.