The idea of a COLA is not a bad one. The problem is it's execution.
The AFL should have every club on the same salary cap. Then they need to look at the cost differential for living in all cities where AFL teams are every year as it varies form year to year.
At the end of each year, the AFL is handed the total player payments from each club. This information has each individuals salary clearly marked that make up the TPP for each club. The league then send out payments to each player equivalent to the percentage of the COL that has been calculated.
For example. Player A is on $500,000 per year and plays for Sydney. It is calculated that it costs 20% more than say Adelaide to live in Sydney. The player gets an extra $100K deposited into his account. Player B lives in Melbourne also on $500K. It is calculated to be 10% more expensive to live in Melbourne, so that player gets $50,000 extra. This is done for all players. The AFL get this money off the player's own clubs before sending it out.
This way it is fair. It also helps with free agency as offers can be like for like with the COLA added after the fact.
I know it would be a large accounting nightmare but for a multibillion dollar business, it would be easy to implement.
Thoughts?