Zero-shot fails when:
- You need a specific output format
- The task requires domain knowledge the model lacks
- Your requirements differ from common implementations
- Edge cases matter and must be handled explicitly
In these cases, you need to provide more context. That's where few-shot prompting helps.