Keep QA in house when
The knowledge is the hard part
- Your product needs deep domain judgement to test at all
- Releases are small, frequent and low risk
- Your developers already test each other's work well
- Nobody can spare the time to explain the product once
Outsourced QA needs onboarding like any hire. Without it you get bug reports nobody can act on.