I strongly support revenue based (rather than mileage based) perks in FF programs.
Consider this: you're in sales, and you bring in a single 1 million dollar sale, but another salesperson makes 20 10,000 sales. Who should get more commission?
Now consider this: you're an airline, and you have a passenger who buys a single $2,000 SFO-NYC ticket, and another who buy three $400 SFO-NYC tickets. Whom should you extend more perks to?
Re: revenue based perks make costs more difficult to control: is it really the airlines' reponsibility to design perk programs that help control costs?