Contents
Key takeawaysHow OCI billing worksSizing the commitmentMeters outside the compute countFinding idle spendSupport RewardsWhat our reviews foundAccount team lines and repliesTerms for the orderPreparing for renewalWhat to do nextFAQOCI bills against Universal Credits, a prepaid pool that forfeits what you do not use and charges overage on what you exceed. The size and shape of that commitment move more money than any instance you tune.
- The commitment penalizes both directions. Unused credits are forfeited at term end, and usage above the pool is invoiced monthly at the rate card in your order.
- Oversizing is the most common error. Commitments in our reviews were oversized 20 to 40 percent to reach a discount tier, then partly forfeited.
- Ramp the commitment. Migrations consume slowly at first, so a flat annual figure forfeits early year credits unless the order steps up by year.
- Normalize before you compare. One x86 OCPU equals two vCPUs, so an unconverted comparison makes OCI look about twice its real price.
- Defaults drive hidden meters. Flexible shape memory, the Balanced storage level and Autonomous Database autoscaling all bill outside the compute count.
- Clean the idle tail first. Orphaned volumes, stopped compute and unused reservations can be cut without changing any commercial term.
- Verify Support Rewards. Check the accrual rate, the eligible invoices and the saturation point against your own order.
How does OCI billing decide what you pay?
Most OCI spend is billed against Oracle Universal Credits, a prepaid pool that your services draw down at the hourly rates on your rate card. Credits not consumed by the end of the credit period are forfeited and nonrefundable. Usage above the pool is invoiced monthly as overage, at the rate card established in your order.
That structure means your bill is mostly set before anyone opens the console. Three decisions drive it: the purchase model, the size and shape of the commitment, and the meters your architecture happens to hit.
What each purchase model costs when the forecast is wrong
| Model | How you pay | Forecasting too high costs | Forecasting too low costs |
|---|---|---|---|
| Pay as you go | Metered, no commitment | Nothing | Nothing, but the highest unit rate throughout |
| Annual Universal Credits | A prepaid pool, drawn monthly | Forfeiture of the unused balance | Overage at the order rate card |
| Multi year commitment | Prepaid at a deeper tier | Forfeiture, repeated, on a forecast you cannot yet trust | Overage, plus a lost repricing at renewal |
A multi year commitment buys the best unit price with the most forecast risk, because a wrong first year number repeats every year until renewal.
Why the overage rate card has to be in writing
Oracle's billing guide says overage is billed according to the negotiated terms of your contract. If those terms point to list or pay as you go rates, growth above the pool is priced at a number you never negotiated. Have the order state that overage bills at your discounted rate card for the full term.
How to Negotiate Your Oracle SaaS Renewal: The Five Moves at the Table
How big should an OCI commitment be?
Size the commitment to a drawdown curve built from real consumption, never to a single annual figure. Consumption during a migration ramps up, while a flat commitment assumes even use from day one. Most programs consume little in the first two quarters and accelerate later, so a flat number forfeits part of the first year by construction.
A worked drawdown curve
Take a flat annual commitment that allows 25 percent per quarter, set against a migration that follows a normal curve. The surplus from the first half is only partly recovered when consumption picks up in the second half.
| Quarter | Commitment available to date | Consumed in quarter | Consumed to date | Unused balance |
|---|---|---|---|---|
| Q1 | 25 | 10 | 10 | 15 |
| Q2 | 50 | 18 | 28 | 22 |
| Q3 | 75 | 30 | 58 | 17 |
| Q4 | 100 | 32 | 90 | 10 forfeited |
The year ends at 90 percent consumed and 10 percent forfeited, paid for capacity that sat unused while the migration was still on its curve. On a hypothetical $1,200,000 commitment, that is $120,000 lost. A year one figure of $1,080,000, with the step up agreed in the same order, would have been fully drawn.
How the discount tier tempts you to oversize
Universal Credits discounts improve with commitment size, and the account team will show you the next tier. In the reviews we ran, annual commitments were oversized 20 to 40 percent to reach a headline discount tier, then partly forfeited at term end. A hypothetical example shows why the deeper discount often loses.
| Option | Commitment | Discount | Credits the workload burns | Forfeited | Total paid |
|---|---|---|---|---|---|
| A: sized to the curve | $1,500,000 | 40 percent | $1,500,000 | $0 | $1,500,000 |
| B: stretched to the next tier | $1,800,000 | 45 percent | $1,375,000 | $425,000 | $1,800,000 |
Option B is oversized by about 31 percent against its own burn and costs $300,000 more for the same workload. The extra 5 points of discount only pay off if consumption grows into the larger pool within the year.
Rules that keep the commitment inside the curve
- Use actual history. Model the curve from twelve months of actual usage.
- Count funded work only. Include workloads with a funded migration date. A roadmap item is not consumption.
- Keep a slice outside. Hold part of expected demand outside the commitment and let it run at the overage rate you negotiated.
- Prefer full use. Take the smaller discount you will fully use over the larger one partly forfeited.
- Price the top up now. Negotiate the rate for additional credits up front, because most growing programs need a top up before renewal.
OCI FinOps brief
Commitment sizing, drawdown modeling and the renewal sequence for Oracle Cloud Infrastructure.
Get the white paper →Which OCI meters cost money the compute count never shows?
Four meters bill outside the compute count: the OCPU unit itself, memory on flexible shapes, block storage performance, and Autonomous Database autoscaling. Each is set by a default or a template, which is why it goes unnoticed.
The OCPU is not a vCPU
One OCPU on x86 (AMD and Intel) is a physical core with two execution threads, equal to two vCPUs. Compare OCPU rates against AWS or Azure vCPU rates without converting, and OCI looks roughly twice as expensive as it is. An AWS instance with 16 vCPUs corresponds to 8 OCPUs.
Arm A1 shapes run one to one, one OCPU per vCPU, which changes the comparison again. The newer AmpereOne A2 and A4 shapes count one OCPU as two vCPUs, like x86. Normalize the units per shape family before you benchmark anything.
Memory on flexible shapes bills separately
Flexible shapes meter memory per gigabyte hour, apart from the OCPU charge, at 1 to 64 gigabytes per OCPU. A generous template ratio bills across the whole fleet without showing in any OCPU count.
Say 100 instances of 4 OCPUs each were built at 16 gigabytes per OCPU where the workload needs 8. That is 3,200 gigabytes billed every hour for memory the workload never touches.
Block storage bills performance apart from capacity
Block volumes bill performance in volume performance units (VPUs) per gigabyte, independent of capacity. Balanced, the default for new volumes, carries 10 VPUs per gigabyte. Lower Cost carries zero, Higher Performance 20, and Ultra High Performance 30 to 120.
The level can be changed on live volumes without recreating them, so moving nonproduction, archive and log volumes to Lower Cost is free to do. Detached volume auto tune goes further once you enable it on a block or boot volume. It drops the volume to Lower Cost 14 days after detach and restores the default level on reattach.
Autonomous Database autoscaling runs to three times base
Compute auto scaling on Autonomous Database Serverless is on by default when you provision. The database can then use, and bill for, up to three times its base ECPU or OCPU count. Put that ceiling in the forecast and give it a named owner.
Where does idle OCI spend hide, and how do you find it?
In our reviews, idle and orphaned resources accounted for 8 to 15 percent of the bill. Most of it was block volumes left behind, stopped compute, and capacity reservations no one had deleted. All of it is recoverable without touching a single commercial term.
| Resource | What still bills | Where to find it |
|---|---|---|
| Unattached block and boot volumes | Capacity plus VPUs at the volume's level | Cloud Advisor: Delete Unattached Block Volumes and Delete Unattached Boot Volumes |
| Stopped instances | Boot volume always; the full instance on Dense I/O, HPC, optimized bare metal and GPU shapes other than the A10 series | Compute instance list filtered to Stopped, cross checked with Cost Analysis |
| Idle running instances | OCPU and memory, in full | Cloud Advisor: Delete Idle Compute Instances and Downsize Underutilized Compute Instances |
| Capacity reservations | Unused reserved capacity at 85 percent of the rate | Compute capacity reservations, compared with instances placed against them |
Stopped is not the same as free
On standard shapes, stopping an instance pauses compute billing, but the boot volume keeps billing. Shapes with local NVMe storage or GPUs keep billing while stopped, because those resources stay reserved for you. The A10 series is the only GPU exception.
An instance shut down from inside the operating system keeps billing until it is also stopped from the Console or API.
Capacity reservations bill whether or not you use them
Instances placed against a reservation bill at 100 percent. Reserved capacity with nothing running on it bills at 85 percent until the reservation is deleted. Reservations made for a migration weekend or a peak season are the ones most often forgotten.
How do Support Rewards change the OCI cost picture?
Support Rewards give you credit against Oracle technology license support for each eligible dollar you consume on OCI under a Universal Credits order. The rate is an order level term: 25 cents per eligible dollar, or 33 cents with an active ULA. The check takes an afternoon, and several customers we reviewed had never run it.
- Eligible invoices. Rewards offset technology license support only. Applications support, Oracle Linux, and subscription products such as Java and some MySQL offerings are not eligible. Some were counting rewards against invoices that never qualified.
- Eligible consumption. Pay as you go accounts earn nothing, and neither do third party offerings such as VMware, Microsoft or Oracle Cloud Marketplace services.
- Expiry. Rewards expire 12 months after they are deposited in your rewards account.
- Taxes. Rewards pay only the pretax invoice amount.
The saturation point
At 25 cents, rewards cover the whole eligible support invoice once OCI spend reaches about four times that invoice. Beyond it, extra spend earns credit you cannot apply, and it expires unused.
Say your eligible technology support invoice is $800,000. Rewards saturate at $3,200,000 of OCI spend, or about $2.4 million with a ULA at 33 cents. The full calculation is in our Support Rewards guide for 2026.
What have we seen in OCI cost reviews in 2024 and 2025?
The Redress team and I ran roughly 30 to 40 OCI cost reviews between 2024 and 2025. In almost all of them, the commitment was the wrong size or the wrong shape. The architecture was rarely the problem. Oversized commitments were the most common finding, and the idle tail usually paid for the review on its own.
Why we do not start an OCI cost review with rightsizing
The usual advice is to begin in the console by rightsizing instances and cleaning up storage. We run it the other way around, because every console saving lands inside a commitment the order has already fixed. If the pool is oversized, a smaller bill only raises the forfeiture at term end.
The sequence that worked in our reviews starts commercial and ends technical.
- Check that the overage rate card is your discounted one.
- Check the Support Rewards accrual rate and eligibility against the order.
- Model the drawdown against the commitment, quarter by quarter.
- Only then walk the meters: memory ratios, performance tiers, and reservations.
A deeper discount on a commitment you cannot draw is a worse deal than a smaller one you will fully use. Applied at signature, that one rule would have saved more than every instance tuning session in our files combined.
What will Oracle's account team say, and how should you answer?
Expect the conversation to push the commitment up and the ramp out. These are the lines we hear most often, with replies that hold up.
- "The next tier gets you 5 more points of discount." Show your drawdown curve. Ask for that discount on the commitment you can consume, or for a ramp that reaches the tier in year two.
- "Ramped commitments are not standard at this size." Ask for annual amounts stated by year in the order. A flat figure against a back loaded migration forfeits money by design, and you can show the quarter where it happens.
- "Overage is at your contract rates, so growth is covered." Ask to see the line in the order that sets the overage rate card. If it points to list or pay as you go pricing, growth is not covered.
- "We can look at your unused credits if you renew at a higher number." Accept only a written term, and only if the higher number still fits the curve. Otherwise it turns this year's forfeiture into next year's.
- "Support Rewards will pay for your support anyway." Run the saturation calculation with your own eligible invoice before you let rewards justify a larger commitment.
Which terms should you get written into the OCI order?
Ask for these terms before signature. Each one is far harder to add mid term, when the pool is already paid.
- Overage at the discounted rate card. Growth above the pool then costs what you negotiated, for the full term.
- Annual commitment amounts by year. A lower first year or defined annual steps keeps the commitment in line with the migration.
- A pre agreed top up rate. Additional credits bought mid term should carry at least your current discount.
- The Support Rewards rate and scope. State the accrual rate and list the support contracts the rewards can pay, by contract number.
- Unit price holds. Fix the rate card for the services you run, so a price change does not burn the pool faster.
- Renewal sizing on trailing consumption. Tie the next commitment to what you actually drew over the term.
How should you prepare for the OCI commitment renewal?
The renewal is where a cost review turns into money. Your consumption history replaces the forecast, and the drawdown shape justifies the ramp. Clean the idle tail before the baseline is taken, then resize the commitment to the curve you can prove rather than the tier the discount suggested.
| Before renewal | What to do |
|---|---|
| 12 months | Pull cost reports by service and compartment. Start tracking the drawdown against the commitment every quarter. |
| 6 months | Sweep the idle tail and fix memory ratios and volume performance levels, so the baseline reflects real demand. |
| 3 months | Build the new curve from actual history plus funded migrations. Run the Support Rewards saturation check. Draft the order terms you need. |
| 1 month | Compare Oracle's proposal line by line against your curve and terms. Refuse a tier that sits above the curve. |
The wider operating rhythm for cost ownership, tagging and reporting is set out in our OCI FinOps guide. Database workloads also carry a separate choice between bring your own license and license included, covered in our guide to Oracle Database licensing in cloud environments.
What to do next
- Read the overage clause. Confirm in writing that overage bills at your discounted rate card, or growth is priced at a number you never negotiated.
- Size to a drawdown curve. Ramp the commitment in the order, count funded migrations only, and agree the top up rate before you need it.
- Sweep the idle tail every quarter. Delete orphaned volumes, stopped compute you no longer need, and capacity reservations with nothing placed on them.
- Check Support Rewards against the order. Confirm the accrual rate, the eligible invoices and the saturation point for your support spend.
- Normalize before any benchmark. Convert OCPUs to vCPUs, then check memory ratios and storage performance levels across the fleet.
- Get a second view. Our Oracle practice runs the review with you, from the order document to the console.
Frequently asked questions
How does OCI billing work?
You sign an order for a pool of credits, usually for 12 months or more, and billing starts on the day the activation email arrives unless delayed provisioning was contracted. Each service then burns credits hourly at the prices on your rate card. Track that burn against the commitment every month, because the balance left at term end does not come back.
How big should an OCI commitment be?
Big enough to be fully consumed in a slow year. Start from what you actually drew over the last twelve months, add only migrations that have a funded date, and commit at the low end of that range. Leave expected growth outside the pool at a negotiated overage rate, and agree the top up price before signing.
Is OCI cheaper than AWS or Azure?
It can be, but only a normalized comparison will tell you. Convert x86 OCPUs to two vCPUs each, treat Arm A1 at one to one, and add the separate memory charge on flexible shapes. Then compare the whole bill for the same workload, including storage performance.
Where does OCI spend hide?
Mostly in resources no one is using and in defaults no one changed. In our reviews, orphaned volumes, stopped compute and forgotten capacity reservations made up 8 to 15 percent of the bill. Generous memory templates, Balanced volumes on archive data and uncapped Autonomous Database scaling add more on top.
How do OCI Support Rewards interact with cost optimization?
Below the saturation point, every eligible OCI dollar you cut also cuts your rewards, so the net saving on a dollar is 75 cents at the 25 cent rate and 67 cents with a ULA. Above saturation, cuts cost you nothing in rewards. Know which side of the line you are on before you set savings targets.
What happens if you overshoot or undershoot an OCI commitment?
Undershoot, and the unused credits are forfeited at term end with no refund. Overshoot, and Oracle invoices the excess monthly in arrears at the rate card in your order, so check that card carries your discount for the whole term. Undershooting after stretching for a discount tier was the most frequent problem we found.
Do stopped OCI instances still cost money?
Often, yes. Standard shapes pause compute billing when stopped, but their boot volumes keep billing. Dense I/O and other shapes with local NVMe drives, and most GPU shapes, bill in full while stopped. To stop all charges, terminate the instance and delete any volumes you no longer need.