Based on my own experience, I was on both sides, I can recommend you to outsource development process in few next cases:
1) You have clear idea of the goal/result
2) You need fast MVP
3) You have long time project, more than 6 months
We have team of developers in Ukraine and working as outsource as well. In cases I've listed above we were bring best money value for our partners.
The most risky to outsource flexible product development, when you are still in seeking for ideal solution. The lack of local communication could be a reason of expensive misunderstanding.
Outsource could save you money, this is true. Be careful with your outsource development partner. The simplest way to exclude unprofessional players is listen questions they asks. If distant team ready to take any tasks and don't ask you about your business or tech goals, planned infrastructure etc. You have a reason to ask yourself, maybe they don't care about your success.
Be free to drop me a line and discuss more.