How to choose an LLM for your product: OpenAI vs Anthropic vs open models
Victor
Founder, Novek Labs
Every founder building an AI feature eventually asks the same question: which model should we use? Here is the direct answer. There is no permanent winner, and any article that crowns one is stale by the next release cycle. The right move is to stop shopping for a champion and start running a selection process: build an evaluation set from your real product data, prove the feature works on a strong closed model, then route the easy majority of your traffic to cheaper models behind a thin abstraction layer.
That answer sounds like a dodge. It is not. Rankings reshuffle every quarter, prices drop, and the "best" model for summarizing contracts is rarely the best one for tagging support tickets. What does not change is the structure of the decision. At Novek Labs we build LLM features into client MVPs, and the framework below is the one we actually use, stripped of anything that will be wrong in six months. If you are still deciding whether your product needs AI at all, read should your MVP have AI first, because the honest answer is often no.
Key takeaways
- No model ranking survives a quarter. Choose a process, not a champion, and design so that swapping models is a one day task.
- Your own evaluation set, built from real product inputs, beats every public benchmark. Build it before you compare anything.
- Start with a strong closed model from OpenAI, Anthropic, or Google to prove the feature. Capability risk kills early features; cost does not.
- Once real usage patterns emerge, segment calls by difficulty and send the easy majority to small, cheap models.
- Cost is a product decision, not a procurement one. Caching, context discipline, and output limits usually save more than switching providers.
What are the three families of LLMs?
Every model you will realistically consider falls into one of three families. The specific names change constantly; the properties of each family have been stable for years and are the durable thing worth learning.
Closed API models: OpenAI, Anthropic, and Google
These are the frontier models you access over an API and pay for per token, meaning per unit of text processed. Their durable properties: the strongest raw capability at any given moment, the fastest pace of improvement, and zero infrastructure for you to run. The trade-offs are equally durable: costs scale linearly with usage forever, your data transits a third party, and you are exposed to provider decisions on pricing, deprecation, and rate limits.
Open-weight models: control at the cost of ownership
Open-weight models, meaning models whose trained parameters you can download and run on your own hardware, come largely from labs like Meta and the ecosystem around them. Their durable strengths: full control over where data goes, no per-token economics once you own the hardware, freedom to modify, and immunity to deprecation. The durable costs: you own serving, scaling, monitoring, and every 3am incident, and the top open models have historically trailed the top closed models on the hardest tasks. That gap narrows and widens over time, but it has never fully closed at the frontier.
Small and cheap models: the workhorse tier
The third family cuts across the other two: small models, both closed and open, that are dramatically cheaper and faster than frontier models. They are not for open-ended reasoning. They are for the workhorse jobs that make up most real product traffic: classifying a message, extracting a name and a date from a document, deciding which of five paths a request should take. Once a product matures, most of its LLM calls belong in this tier.
OpenAI vs Anthropic vs open models: a durable comparison
Here is the comparison that stays true across release cycles. Notice what is missing: model names, benchmark scores, and prices. All of those go stale; this table does not.
| Family | Durable strengths | Durable trade-offs | Best first use |
|---|---|---|---|
| Closed API leaders (OpenAI, Anthropic, Google) | Highest capability, fastest improvement, zero infrastructure | Per-token cost forever, data leaves your walls, provider dependency | Proving a new feature works at all |
| Open-weight models | Data control, no per-token cost at scale, no deprecation risk, modifiable | You run and scale the servers, quality gap at the frontier, ops burden | Privacy-bound workloads, high-volume mature features |
| Small and cheap models | Very low cost, low latency, good enough for narrow tasks | Fail on open-ended or multi-step reasoning | Classification, extraction, routing, formatting |
Why your own evals beat every public benchmark
Public benchmarks measure performance on public tasks. Your product is not a public task. A model that tops a reasoning leaderboard can still mangle your specific job of turning messy customer notes into structured follow-ups, because nobody benchmarked that.
So before you compare a single model, build an evaluation set: 50 to 200 real inputs from your product or your target users, each paired with what a correct output looks like. Real inputs matter because real users write fragments, typos, and edge cases no synthetic test set contains. When we built the AI-assisted features in Roundup, an eval set of real, messy inputs disqualified our first model choice in an afternoon, something no leaderboard would have told us. From then on, every model question became empirical: run the eval, read the failures, decide.
The eval set is also a permanent asset. Every time a new model ships, you rerun it and know within an hour whether switching is worth it.
Should you start with a closed model or an open one?
Start closed, and start strong. Early in a feature's life, the question is not "how do we serve this cheaply" but "does this work well enough that users want it." That is capability risk, and it dominates everything else early on. A strong closed model answers it fastest: no infrastructure, best available quality, and if the feature fails on the best model available, you learned something important for the price of an API bill instead of a GPU cluster.
Founders sometimes resist this because per-token pricing feels scary at scale. But you do not have scale yet. Optimizing serving costs for an unvalidated feature is the AI version of premature optimization, and it burns exactly the weeks that matter most. It is the same logic we apply to MVP timelines generally: prove the risky thing first, polish the economics second.
When should you route calls to cheaper models?
After the feature works and real traffic flows, a pattern always emerges: most calls are easy. Look at your logs and you will find that a large share of requests are short, formulaic, or repetitive, while a small share genuinely need frontier reasoning.
That split is where the money is. Segment calls by difficulty and route them: the easy majority to a small, cheap model, the hard minority to the strong one. The simple version is a rules-based router, where request type A goes cheap and request type B goes expensive; a more advanced version uses a small model to classify difficulty first. Either way, your eval set tells you whether the cheap model handles each segment acceptably, so routing stays empirical instead of hopeful.
Cost itself deserves product thinking, not procurement thinking. The biggest savings we see in client work rarely come from switching providers. They come from caching repeated prompts so identical questions are never paid for twice, trimming context so you stop re-transmitting your whole knowledge base on every call, and capping output length so the model does not write an essay when a sentence will do. Do those three before you renegotiate anything.
How do you avoid getting locked into one provider?
Keep a thin abstraction between your product and the model. Concretely: every LLM call in your codebase goes through one internal module that owns the prompt templates, the model choice, the retries, and the logging. The rest of your code asks for "summarize this" and never knows which provider answered.
This is deliberately boring engineering, and it is the difference between a model swap taking a day and taking a rewrite. When a better or cheaper model ships, and one will, you change one configuration value, rerun your evals, and deploy. Resist heavy orchestration frameworks on day one; a few hundred lines you fully understand beat a dependency you do not.
Privacy, compliance, and latency: the constraints that decide for you
Sometimes the framework short-circuits because a hard constraint makes the choice for you.
Privacy and compliance. If your product handles medical records, financial data, or anything under strict data residency rules, meaning legal requirements about which country your data may be stored in, the question shifts from "which model is best" to "which deployment is allowed." Closed providers offer business terms with no-training guarantees and regional hosting, which satisfies many compliance teams. When it does not, open-weight models running inside your own infrastructure become the answer regardless of any quality gap. Decide this before you build anything, because retrofitting compliance is far more expensive than designing for it.
Latency tiers. Match the model to the moment. Real-time interactions like autocomplete and live chat need fast, usually smaller models, because users abandon anything that feels sluggish. Interactive but tolerant flows, such as generating a draft the user asked for, can afford a stronger, slower model. Background jobs like nightly report generation can use the best model available because nobody is watching the spinner. Many products need all three tiers at once, which is another argument for the routing layer.
Should you fine-tune an LLM for your product?
Almost certainly not yet. Fine-tuning, meaning additional training of a model on your own examples, is the last resort, not the first move. Prompting improvements, better context, and few-shot examples, where you show the model two or three worked examples inside the prompt, close most quality gaps at a fraction of the cost. Fine-tuning adds a training pipeline, a dataset to maintain, and a model version to babysit, and it locks you to a base model right when you want the freedom to swap. Reach for it only when you have eval-backed proof that cheaper interventions have plateaued, and usually only on small models where the economics make sense.
The decision framework
Run these questions in order. They are the whole method.
- Does a hard constraint decide this for me? Privacy, compliance, or data residency requirements can eliminate whole families before quality even enters the discussion.
- Do I have an eval set built from real product inputs? If not, stop and build one. Nothing downstream is trustworthy without it.
- Have I proven the feature on a strong closed model? Prove capability first with the best available tool. If the feature fails there, no cheaper option would have saved it.
- Which of my calls are actually hard? Read your production logs. Segment by difficulty. Route the easy majority to the workhorse tier and keep the frontier model for the hard minority.
- Can I swap models in a day? If a model change touches more than one module and one config value, your abstraction is too thin or too tangled. Fix that before the next release cycle forces the issue.
- Have I treated cost as a product decision? Caching, context discipline, and output caps come before provider negotiations and long before fine-tuning.
The multi-model reality
One more expectation to set: mature products do not run on one model. A production system we would consider healthy typically uses a frontier model for its hardest generation task, a small model for routing and extraction, and sometimes an open-weight model for a privacy-bound workload, all behind the same thin abstraction. The question "which LLM should we use" quietly becomes "which LLM should we use for each job," and that reframing is most of the maturity curve. Teams that internalize it early stop having religious wars about providers and start having boring, eval-driven conversations about routing tables. Boring is what winning looks like here.
Frequently asked questions
Which is better for startups, OpenAI or Anthropic? For a new feature, the honest answer is that both sit in the same family with the same durable properties: strong capability, fast improvement, per-token pricing. Run your own eval set against current models from each and let the results decide. The gap between them on your specific task matters more than any general ranking, and it changes with every release.
Are open source LLMs good enough for production? Yes, for the right jobs. Open-weight models are proven in production for classification, extraction, and privacy-bound workloads, and at high volume their economics can be compelling. The caveat is that you own serving and reliability, which is a real engineering cost, and the hardest reasoning tasks have historically favored closed frontier models.
How much does it cost to add an LLM feature to a product? During validation, API costs are usually trivial next to engineering time, often tens or hundreds of dollars a month. At scale, cost depends far more on your architecture than your provider: caching, context discipline, output limits, and routing easy calls to cheap models routinely cut spend by large multiples. Budget for engineering the cost down, not just paying the bill.
Can I switch LLM providers later without rewriting my app? Yes, if you plan for it now. Keep every model call behind one internal module that owns prompts, model selection, and logging, and keep your eval set current so you can verify a replacement quickly. With that in place, swaps take a day. Without it, they become migration projects that nobody schedules.
Do I need to fine-tune a model for my use case? Probably not. Most quality gaps close with better prompts, better context, and a handful of worked examples in the prompt. Fine-tuning earns its keep only when evals prove those cheaper levers are exhausted, and it carries real ongoing maintenance cost. Treat it as the last resort the framework says it is.
Get the model decision built into your MVP
If you want the framework applied rather than just explained, this is what we do. Novek Labs is a digital product studio that builds MVPs for founders, including the eval sets, routing layers, and thin abstractions this post describes, so your AI feature ships fast without welding you to one provider. Talk to us about what you are building, and we will tell you honestly whether an LLM belongs in your v1 and which family it should come from.