What Is FinOps?
FinOps is a discipline aimed at ensuring organizations use and scale their cloud infrastructure efficiently. FinOps practices reduce cloud cost spend and help teams scale effectively by ensuring efficiency in resource usage, whether that’s for cloud resources, storage, or something else. By applying FinOps principles with cloud cost management tools, more teams can understand the costs associated with their systems and day-to-day workflows.
While many people may assume that FinOps is primarily centered around saving organizations money on cloud costs, that isn’t exactly the case. In fact, the FinOps foundation says it best: “If it seems that FinOps is about saving money, then think again. FinOps is about making money.”
What Does FinOps Do?
If FinOps isn’t strictly about saving teams money, you may be wondering: what is FinOps actually for? Put simply, FinOps is about helping teams achieve scale. By ensuring that teams are only spending money on cloud resources they intend to use, FinOps gives teams the knowledge and peace of mind they need to scale confidently as they get more customers, introduce new products, and more. In this way, FinOps is about making sure teams are spending effectively, not necessarily spending less.
While the name has caught on in recent years, FinOps doesn’t refer to a single method or job title. Much like the DevOps discipline, FinOps is a cultural practice that requires and promotes decentralization—creating cost owners everywhere in an organization, from platform teams to individual developers. By creating a FinOps culture in which everyone owns a piece of the puzzle, teams can prepare for scale without creating unnecessary guardrails or slowing down the development process.
Why Is FinOps Important?
FinOps and cloud cost management as a practice emerged as traditional development teams began to migrate from storing data locally to primarily operating in the cloud. Where traditional IT and procurement for servers generally involved a drawn out, centralized process for purchasing physical infrastructure, spinning up a new instance or storage type in the cloud can be as simple as the push of a button. So while cloud hosting means teams can spin up new instances faster than ever, it’s also easier than ever to overrun costs and set up unnecessary or inefficient instances. Before cloud hosting was prevalent, organizations would never set up two server rooms on accident, but they might do the equivalent on the cloud.
While the move to the cloud has led to incredible convenience for developers, the ease of creating a cloud instance can also lead to wasted resources. As a result, the initial promise of cloud usage as a cost savings approach only holds true if teams are efficient and pay for what they use.
How Does FinOps Work?
FinOps practices typically operate in three stages.
In the Inform stage of operations, FinOps owners’ goal is to make organizations aware of all existing cloud spending. This often requires gaining centralized visibility into all cloud platforms an organization uses and benchmarking those expenditures against industry norms, as well as the goals of the organization itself.
Additionally, organizations are increasingly moving from a model that reports only direct cloud spend to one that incorporates all existing cloud-related costs. These additional costs may include engineering hours spent on certain projects, the cost of licenses, or some other cost.
Once a FinOps owner has a full picture of the cloud spend within their organization, they can enter the Optimize phase. Here, owners can rightsize resources that are being over-utilized, such as EC2 instances or Databases, and delete any unused resources.
However, it is crucial for FinOps owners to understand the difference between appropriate spending and waste. For example, a team may expect an increase in traffic ahead of Black Friday, and thus expand their capacity. Optimization best practices should make it easy for teams to easily identify that this expanded capacity is to be expected, even if it is underutilized at first.
Once owners have made appropriate optimizations, they will need to operate on cloud spend and ensure that best practices continue in the future. Owners will need to drive a FinOps culture in their organization. Operating on cloud costs is all about making FinOps practices come to life across your entire organization: creating recurring FinOps cadences on cost reviews, instituting cost alerting or automation, and creating a complete culture of cost ownership.
What Are The Challenges of FinOps?
As may be expected, introducing FinOps principles can be difficult. Some of the most common challenges with FinOps implementation are:
- Cost Visibility
Theoretically, all cloud cost data can be obtained directly from the cloud providers themselves. However, this data is not always as easily accessible as expected. Providers may calculate costs separately, or teams may have multiple instances across the same providers. This means FinOps owners need ways to reliably centralize, manage, visualize, and correlate cost data with the rest of their observability data.
- Attributing Costs and Performance
Proper optimization requires understanding how cost data is related to the performance of an application or a specific resource. On its own, spending $1,000 more on a service this month over the last month may be concerning, but it may not be indicative of a service that requires optimization.
This is even more important, and difficult to untangle, in cases where “usage” can belong to more than one team – like in the case of containers. The cost ownership for containers is usually tied to a single account owner, often the instances (nodes) powering the containers. However, many teams can rely on the computing infrastructure that these containers provide. In cases like this, FinOps owners will need to ensure they’re properly mapping out the usage as well as the costs.
- Organizational Awareness
Finally, FinOps cannot exist in a silo. Proper FinOps practices require buy-in from multiple teams, each of which may have their own objectives within the organization. FinOps owners need to work across teams, communicate clearly, and most importantly, give teams the tools they need to decentralize and democratize cloud spend.
Choosing The Right FinOps Platform
For teams looking to create a FinOps culture and to manage cloud costs, Datadog Cloud Cost Management provides the ideal solution to empower cost owners. With contextualized cost data inside of Datadog’s unified observability platform, both engineering teams and centralized FinOps teams instantly break down cloud costs across AWS or Azure with granular tagging and container cost allocation.
Datadog’s Container Cost Allocation breaks down shared resources into clearly defined values so that teams can allocate those costs confidently, without requiring any additional agent installation for existing Datadog customers. For teams struggling with tags, Datadog’s Tag Pipelines lets you automatically create new tags to align to business units, or fix existing tagging inconsistencies.
By combining cost data with granular telemetry from the Datadog agent, teams can quickly eliminate wasteful spend by eliminating orphaned resources or finding optimization opportunities. And by doing inside of Datadog’s team specific dashboards, organizations are able to democratize cost data and create cost ownership across their service teams.