Switch to a better, cheaper model without your users noticing
Run your real prompt on your current model and a candidate (Claude, GPT, Gemini and more) side by side, and see the real cost per result for each.
Free. Runs in your browser. No sign-up.
Paste the prompt your app sends and some real requests, pick the model you use now and one you might switch to, run both, then mark which results worked.
Models
The model your app uses now.
List price $2.50 in and $10 out per 1M tokens. Price checked 12 Nov 2026; unchanged since we started tracking it.
OpenAI shuts down gpt-4o in its API on January 14, 2027 and names gpt-6-luna as the replacement. Test the switch before then. Deprecations page (opens in a new tab)
The model you're thinking of switching to.
List price $2 in and $10 out per 1M tokens. Price checked 12 Nov 2026; unchanged since we started tracking it.
Prices in the list are $ per 1M input / output tokens. Call each model through its provider's own API with your own key, or through OpenRouter if that's what you use.
API keys
Your key goes from this browser straight to api.openai.com with each call, and nowhere else: never to our server. Use a key with a spending limit. Create a key (opens in a new tab)
Your key goes from this browser straight to api.anthropic.com with each call, and nowhere else: never to our server. Use a key with a spending limit. Create a key (opens in a new tab)
Sent unchanged to both models. Leave it blank if your app doesn't use one.
Add 1 to 20 real requests from your app, including a few that went badly before.
Advanced
Temperature and max tokens
Leave blank to use each model's default. Whatever you set goes to both models. Use the values your app sends today, or the comparison isn't fair.
Paste your OpenAI API key above to run. Until then you can load the example and look around.
Switch without your users noticing
A newer model is often better and cheaper per token, but your users only see your prompt applied to their requests. A model that ranks higher on a leaderboard can still break your output format, ignore a rule you rely on or change its voice. The only way to find out is to run the prompt you ship on requests you've actually received, and read the two results side by side.
What to look for
- Format. Does the new model keep your structure: the JSON keys of an invoice extraction, the label set of a classifier, a hand-over marker your code looks for? Code that reads the result breaks on small changes.
- Rules. Does it still refuse to promise refunds, or stick to the facts it was given? Test the requests where your prompt forbids something.
- Who it fails for. A model that's fine in English can slip in Spanish, or on long or unusual inputs. Include the kinds of request your users really send.
- Tone and length. Users notice a change of voice before a change of quality, and longer isn't better if your interface expects short.
- Cost and latency. Cost per call depends on how much a model writes as well as its price per token, so a model that's cheaper per token but twice as wordy can cost more.
Mark what worked, then compare the real cost
Mark each result as worked or didn't work, the way a user would see it. The totals then show the share that worked first time and the real cost per result: what you pay for each result that worked, counting the failed tries. Example: model A costs $0.004 a call and 9 in 10 results work, so each one that worked costs about $0.0044. Model B is half the price per call, but if only 4 in 10 work, each one that worked costs $0.005. The cheaper model costs more per result that worked, before you count the customers who had to ask again.
How many inputs you need
Ten to twenty real inputs are enough to spot problems: a broken format, a refusal, a shift in tone. Include a few requests that went badly before. They aren't enough to show that one model works first time more often, because rates are noisy: going from 60% to 70% takes about 360 results per model to show. The A/B test sample size calculator works out the number for your own rates. Use this test to decide whether a model is worth trying with real users, then measure what works for them.
GPT-4o and GPT-4.1 leave OpenAI's API on January 14, 2027
OpenAI's deprecations page (opens in a new tab) lists January 14, 2027 as the API shutdown date for GPT-4o, GPT-4o mini, GPT-4.1 and GPT-4.1 mini, and names GPT-6 Luna as their replacement. That's why model A starts as GPT-4o here. Try the named replacement and one or two models from other providers, since the cheapest model that works for your prompt may not come from the same company. The model shutdown calendar lists the other dates.
Test prompt changes the same way
- Set model A and model B to the same model and run your current prompt. The differences you see are the run-to-run variation that any real change has to beat.
- Download the test set, then run the same inputs again with the new prompt and download that too. The
system_prompt_hashfield tells the two files apart. - Save the inputs. Run them again at every model or prompt change, so each change is checked against the same cases.
Questions
Where does my API key go?
Your key stays in this browser tab and is sent only to the provider you pick: OpenAI, Anthropic, Google, xAI, Mistral, DeepSeek or OpenRouter. It never reaches our servers, and closing the tab forgets it.
Why use my own requests instead of a benchmark?
Benchmarks measure average tasks. Your users care about your prompt on their requests, and a model that wins a leaderboard can still fail on those.
How many requests should I test?
Start with 10 to 20 real ones, including a few that went badly before. Proving that one model's results work first time more often takes far more, which the A/B sample size calculator works out.
What is real cost per result?
What you pay for each result that worked, counting the tries that didn't. Mark results as worked or didn't work and the tool divides each model's cost per call by its share that worked, so a cheap model that often fails can turn out to cost more.
Can I link to a comparison of two models?
Yes. Add from and to with model ids written the OpenRouter way, for example /tools/model-switch-test?from=openai/gpt-4o&to=openai/gpt-6-luna, and both models are picked when the page opens. Each one starts on its provider's own API, and you can switch to OpenRouter.
What does it cost?
Only what your provider charges your key for the calls you run. The tool shows the cost of each call.