Well to name a few reasons ... seems infeasible/inaccurate to measure and attribute the various changes in the product to individual contributors or changes. (eg. what if multiple changes are occurring simultaneously, what about seasonality, what if it's just a random surge, etc.) Further, seems impossible to verify or trust metrics for the external developer. If the company is behaving unethically and misreporting/shortchanging, good luck suing them. Furthermore, from the company's perspective they're opening themselves up to massive legal risk by making this as a contract for the reason above - developer might try to sue them claiming gains which may or may not rightly be attributable to that developer's effort.
I think this is a situation where be a just ruler and exercise judgment in paying employees in proportion to their contribution, makes a lot more sense than trying to codify an agreement.