I don't understand why anyone would use auto and a trailing return type for their functions. The syntax is annoying and breaks too much precedent.
1) consistency, 2) scoping is different and can make it a significant difference.
I have been programming in C++ for 25 years, so I'm so used to the original syntax that I don't default to auto ... ->, but I will definitely use it when it helps simplify some complex signatures.
it makes function declarations/instantiations much more grep-able.
Consistency (lambdas, etc.)
Generally, you don't. I'm not sure why the parent suggested you should normally do this. However, there are occasional specific situations in which it's helpful, and that's when you use it.