Admittedly, its not always apparent. I think a general rule of thumb for me is if I can effectively write the script in my mind ahead of time. Anything beyond that and I might regret choosing a shell script for the purpose.
Sometimes a shell script just proves a concept out and is then rewritten later in a production language.