The problem is that the outcome, what clients want, it's often mot clear, changes, sometimes depends on other people in the client's org, etc and it's a mess to have a fixed price contract in these cases
You can control this. You could opt for the part where the dependence on rest of the team is minimal. Or you could structure it in a tiered manner. With different pricing at different levels of outcomes.