If programs really wanted to show some loyalty and not just look to generate more cash, while also looking to improve their teams each year, they should not charge existing players a try-out fee for the upcoming year.
No spot on a team should be a lock forever since children will develop at different ages. The A player today might be a C player in high school.
How would you handle kids who tried out that make a team and replace an existing player? If someone comes to tryouts and is a better player then an existing player is the existing player getting replaced? If so, how is it fair to the existing player to not have tried out and competed against those who are trying out for positions on the team?