So far the best we've figured out is to be the first ones to name a number, and be super-transparent about how we arrived at that number.
The reasoning is that "in a salary negotiation the first person to quote a number loses", so since we (as the employer) are in a naturally stronger position, we deliberately "lose" upfront to avoid forcing the other person into a negotiation dynamic where they're going to try and push it as high as they can, and we end up trying to push it as low as we can. I think everyone loses out from this, and it starts the working relationship with distrust.
Instead, we run a pay evaluation process internally, including feedback about the value of the role and the person from all the people who interviewed the candidate. We publish all that feedback, as well as the suggestion/reasoning of our pay trustees (a group of people who use that feedback to try to place the candidate on our pay scale), along with the number this maps to, and the full pay scale, and the list of how much everyone is being paid in the company so they know where they stand (anonymised, because not everyone is comfortable yet with someone who is not yet a team member knowing their salary).
So far we've successfully used this process once and it led to a great onboarding experience. It's a recent development. I hope it continues to work, and allows us to avoid the games described in this very helpful podcast. I thought I'd share it in case other employers here are struggling with the same question.
This won't work in every company. Have a read through http://danieltenner.com/open-cultures/ if you want to understand more about how we run the company - hugely important in making this work.