Use the smartest model, at all times, pay the bill, conquer the task, deliver value, and move onto the next.
There's a lesson here for everybody who thinks that "I'll just use a cheaper model for certain tasks"
It's *very* hard to know in advance how smart a model has to be to do a task.
If it's not smart enough, it will likely keep trying, using cheaper but more tokens.