Have you compared models across providers? The quality, for the same task, varies tremendously. If you don't prioritize quality you're wasting your own time when you inevitably have to re-do the code...