The short answer
Choose based on your task, your latency budget, your cost per request at real volume, and your data-residency constraints — in that order. Leaderboard rankings measure general capability on public benchmarks, which correlates loosely with performance on your specific, narrow task.
The questions that actually decide it
What is the task?
Classification and extraction often run well on small, cheap models.
Multi-step reasoning and long-context synthesis need frontier models.
What is the latency budget?
A user waiting on a chat response tolerates a second or two.
A model inside a checkout flow does not have that.
What does it cost at real volume?
Price per token is meaningless until multiplied by your token count per request and your request count per month.
A prompt with 8k of retrieved context costs very differently from a 200-token classification.
Where can the data go?
Healthcare and financial data often carry residency and processing constraints that eliminate options before capability is even discussed.
Build the switch in from day one
Model quality and pricing shift on a timescale of months. Put the model call behind an interface, keep your prompts and evaluation set in your own repo, and treat the provider as replaceable. Teams that wire a specific vendor SDK through their entire codebase pay for it later.