Spot on! Some of the use cases for the VTL-based resolvers are to minimize cold start and latency due to network I/O for resolver invocation. I recommend that you start with the VTL resolvers if they are available for your data source and evaluate performance[1]. Switch to AWS Lambda only if you identify missing features or can't meet performance expectations.
Also, we've absolutely heard your feedback about VTL and this is a large area of investment for AppSync. One of the enhancements we launched today in the console is auto-complete in the VTL resolver editor. Let us know if it improves the editing experience.
Thanks for using AppSync - we are always excited to hear your feedback and use cases!
If you need to do really complicated logic in your resolvers, though, you'll probably want to write a Lambda to back those particular resolvers.
So a GraphQL query's performance may vary depending on how many resolvers are involved and whether those are VTL or Lambda.