Use the stack for small(ish) things (about 512 bytes at most) that you don't need to exist any longer than the lifetime of the function.

IMHO if you ever find yourself needing to increase the default stack size then you have stuff on the stack that shouldn't be (or have runaway recursion whose code could be refactored).