Track and Manage Usage and Cost

The objective of a continuous cost optimization process is to ensure that the money spent on running services in Oracle Cloud Infrastructure (OCI) yields the most business value for the organization. You can approach this process in different ways but all of them rely on accurate usage and cost data generated by the platform and made available via different channels, such as the UI, CSV files or API calls. Cost optimization is an iterative process where data and analysis drives actions. One outcome of applying a cost optimization process should be that there are no resources that are sitting idle for prolonged periods of time incurring a cost without delivering any value.

To understand the cost associated with a solution deployed in OCI and the potential options to optimize cost against value, ensure you have designed the solution to allow you a structured way to collect usage and performance metrics from the different services. OCI collects a large amount of metrics but, while designing the solution, you should use the available tools to help provide structure around the collected data as well as set up thresholds to trigger alerts related to increases in spending or underutilized resources.

From a FinOps perspective, consider applying the FinOps objectives (Visibility, Manageability, and Governance) by utilizing cost analysis, tracking, and management tools during each of the FinOps phases (Inform, Optimize, Operate). OCI provides numerous tools for cost management that map to these phases and objectives. Check the Learn More topic at the end of this article for links to more information about each tool.

FinOps phase and objective FinOps capability OCI cost management tool
Inform: Visibility Billing and reporting OCI Cost Analysis
Tagging OCI Cost and Usage Reports
Optimize: Manageability Forecasting Forecasting in Cost Analysis
Cloud cost planning OCI Cost Estimator
Invoicing

OCI Invoices

OCI Payment History

OCI Billing Schedule

Recommendations

OCI Cloud Advisor

OCI License Manager (BYOL-1)

Operate: Governance Alerts and notifications OCI Budget Alerts
Controls

Quotas

Enforcing Budgets using Functions and Quotas

This table maps some key FinOps Personas as defined by the FinOps Foundation to the personas used in this well-architected framework.

Well-architected framework persona FinOps persona
Application Architect Engineering—Maps to technical practitioners responsible for cloud implementation
Cloud Architect Product/Engineering—Hybrid role combining aspects of both FinOps personas
Cloud Operations Manager Product—Partial mapping to product ownership and operational aspects
DevOps Architect Engineering—Maps to technical implementation and automation aspects
Enterprise Architect Leadership—Maps to executive decision-making and strategy roles
Network Architect Engineering—Specialized technical role focusing on network infrastructure
Security Architect Security—Direct mapping to the Security allied persona

Additionally, the FinOps Practitioner persona partially maps to the Cloud Operations Manager, with some responsibilities for cost management and optimization, and the IT Service Management (ITSM) allied role partially maps to the Cloud Operations Manager for some management responsibilities.

Evaluate the Different Pricing Models

Enterprise Architect, Cloud Architect, Cloud Operations Manager

From a business perspective, you need to evaluate which pricing model makes sense: a flexible pay-as-you-go model, or a model where you commit to paying a certain amount per month for the duration of the subscription period ("commitment model"). Both of these pricing approaches are available for Oracle Cloud Infrastructure.

If you have a good understanding of your expected usage, the commitment model could provide a lower cost due to discounted service pricing. However, if your usage drops or increases significantly, then you could end up paying more when using this model.

If you are using the FinOps Framework, the Finance and FinOps Practitioner personas best match this section. Finance needs to understand pricing models to make strategic decisions about cost commitments, while FinOps Practitioners need to analyze and recommend optimal pricing strategies. These personas work together to evaluate pay-as-you-go versus commitment-based models, understanding the financial implications of each choice.

This topic aligns directly with the "Rate Optimization" capability within the "Optimize Cloud Usage & Cost" domain of the FinOps Framework. It emphasizes the FinOps principle of "taking advantage of the variable cost model of the cloud" by evaluating different pricing options to optimize costs.

Recommended FinOps Capabilities to leverage this evaluation activity:

  • Rate Optimization: To analyze and optimize pricing models
  • Planning & Estimating: To forecast usage patterns and determine optimal pricing commitments
  • Forecasting: To predict future usage and costs under different pricing models

Use OCI Landing Zones

OCI Landing Zones are well-architected, configurable Terraform IaC templates for various use cases that accelerate OCI onboarding with automated provisioning of an optimal cloud environment that is secure, compliant, resilient, and cost effective.

The resources created by the Landing Zone are free of charge. Any resources that incur a cost are not enabled by default, giving you the option to enable them as necessary.

After setting the basic foundation with the Landing Zone, you can deploy workloads by creating cost-consuming resources such as compute instances, databases, storage, and so on. Landing Zones also allow you to create a budget that sends a notification when spending is forecast to reach a threshold you specify.

Implement a Compartment Structure to Help Manage Costs

Cloud Architect, Enterprise Architect, Security Architect, Cloud Operations Manager

Compartments are a fundamental component of OCI for organizing and isolating your cloud resources.

You use compartments to clearly separate resources for the purposes of measuring usage and billing, access (through the use of policies), and isolation (separating the resources for one project or business unit from another). For example you might want to have one compartment for development and another for production, or one for your sales division and another for your manufacturing division.

As a best practice, set up the tenancy to support the way your business works. This will ensure cost and usage data can be viewed and filtered based on dimensions that make sense to your organization. Typically, this involves using compartments as logical containers to house different OCI services. You can map compartments to organizational units, business units, or even individual service and solution owners ,depending on how your business is run.

OCI Landing Zones implement compartment structures that help you track and manage consumption and associated cost. Landing Zones allow you to create a basic budget that notifies a provided email address if a forecasted spending reaches a specific threshold. Landing Zone are free of charge to use and most of the infrastructure services that are deployed incur low or no cost.

If you are using FinOps Framework, the FinOps Practitioner and Engineering personas are best suited here. FinOps Practitioners need to design the cost allocation strategy, while Engineering implements and maintains the technical compartment structure. Security persona (Allied) also plays a key role in ensuring proper isolation and access controls.

This topic aligns with the "Allocation" capability in the "Understand Cloud Usage & Cost" domain. It supports the FinOps principle that "everyone takes ownership for their cloud usage" by enabling clear cost attribution and accountability.

Recommended FinOps Capabilities to leverage this managing cost structure activity:

  • Allocation: To properly structure cost distribution
  • Cloud Policy & Governance: To enforce compartment policies
  • Reporting & Analytics: To analyze costs at compartment level

Implement Cost Tracking Tags for Flexible Cost Tracking

Cloud Operations Manager, Cloud Architect

Often, cloud solutions use different services, some of which might reside in different compartments while others reside in a shared compartment, like "Network," governed by different access controls. Some compartments will include resources used by several different solutions, which means that reporting cost only at a compartment level could be inaccurate.

The solution owner still requires visibility into the complete usage and costs of their solution even if resources are located in multiple different compartments.

By attaching cost-tracking tags to the different resources used, you can query cost data by filtering with tags rather than compartments. This allows more flexibility in placing resources and the approach for querying cost data, but it also mandates a robust Tagging policy. As much as possible, identify your tagging policy early and then enforce it: frequent changes to tagging namespaces and tagging key names will cause complexity when searching and aggregating data.

For example, you could apply tags like: Finance.CostCenter:xyz, Environment.Type:Production,Project.Owner:xyz, Application.Name:xyz to the different resources. This would cause OCI to add these tags to the generated usage and cost data, permitting searches of the cost data based on these tags.

Tagged namespaces should be protected by IAM Policies to ensure only Tag administrators make changes.

If you are using FinOps Framework, the FinOps Practitioner and Engineering personas lead this effort. FinOps Practitioners design the tagging strategy while Engineering implements it. ITAM (Allied Persona) can provide valuable input on asset tracking requirements.

This topic directly supports the "Allocation" capability and feeds into "Reporting & Analytics" within the FinOps Framework. It enables granular cost tracking and supports the principle that "FinOps data should be accessible and timely."

Recommended FinOps Capabilities to leverage this tracking activity:

  • Allocation: For implementing tagging strategies
  • Data Ingestion: To ensure proper tag data collection
  • Reporting & Analytics: To leverage tags in cost analysis

Define Budgets

Enterprise Architect, Cloud Architect, Security Architect, Cloud Operations Manager

A budget can be used to set soft limits on your actual OCI spending or forecast of spending. Budget control on the root compartment can provide an indicator of abnormal usage.
Budgets are called "soft limits" because they do not prevent a resource from exceeding the limit. Instead, when thresholds are reached, OCI triggers alerts and emails to designated contacts so they are aware of the overage. In addition, you can raise events that trigger further action within OCI.

Budgets are set on cost-tracking tags or on compartments (including the root compartment) to track all spending in that cost-tracking tag or for that compartment and its children.

If you are using the FinOps Framework, the Finance and Product personas are primarily responsible for this task, with Finance setting overall budgets and Product owners managing their allocated budgets. The FinOps Practitioner acts as facilitator to implement budget controls and monitoring. The Leadership persona is key for budget approval and oversight.

This topic aligns with the "Budgeting" capability within the "Quantify Business Value" domain. It supports the FinOps principle that "teams need to collaborate" by establishing financial guardrails and accountability.

Recommended FinOps Capabilities to leverage this budgeting activity:

  • Budgeting: For setting and managing budgets
  • Anomaly Management: To detect budget overruns
  • Forecasting: To predict budget utilization

Enable Block Volume Performance Auto Tuning

Cloud Operations Manager

Oracle Cloud Infrastructure can automatically tune the performance of your detached volumes to the Lower Cost setting. With this new capability, while your volumes stay in a detached state, you can achieve significant cost savings.

If you are using the FinOps Framework, the Engineering persona leads this technical optimization, supported by the FinOps Practitioner for cost impact analysis. This requires deep technical knowledge combined with cost optimization expertise.

This topic falls under the "Workload Optimization" capability within the "Optimize Cloud Usage & Cost" domain. It exemplifies the principle of "taking advantage of the variable cost model of the cloud."

Recommended FinOps Capabilities to leverage this tuning activity:

  • Workload Optimization: To optimize storage performance and cost
  • Rate Optimization: To understand cost implications
  • Unit Economics: To measure cost per GB of storage

Implement Object Storage, Object Lifecycle Management

Cloud Operations Manager

By using Object Lifecycle Management to manage your object storage and archive storage data, you can reduce your storage costs and the amount of time you spend managing data.

Object Lifecycle Management lets you automatically:

  • Archive objects to lower-cost Archive Storage.
  • Delete all objects in a bucket or objects that match the names filters that you specify.
  • Delete uncommitted or failed multi-part uploads.

If you are using the FinOps Framework, the Engineering persona leads the technical implementation, while the FinOps Practitioner guides the cost optimization strategy. The ITAM (Allied Persona) provides input on data lifecycle requirements and retention policies.

This topic aligns with both "Workload Optimization" and "Cloud Sustainability" capabilities, optimizing storage costs while considering long-term data management implications.

Recommended FinOps Capabilities to leverage this lifecycle management activity:

  • Workload Optimization: For storage tiering strategies
  • Cloud Sustainability: For efficient resource usage
  • Unit Economics: To measure storage costs per object/bucket

Leverage Cost Reports

Enterprise Architect, Cloud Operations Manager

A cost report is a comma-separated value (CSV) file that can provide a detailed breakdown of resources in OCI for audit or invoice reconciliation.

You can analyze the monthly cost report to get a fine-grained understanding of every OCI service you used. The cost report is automatically generated daily, and is stored in an Oracle-owned object storage bucket. It contains one row for each OCI resource (such as instance, object storage bucket, and VNIC) per hour, along with consumption information, metadata, and tags. Usage reports generally contain 24 hours of usage data, although occasionally a usage report may contain late-arriving data that is older than 24 hours.

Cost reports are retained for one year.

The file name for each cost report is appended with an automatically incrementing numerical value. The report might contain corrections. Corrections are added as new rows to the report, with the lineItem/iscorrection column set and the referenceNo value of the corrected line populated in the lineItem/backReference column.

If you are using FinOps Framework, the FinOps Practitioner persona leads this effort, working closely with Finance for reconciliation and analysis. The ITFM (Allied Persona) is crucial for integrating cost data into financial systems.

This topic supports the "Reporting & Analytics" capability within the "Understand Cloud Usage & Cost" domain, enabling data-driven decisions and transparency.

Recommended FinOps Capabilities to leverage this reporting activity:

  • Reporting & Analytics: For cost analysis and reporting
  • Data Ingestion: To process cost reports
  • Invoicing & Chargeback: For invoice reconciliation

Track and Optimize Your Spending by Using Cost Analysis

Enterprise Architect, Cloud Operations Manager

Cost Analysis provides easy-to-use visualization tools to help you track and optimize your Oracle Cloud Infrastructure spending.

Most new customers in the United States who create new accounts after January 28, 2019 can use cost analysis tools to:

  • Filter costs by dates.
  • Filter costs by tags.
  • Filter costs by compartments.
  • Remove a compartment or tag filter.
  • Forecast cost and consumption.

If you created your account prior to January 28, 2019 or you are from outside the United States, other options for tracking and optimizing spending are available.

If you are using the FinOps Framework, the FinOps Practitioner is the primary persona, collaborating with Finance for cost insights and Product owners for business context. The ITFM (Allied Persona) helps integrate findings into financial planning processes.

This topic directly aligns with the "Reporting & Analytics" capability and supports the principle that "FinOps data should be accessible and timely." It enables data-driven decision making across the organization.

Recommended FinOps Capabilities to leverage this analysis activity:

  • Reporting & Analytics: For detailed cost analysis
  • Benchmarking: To compare costs across teams/projects
  • Unit Economics: To analyze cost efficiency metrics

Implement a Process to Terminate or STOP Unused Resources

Cloud Operations Manager, DevOps Architect

Implement a process to identify and terminate orphaned resources. Certain OCI compute shapes don't charge in STOP mode.

For both VM and Bare Metal instances, billing depends on the shape that you use to create the instance. Be sure that you are familiar with the billing criteria for the compute resource you are using. Also, implement behavior for stopping and terminating that matches your data retention and cost goals for the application workload.

OCI Resource Scheduler provides automated management of the state of selected resources such as those used for testing, development, and demonstration, and reduces costs when using OCI.

If you are using the FinOps Framework, the FinOps Engineering persona leads the technical implementation with guidance from the FinOps Practitioner. Security (Allied Persona) ensures that resource termination policies align with security requirements.

This topic falls under "Workload Optimization" in the "Optimize Cloud Usage & Cost" domain and supports the principle of "everyone takes ownership for their cloud usage."

Recommended FinOps Capabilities to leverage this unused resource management activity:

  • Workload Optimization: For resource utilization analysis
  • Cloud Policy & Governance: To enforce resource lifecycle policies
  • Anomaly Management: To detect unused resources

Consider Lower Cost Compute Shapes

Cloud Operations Manager, Cloud Architect

OCI offers various CPU chip architectures, each of which has unique price and performance characteristics, including shapes based on Intel, AMD Epyc and ARM, as well as multiple GPUs from AMD and NVIDIA. Choose the CPU or GPU that meets your performance requirements with the least cost possible.

A flexible shape allows you to customize the number of OCPUs and the amount of memory when launching or resizing your VM. When you create a VM instance using the flexible shape, you select the number of OCPUs and the amount of memory that you need for the workloads that run on the instance. The network bandwidth and number of VNICs scale proportionately with the number of OCPUs. This flexibility enables you to build VMs that match your workload, allowing you to optimize performance and minimize cost.

If you are using the FinOps Framework, the Engineering persona leads shape selection with the FinOps Practitioner providing cost analysis. The Product persona provides performance requirements, ensuring business needs are met while optimizing costs.

This topic aligns with both "Rate Optimization" and "Workload Optimization" capabilities, focusing on cost-effective resource selection while maintaining performance.

Recommended FinOps Capabilities to leverage this shaping activity:

  • Rate Optimization: To compare shape pricing
  • Workload Optimization: To right-size instances
  • Planning & Estimating: To forecast costs of different shapes

Become Familiar with Billing and Cost Management in OCI

Cloud Architect, Security Architect, Cloud Operations Manager

Use the OCI billing and cost management tools to help you manage the cost of OCI services.

Cloud Advisor can review and continuously monitor your tenancy and provide recommendations for cost savings and security posture improvements.

Cloud Advisor finds potential inefficiencies in your tenancy and offers guided solutions that explain how to address them. The recommendations help you maximize cost savings and improve the security of your tenancy. The built-in Cloud Guard recommendations help you see and address security vulnerabilities. You can also customize Cloud Advisor by postponing or dismissing recommendations that aren't applicable, allowing you to focus on the recommendations that matter most to you.

The full capabilites and usage of Cloud Advisor are beyond the scope of this Best Practices playbook. For more information on this service, see the "Overview of Oracle Cloud Advisor" referenced in the "Learn More" topic, below.

The OCI FinOps Hub provides a central location for cost management resources in OCI. Leverage FinOps FOCUS data for multicloud scenarios.

If you are using the FinOps Framework, the FinOps Practitioner leads this effort, working closely with Finance and Procurement for comprehensive cost management. The ITFM (Allied Persona) helps integrate OCI billing into enterprise financial systems.

This topic spans multiple capabilities in the "Understand Cloud Usage & Cost" domain and supports the principle that "a centralized team drives FinOps."

Recommended FinOps Capabilities to leverage this billing and costing management activity:

  • Data Ingestion: To process billing data
  • Invoicing & Chargeback: For billing management
  • FinOps Education & Enablement: To train teams on OCI cost tools
  • Cloud Policy & Governance: To establish cost management policies