"It feels good to finally click the box and be a 23m shot putter," Kovacs said.
Crouser was second with 22.74, while Walsh was third with 21.90 and Gill fourth with a best of 21.51.
Walsh threw his best on his first throw and then struggled to match it with three no-throws.
"I had really good rhythm on the first throw, but didn't find that freedom of movement again."
Walsh admitted it had been a bit frustrating this year.
"Physically I'm in the best shape of my life but as a team we're just struggling to find the sweet spot with everything.
"We're doing all the right things but things just aren't quite coming together."
Gill's best came with his sixth and final attempt.
The shot put competition was held in the streets of Zurich rather than in the stadium.
Kiwi Hamish Kerr was fifth in the high jump with a height of 2.21 metres.
Joint Olympic champion Gianmarco Tamberi of Italy won with a height of 2.34 metres
A winner at the Diamond League Final picks up $50,000, second $20,000 and third $11,000.
Walsh has one more event to finish off his season with the Continental meeting in Zagreb this weekend.
- RNZ