I feel like my system is simpler. I pay people what they're worth to me (provided I can afford it). Even this system isn't perfect... given a specified experience/skill level, they may be worth more to me 2 months ago than they are now (or vice versa). But it makes it very easy to decide what everyone should get paid.<p>If they are worth X, but I can only pay Y (where Y < X), then I pay Y (and hope that they'll work for Y) until I can afford to pay them X. At that point, I raise their pay to X.<p>Also note that, if they are worth X, but you can only pay Y, this should only be a temporary situation. Because, if they are truly worth X, then once you hire them there should be no reason you cannot afford to pay them X eventually (since they are bringing that value to your organization).