Compute gets the attention in every OCI pricing conversation, and storage gets a single row in the spreadsheet. That is usually a mistake. Storage is the one cost line that grows on its own, because data accumulates whether or not anyone provisions anything, and it is the line where tiering decisions made once at migration time keep paying or keep costing for years. OCI's storage pricing is unusually clean by cloud standards: one global price list, a small number of tiers, and rates that sit meaningfully below the AWS and Azure equivalents. This article walks through what each tier costs, where the real money hides, and how to keep a growing estate on the cheapest tier that still meets its performance and recovery needs.
This article is part of our complete guide to OCI pricing and TCO. It pairs with OCI pricing explained for the wider billing model and with hidden costs on OCI for the storage lines that calculators tend to miss.
The OCI storage portfolio at a glance
OCI offers five storage services that matter for cost planning: block volumes for instance disks, object storage for unstructured data, archive storage for cold retention, file storage for shared POSIX file systems, and boot volumes, which are block volumes wearing a different name. The table below shows the list rates that apply in most commercial regions. One of OCI's quiet advantages is that the price list is global, so the rate in Singapore is the rate in Frankfurt is the rate in Ashburn, which removes a whole class of regional arbitrage spreadsheet work that AWS and Azure planning requires.
| Storage service | List price, per GB per month | What it is for | Watch out for |
|---|---|---|---|
| Block volume, capacity | Around $0.0255 | Instance disks, databases, anything needing low latency | Performance units billed on top |
| Block volume, performance | Around $0.0017 per VPU | Dial from cost optimized to ultra high performance | Balanced tier adds 10 VPUs, roughly $0.017 |
| Object storage, standard | Around $0.0255 | Hot unstructured data, backups in active use | Request charges above the free allowance |
| Object storage, infrequent access | Around $0.01 | Data read a few times a year | Retrieval fee per GB and minimum retention |
| Archive storage | Around $0.0026 | Compliance retention, long term cold data | Restore takes time, 90 day minimum |
| File storage | Around $0.30 | Shared file systems across instances | An order of magnitude above object storage |
Block volume pricing: capacity plus performance
Block volumes bill in two parts. The capacity charge is around $0.0255 per GB per month, and the performance charge is set by volume performance units, or VPUs, at around $0.0017 per VPU per GB per month. A volume at zero VPUs is the lower cost tier, suitable for dev and test or anything that tolerates modest throughput. The balanced tier at 10 VPUs, which is the default, brings the all in cost to roughly $0.0425 per GB per month. Higher performance at 20 VPUs suits busy databases, and ultra high performance scales to 120 VPUs for the workloads that need six figure IOPS from a single volume.
Two things make this model cheaper in practice than the AWS and Azure equivalents. First, performance is a dial on the same volume, not a different product, so you can turn a volume down after a busy period without migrating data, and you can automate that with the autotune feature. Second, the balanced default at roughly $0.0425 compares with gp3 on AWS at around $0.08 per GB month before provisioned throughput, and with Azure premium SSD managed disks that bill in fixed size bands whether you use the capacity or not. For a thousand instances each carrying a few hundred gigabytes of block storage, the gap is real money every month.
Boot volumes and the stopped instance trap
Boot volumes are block volumes and bill like block volumes, which leads to the most common small surprise on OCI bills: a stopped compute instance stops billing for OCPUs but its boot and attached volumes keep billing in full. Estates with a habit of stopping instances instead of terminating them accumulate a quiet layer of storage spend that belongs to machines nobody has used in months. The fix is housekeeping, not engineering, and it is one of the first things a cost optimization engagement looks for because the savings are immediate and risk free.
Object storage: three tiers and the gravity of the default
Object storage standard lists at around $0.0255 per GB per month, the same headline rate as block capacity, and it is where most unstructured data lands by default. The infrequent access tier costs around $0.01 per GB per month, roughly 60 percent less, in exchange for a retrieval fee of about a cent per GB and a minimum retention period. Archive storage costs around $0.0026 per GB per month, roughly a tenth of standard, in exchange for a restore process measured in hours and a 90 day minimum retention.
The economics are simple and the behavior is not. Data lands in standard because standard is the default, and it stays there because nobody owns the decision to move it. A backup set that is written once, read almost never, and retained for seven years costs ten times more than it should if it sits in standard the whole time. OCI supports lifecycle policies that transition objects between tiers automatically on age rules, and the auto tiering feature can demote objects based on observed access. Turning these on is a one time configuration task that compounds for the life of the data.
Request charges and the small print
Object storage also bills for requests beyond a monthly free allowance, at a rate of a fraction of a cent per ten thousand requests. For most estates this rounds to nothing, but applications that hammer object storage with millions of small reads, a pattern common in poorly designed data lakes, can turn the request line into real money. If a workload reads the same small objects constantly, that is a caching problem wearing a storage bill as a symptom.
File storage: convenient and priced accordingly
OCI File Storage lists at around $0.30 per GB per month, which is more than ten times the block volume capacity rate. That is not a pricing error, it is the cost of a fully managed, elastic, snapshot capable NFS service. The mistake is using it as a dumping ground. File storage earns its rate when many instances need shared POSIX access to the same working set. It does not earn its rate holding archives, log files, or application installers that could live in object storage at a fortieth of the price. A few terabytes of misplaced data on file storage costs more than most teams' entire object storage bill, so auditing what actually lives on file systems is one of the highest yield storage reviews available.
How OCI storage compares with AWS and Azure
At list rates, OCI standard object storage at around $0.0255 sits slightly above S3 standard at $0.023 in the cheapest US regions but below it in most others, since S3 prices rise by region while OCI's rate is global. The bigger gaps are elsewhere. OCI block storage at the balanced tier undercuts gp3 and premium SSD meaningfully. Archive at $0.0026 competes with Glacier Flexible Retrieval and undercuts the Azure archive tier in most regions. And the comparison that dominates real bills is not the storage rate at all but what it costs to get data back out: OCI's 10 TB of free monthly egress and low per GB rate after that, covered in detail in OCI egress costs vs AWS and Azure, means a backup restore or a data export does not carry the punitive transfer bill it would on the other platforms. Storage you cannot afford to read back is not cheap storage.
A storage cost framework
The following sequence is how we approach storage cost in assessments, and it works whether the estate is two terabytes or two petabytes.
- Inventory by tier and age. Pull the actual distribution of data across block, object standard, infrequent access, archive, and file storage, and break it down by last access where the telemetry exists.
- Find the cold data on hot tiers. Backups past their active window, logs past their query window, and completed project data are the usual suspects sitting in standard object storage or on file systems.
- Set lifecycle policies once. Encode the tiering rules as object lifecycle policies and auto tiering so the right behavior happens without anyone remembering to do it.
- Right size block performance. Review VPU settings against actual IOPS and throughput, turn on autotune where it fits, and stop paying higher performance rates for volumes that idle.
- Clean up orphans. Unattached volumes, boot volumes of long stopped instances, old volume backups, and stale object versions are pure waste with no performance tradeoff at all.
- Re check on a cadence. Data grows and access patterns change, so the review repeats quarterly, which is the kind of standing discipline a managed service carries so internal teams do not have to.
What this means for the bill
On a typical mid sized estate, storage runs 10 to 20 percent of the OCI bill, and a first pass tiering and cleanup exercise commonly removes a quarter to a third of that line. It is rarely the single biggest saving available, the compute and licensing work covered in OCI compute pricing usually is, but it is the most certain, because moving cold data to a cheaper tier has no performance consequence and no application risk. It is also the saving that compounds: every month the lifecycle policies run is another month the estate stays clean.
Commercially, storage cost control fits all three of our engagement models. A fixed fee project covers the initial inventory, tiering design, and lifecycle policy rollout. A managed monthly retainer keeps the cadence reviews running. And because storage cleanup produces measurable, verifiable reductions, it sits naturally inside an optimization engagement where the fee is a percentage of verified savings and nothing is paid if nothing is saved.
A worked example: 100 TB, tiered honestly
Numbers make the case better than principles. Take an estate holding 100 TB: 20 TB of hot block storage under databases and applications, 30 TB of working object data, and 50 TB of backups and archives older than 90 days. Left untiered, with everything on block volumes and standard object storage, the monthly line runs to roughly $3,400. Tiered honestly, with the same 20 TB on block, the working set in standard object, 20 TB of cooling data in infrequent access, and the 30 TB of genuine cold retention in archive, the line falls to around $1,800. Nothing was deleted, no application changed, and recovery objectives still hold because the tiering followed the access requirements rather than fighting them. Scaled across a few years of data growth, the gap between those two postures funds real engineering work.
Bringing it together
OCI storage pricing rewards exactly one behavior: putting data on the cheapest tier that meets its real access and recovery requirements, and automating the movement so the placement stays correct as data ages. The rates themselves are competitive, the global price list removes regional complexity, and the egress pricing means the data is not held hostage. What remains is the discipline, and that is a process question, not a technology one. If you want a clear picture of where your storage spend actually sits and what a tiering pass would return, that is a standard part of every OCI assessment we run.
Free white paper
Go deeper on this topic with The OCI Pricing Decoder, Universal Credits, Support Rewards, and the discounts Oracle does not volunteer. An independent analyst style report with comparison tables and recommendations, free with a work email. Prefer a monthly summary instead? The OCI Brief delivers one practical OCI briefing a month.
Part of a series
This guide is part of OCI Cost & Licensing — our complete pillar guide on the topic.
Moving Oracle workloads to OCI, or already running on OCI and not sure the architecture or the spend is right? Most teams bring in a specialist before they commit to a region, a shape, or a Universal Credits number. OCISpecialists.com plans the landing zone, runs the migration, and manages the estate after go live, on a fixed project fee, a managed monthly retainer, or a cost optimization fee paid only on verified savings.