Your Fine-Tuned Model Can Cost $5,840 a Month Before Use

One supervised fine-tuning run costs $6 to $150. Keeping the model deployed costs $0 to $5,840 a month, and OpenAI's tuned models shut down January 14, 2027.

By Rajesh Beri·November 8, 2026·16 min read
Share:
A single server rack in a dark, empty data-centre aisle with a parking meter bolted to its door, the meter's display glowing and its coin slot worn, while no one stands nearby.

Illustration generated using AI

If you budgeted a fine-tune by its training job, you budgeted the smallest line on the bill. One 15M-token supervised run costs $6 to $150 across the platforms below. Keeping the result deployed costs $0 to $5,840 a month before the first request arrives, and that fixed fee decides which platform wins.

Try prompting, caching and retrieval first. If you still need a tuned model, serve it on per-token terms. Under about 1M requests a month, use Fireworks AI serverless LoRA if its one supported base model fits, or gpt-oss-20b on Amazon Bedrock. Above about 3.4M requests a month, gpt-oss-20b on Azure becomes cheaper than Bedrock. Pay Azure's $1.70-an-hour GPT-4.1-mini fee only if the model has to stay in the OpenAI family. The loser is Bedrock Provisioned Throughput for a custom model: $15,461 a month for one Llama 2 model unit on a one-month term. OpenAI direct is already closed to new buyers.

The workload is 1,000 input and 200 output tokens per request, with four 15M-token retraining runs a year (5,000 examples, 1,000 tokens each, three epochs). Monthly totals include serving, fixed fees and one-third of a training run. Prices were checked on November 8, 2026.

Path (model priced) One training run Per 1M tokens, in / out Fee at zero traffic, monthly 100K req/mo 1M req/mo 10M req/mo
Fireworks serverless LoRA (GLM 5.3 Flash) $45 to $150 $0.15 / $0.50 $0 $75 $300 $2,550
Bedrock per-token (gpt-oss-20b, reinforcement) $320 at 4 hours $0.09 / $0.39 $1.95 storage $125 $277 $1,789
Azure (gpt-oss-20b, Global) $54 $0.07 / $0.30 $219 $250 $367 $1,537
Vertex tuned (Gemini 3.5 Flash-Lite, global) $45 $0.30 / $2.50 None listed $95 $815 $8,015
OpenAI direct (gpt-4.1-mini), closed to new users $75 $0.80 / $3.20 $0 $169 $1,465 $14,425
Azure (gpt-4.1-mini, Global) $75 $0.40 / $1.60 $1,241 $1,338 $1,986 $8,466
Together dedicated H100 (gpt-oss-20B LoRA) $6 None, GPU billed $4,008 per replica $4,010 $4,010 $8,017
Fireworks dedicated H100 (gpt-oss-20b LoRA) $45 None, GPU billed $5,840 per replica if kept warm $5,855 $5,855 $11,695

These models differ in capability, so the table prices each contract and leaves the quality comparison to your eval set. The Fireworks serverless row uses the top $10 training tier as a worst case because Fireworks does not list GLM 5.3 Flash's size tier. The dedicated rows assume one replica through 1M requests and two at 10M, which is our assumption and needs a load test on your traffic.


What Each Platform Charges to Train

Training is priced per token nearly everywhere, and it stays cheap at any realistic dataset size. Supervised fine-tuning teaches a model from example prompts and desired responses, and you pay for dataset tokens multiplied by epochs.

OpenAI's pricing page lists $25 per 1M training tokens for gpt-4.1 and gpt-4o-2024-08-06, $5 for gpt-4.1-mini and $3 for gpt-4o-mini. Azure OpenAI, now sold through Microsoft Foundry, bills gpt-4.1-mini at $5.00 per 1M globally and $5.50 regionally, and gpt-oss-20b at $3.60 per 1M.

Google Vertex AI is the hardest to confirm. Google's tuning table was indexed in search at $0.003 per 1,000 training tokens for Gemini 3.5 Flash-Lite, but the page would not render in our fetch on November 8, so confirm the row in your console.

Amazon Bedrock's pricing page lists reinforcement fine-tuning for gpt-oss-20b and Qwen3 32B at $80 per training hour. Reinforcement fine-tuning scores generated answers with a grader instead of learning from fixed examples, so its cost depends on hours, and our four-hour run is an assumption. A two-hour job would cut the monthly training line from $107 to $53 and move the Azure crossover from about 3.4M requests a month to about 4.8M. The same page renders Nova and Llama 3.3 customization rates as empty headers, so we are not quoting them.

Together AI lists gpt-oss-20B at $0.40 per 1M and Llama 3.3 70B at $2.03, with a job minimum of $4 for both. Its page shows two price tables without labelling which is LoRA and which is full training, and we used the lower. Fireworks charges $0.50 per 1M for LoRA up to 16B parameters, $3.00 from 16.1B to 80B, $6.00 to 300B and $10.00 above that. LoRA (low-rank adaptation) trains a small adapter that sits on top of an unchanged base model.


OpenAI Direct Ends on January 14, 2027

New organizations cannot fine-tune on OpenAI at all, and models already tuned there have 67 days of inference left. OpenAI's deprecations page closed job creation to organizations that had never fine-tuned on May 7, 2026, extended that on July 2 to those without fine-tuned inference in the prior 60 days, and ends it for active customers on January 6, 2027.

The same page sets January 14, 2027 as the shutdown date for gpt-4.1, gpt-4.1-mini, gpt-4o-2024-08-06 and gpt-4o-mini, and says fine-tuned versions follow their base models. A December retrain on OpenAI still stops serving on January 14, so spend that time moving the workload.

Until then, OpenAI remains the simplest contract on this page: a token premium of $0.40 input and $1.60 output over base gpt-4.1-mini, with no hosting fee.


Azure's Hosting Fee Is the Line Most Budgets Miss

A deployed fine-tuned GPT-4.1-mini on Azure costs $1.70 an hour whether or not anyone calls it, which is $1,241 across a 730-hour month. Azure's Retail Prices API shows the hosting meter at $1.70 per hour for both global and regional deployments, alongside tuned token rates of $0.40 input and $1.60 output globally, or $0.44 and $1.76 regionally. That is the same token price as the base model, which Microsoft's cost guide confirms: Standard and Global Standard deployments pay base-model rates plus the hourly fee.

The trade against OpenAI direct is simple arithmetic. Azure saves $720 per 1M requests on this workload and charges $1,241 to stay deployed, so it breaks even at about 1.7M requests a month. Below that, the fee is the larger cost.

Customers have been finding this line on invoices since at least January 2025. In a Microsoft Q&A thread from that month, one customer asked, "Is there anyway to pause this while we are not using it so we do not incur the $1.7 per hour cost?" A Microsoft external staff moderator answered that Azure OpenAI "does not provide a direct 'pause' feature," and that the workaround is deleting the deployment and redeploying. Another commenter wrote: "With OpenAI, there's no flat cost for hosting a fine-tuned model."

Open-weight models on the same platform are far cheaper to keep. Azure's meters show gpt-oss-20b hosting at $0.30 an hour, or $219 a month, with tokens at $0.07 input and $0.30 output. Microsoft's fine-tuning overview limits that model's serverless deployment to Global Standard, so check it against your residency rules.


Bedrock Has Two Serving Contracts at Very Different Prices

Bedrock can serve a custom model per token or on hourly committed capacity, depending on the base model, and at 1M requests a month the two contracts can differ by more than 50x. AWS's Provisioned Throughput page still says, "If you customized a model, you must purchase Provisioned Throughput to be able to use it." That sentence no longer covers every model.

Per-token is the contract to look for. AWS's on-demand deployment page lets you serve customized Nova Micro, Lite, 2 Lite and Pro models on demand in US East (N. Virginia), and Meta Llama 3.3 70B Instruct in US West (Oregon), if they were customized on or after July 16, 2025. AWS says on-demand inference for custom Nova models is priced the same as base Nova inference. The reinforcement-tuned gpt-oss-20b and Qwen3 32B rows on Bedrock's pricing page also bill per token ($0.09 / $0.39 and $0.20 / $0.78), plus $1.95 a month to store each trained model.

Provisioned Throughput is the expensive path. The same pricing page shows Llama 2 customization serving at $23.50 per model unit per hour with no commitment, $21.18 on a one-month term and $13.08 on six months. One model unit on a one-month term is $15,461 a month, about 56x the $277 per-token gpt-oss-20b row at 1M requests, but those are different base models and AWS decides which contract each one can use. AWS adds that you "can't delete the Provisioned Throughput" until a committed term ends.

Check the on-demand list before you sign anything, since a team reading only the Provisioned Throughput page will buy capacity it may not need.


Vertex Charges 1.5x on Non-Global Gemini 3 Tuned Endpoints

Google says there is no cost for the endpoint of a tuned Gemini model, and from Gemini 3 onward tuned prediction costs 1.5x the base rate in non-global regions and the base rate in the global region. The regional rule is a footnote on Google's pricing page, which we read through its search index on November 8. CloudZero's review of Vertex pricing, last updated September 30, 2026, reports the 1.5x without the regional split and says Gemini 2.5 and earlier stayed at base rates. Google's deployment page still says tuned models bill at the foundation model's rate, with no Gemini 3 exception, so confirm the non-global rate before you commit.

Base Gemini 3.5 Flash-Lite is $0.30 input and $2.50 output per 1M tokens on Google's Gemini API page, so we priced a tuned global endpoint at those rates. Getting that rate takes an extra step: Gemini 3 and later tune on the us or eu multi-region endpoints, and you have to copy the model to global and deploy it there. The global region does not support customer-managed encryption keys and stores tuned adapters in the US. Non-global endpoints start from a higher list price ($0.33 input for this model) before the 1.5x. Google's supervised tuning docs list Gemini 3.5 Flash-Lite, 3.5 Flash, 3.1 Flash-Lite and three 2.5 models as tunable.

The multiplier hurts most on long output in non-global regions. At 200 output tokens, output is 62.5% of the Vertex bill, and a tuned global endpoint costs more than Azure's GPT-4.1-mini above about 15.6M requests a month once Azure's hosting fee is spread out.


Together and Fireworks Set the Open-Weight Floor

Open-weight LoRA is the cheapest training anywhere and the most expensive serving at low traffic, unless you can use Fireworks' single serverless base. Together's documentation is explicit: "Serverless LoRA inference (including Serverless Multi-LoRA) has been discontinued," and adapters now run on dedicated endpoints.

Those endpoints bill per minute per running replica, even when idle. An HGX H100 is $5.49 per GPU hour, or $4,008 a month running constantly. Together's support article puts it plainly: "you're charged per-minute hosting fees regardless of whether you're making requests to the model."

In preview, Fireworks lets you serve LoRA adapters on serverless and pay per token, at the base rate of $0.15 input and $0.50 output, with no charge for loading an adapter or leaving it idle. The catch is scope: GLM 5.3 Flash is the only supported base, you can load three adapters per base model at a time, and adapter traffic has its own rate limit at the GLM 5.3 Flash quota. Every other base needs a dedicated deployment at $8.00 per H100 hour.

Dedicated capacity is a volume purchase. Azure's gpt-oss-20b total bill only reaches the cost of one Together H100 at about 29M requests a month, and one GPU may not carry that load. Run dedicated when you need a base model nobody serves per token, or a latency target shared capacity cannot hit.


What Retraining Costs When the Base Model Retires

The token cost of a forced retrain is under $150 on most of these paths, and the migration labor around it costs far more.

Microsoft's lifecycle page lists fine-tuned gpt-4.1-mini deployments as retiring on October 14, 2027, with training ending no earlier than April 14, 2027 for existing customers. Base gpt-4.1-mini inference retires April 14, 2027, and Foundry's standard GA lifecycle is 18 months.

Google's model versions page listed October 20, 2026 as the retirement of Gemini 2.5 Flash, Pro and Flash-Lite, and the Gemini API pricing page says requests to 2.5 Flash route to 3.5 Flash-Lite from December 1, 2026. Neither page says what happens to a tuned 2.5 model. A developer asked exactly that on Google's forum in January 2026, and the thread closed without a reply. Gemini 3.5 Flash-Lite is listed through July 21, 2027 or later, and moving from a 2.5 tune to a 3.x tune adds the 1.5x premium on non-global endpoints.

Budget the human cost separately. Assume 40 engineer-hours at $120 fully loaded for a regression run and cutover (our estimate): $4,800 per migration, or about $267 a month across Azure's 18-month cycle. At 100K requests, that alone is more than most token bills in the table. An Azure cutover also runs a second deployment during validation, and two weeks of that second $1.70 meter is $571.


How to Stop Paying for an Idle Deployment

Delete what is not serving traffic, because most of these platforms keep billing until you do.

On Azure, Microsoft deletes a deployment after 15 days of inactivity, and an idle gpt-4.1-mini deployment has billed $612 by then. The custom model survives deletion and stored models cost nothing, so delete the deployment and redeploy. For evaluation only, the Developer deployment type has no hourly fee, but it has no SLA or data-residency guarantee and is removed after 24 hours.

On Together, scale to zero or delete the endpoint, since billing stops when the replica does. On Fireworks, idle deployments scale to zero after one hour by default, so confirm you have not overridden it. On Bedrock, delete no-commitment Provisioned Throughput, and move off committed capacity at term end. A dedicated GPU left on for a 220-hour business month costs $1,208 on Together and $1,760 on Fireworks, instead of $4,008 and $5,840.


Who Should Not Fine-Tune at All

If the problem is facts, try prompts and retrieval first, because the evidence that fine-tuning can teach new facts is weak. FineTuneBench, a 2024 Stanford study of commercial fine-tuning APIs on GPT-4o, GPT-4o mini, GPT-3.5 Turbo and Gemini 1.5, measured 37% average generalization accuracy on new information and 19% on updating facts the model already held. Most of those models are older than the ones priced above, and we found no replication on newer ones. Microsoft's own overview says fine-tuning "doesn't replace retrieval for current information."

Tuning pays for repeatable behavior: a fixed schema, tool selection, classification, or a short prompt at very high volume. AWS's Nova walkthrough reports an intent classifier rising from 41.4% to 97% accuracy on the ATIS dataset, which is a vendor's best case on a narrow task.

Do these first, in order: run automated prompt optimization, put the stable prefix behind prompt caching, then add retrieval for anything that changes. We ran the full fine-tuning versus RAG math separately. Skip fine-tuning if you lack a few thousand labeled examples and a held-out eval set, since you will not be able to tell whether the run helped.


Who Should Not Pick Each Option

Each platform has a buyer it fails, and most of them are low-traffic buyers.

Skip Azure GPT-4.1-mini if you serve under about 1.7M requests a month or need the model past October 2027 without planning a move. Skip Azure gpt-oss-20b if your residency rules forbid Global Standard. Skip OpenAI direct if you are a new customer, and if you are an existing one, do not start a new project there.

Skip Vertex tuned endpoints in non-global regions if your outputs are long, since output tokens carry the 1.5x multiplier, or if you cannot confirm the tuning row and the multiplier in your own contract. Skip Bedrock Provisioned Throughput for a custom model unless on-demand does not cover your base model and your traffic is sustained and predictable.

Skip Together dedicated endpoints below roughly 1M requests a month unless you schedule them off outside working hours. Skip Fireworks serverless LoRA if you need any base model other than GLM 5.3 Flash or more than three adapters per base model, and skip Fireworks dedicated for the same reason as Together.


The Criteria That Predict Regret

Fixed monthly fee, retirement date and whether your base model has a per-token path predict regret better than the training rate does. Three questions change the answer.

If traffic is under 1M requests a month, the fixed fee dominates and per-token serving wins. If traffic is above about 3.4M requests, Azure's gpt-oss-20b fee is spread thin enough to beat Bedrock's token premium on this workload. If you need data residency, the Global-only serverless options drop out and regional Azure at $0.44 / $1.76 plus $1.70 an hour, or a dedicated endpoint, comes back.

Retirement matters most for closed models, since you cannot keep the weights. Open-weight LoRA adapters can move between hosts, as Together's checkpoint download allows, while a tuned GPT-4.1-mini dies with its Azure retirement date.


What to Do in the Next 90 Days

This Week:

  1. Search your Azure Cost Management export for ft hosting meters and your Together and Fireworks dashboards for running replicas. Delete anything that served no traffic in the last seven days.
  2. If you run a tuned model on OpenAI direct, choose the replacement now. January 14, 2027 is the shutdown date and a December retrain does not move it.
  3. Pull your real input and output token counts per request from gateway logs and rerun the table with them.

This Month:

  1. Build a 500-item held-out eval set and test your best prompt, with caching, against it before you train anything.
  2. Compare candidates on Azure's no-fee Developer tier, Bedrock on-demand and Fireworks serverless, using the same eval set.

Before Q1 Close:

  1. Add the retirement dates for your base model to the team calendar with a six-month lead: April 14 and October 14, 2027 on Azure, and July 21, 2027 or later for Gemini 3.5 Flash-Lite.
  2. Budget one forced migration per model every 18 months, including a parallel deployment during cutover.

The Bottom Line

The training job is the part of this purchase you can defend in one meeting, and it is rarely the part that hurts. Cloud buyers learned this with reserved instances that outlived the workload, and tuned models repeat it with an hourly meter attached to a deployment nobody remembers creating. Open-weight per-token paths keep the fixed cost near zero, Azure's GPT-4.1-mini works only at volume, and every closed model you tune has a retirement date you do not control.

Find your ft hosting meter and delete every deployment with no traffic this week.

Continue Reading

Share:

Frequently Asked Questions

How much does it cost to host a fine-tuned model on Azure OpenAI?

Azure's Retail Prices API listed $1.70 per hour for a deployed fine-tuned gpt-4.1-mini on November 8, 2026, or about $1,241 for a 730-hour month, on top of per-token charges. The fee applies whether or not the deployment receives traffic.

Can I still fine-tune models on OpenAI?

New organizations cannot. OpenAI's deprecations page says active customers lose job creation on January 6, 2027, and gpt-4.1, gpt-4.1-mini, gpt-4o-2024-08-06 and gpt-4o-mini shut down on January 14, 2027, with fine-tuned versions following their base models.

Does a fine-tuned model on Amazon Bedrock require Provisioned Throughput?

Not always. AWS documents on-demand deployment for customized Nova Micro, Lite, 2 Lite and Pro models in US East (N. Virginia), and Llama 3.3 70B Instruct in US West (Oregon), if customized on or after July 16, 2025. Other custom models may still need hourly Provisioned Throughput.

Do idle fine-tuned deployments still bill?

On Azure and Together, yes: Azure bills its hourly hosting fee until the deployment is removed, and Together bills per minute per running replica. Fireworks serverless LoRA has no idle charge, and Fireworks dedicated deployments scale to zero after one hour by default.

When should I avoid fine-tuning and use prompting or retrieval instead?

Avoid it when the problem is facts that change. In a 2024 test of older models, FineTuneBench measured 37% average generalization on new information and 19% on updated facts. Fine-tuning suits repeatable behavior like output schemas, classification or tool selection, and only with a held-out eval set.

Newsletter

More on AI ROI & Cost, every Sunday

The week's enterprise AI news, AI ROI & Cost included, in one Sunday email.

Weekly, free. Unsubscribe any time. Privacy

Latest Articles

View All →