Introduction
The FairShare Cost type is an advanced solution for the fair distribution of discounts from Reserved Instances (RIs), Spot Instances, and Savings Plans (SPs), as well as On-Demand costs, across Amazon EC2, AWS Lambda, Amazon ECS, and Compute Savings Plans, RDS, Elasticache, DynamoDB, and RedShift. Designed for organizations managing commitments centrally, it addresses the complexities of AWS’s discount allocations and provides transparency and control over cloud expenses.
FairShare Cost eliminates the randomness often seen in AWS's default cost allocation by ensuring discounts are applied accurately across all relevant resources according to actual usage and commitments. This structured approach resolves misaligned costs and inaccurate showback reports, offering a logical and equitable way to allocate savings in environments with multiple teams, regions, and services.
Note: Contact Finout support at [email protected] to enable this feature.
Challenges and Solutions
Let’s start with a simple story…
Two brothers buy apples daily, and each apple typically costs $1. They receive a total 40% discount allocation for both apples; however, the store allocates this discount randomly, which varies daily.
On the first day, Alex’s apple gets a 30% discount, costing $0.70, while Jon’s apple only receives a 10% discount, costing $0.90. While the apples are identical, the discounts applied to them vary.
The next day, the discounts are reversed: Jon’s apple receives the 25% discount, costing $0.75, while Alex’s apple only gets the 15% discount at $0.85. While the apples are identical, and the total discount remains the same, the discount allocation per apple vary.
This pattern continues daily, with the total discount remaining the same and the brothers buying identical apples. However, each brother sometimes pays significantly less or more for the same apple. By the end of the week, both brothers are confused—their apples are identical, but their costs fluctuate unpredictably due to the varying discounts applied each day.
The story of these two brothers mirrors the challenges faced by different development teams with identical usage in managing cloud costs, where unpredictable discount allocation creates confusion and unfair distribution, much like the fluctuating discounts on identical apples. Imagine you’ve carefully rightsized your EC2 instances, expecting a reduction in costs, but the next month’s bill unexpectedly increases. Upon closer inspection, you discover that while Reserved Instances (RIs) and Savings Plans (SPs) were applied, the distribution of these discounts varied unpredictably. Some resources received discounts on certain days but not others, causing the anticipated savings to fluctuate.
This issue is compounded by AWS’s discount allocation system, where RIs and SPs may be applied arbitrarily, sometimes with little connection to actual resource usage. For example, discounts meant for production might apply to unrelated environments, such as development, leading to inaccurate budget attribution and distorted cost tracking. This misalignment can inflate costs for the teams requiring savings and disrupt finance teams’ forecasting, budgeting, and reporting. By using FairShare Cost, teams can address these issues, ensuring more predictable and equitable discount distribution across resources.
AWS Pricing Structure Challenges:
Random Discount Allocation:
AWS may arbitrarily apply RIs and SPs to your environment, often unrelated to actual resource usage.
Teams that don’t need specific resources might receive discounts, while those requiring savings pay full price.
Misaligned Costs and Usage:
Discounts for specific workloads or environments (e.g., production) can be applied to unrelated teams (e.g., development), leading to incorrect budget attributions.
This misalignment distorts cloud spend tracking and creates false perceptions of departmental consumption.
Inconsistent and Unpredictable Billing:
The lack of structured allocation makes forecasting cloud expenses challenging, hindering accurate budgeting.
Finance teams struggle to generate reliable showback reports, causing planning disruptions and financial disputes.
Story Continued…
To resolve the confusion, the brothers introduced a predictable discount system with a set price for red apples and a set price for green apples.
Red Apple Discount: The brothers buy two red apples and receive a total 40% group discount, which is evenly divided to provide a 20% discount per apple. This lowers the price of each apple from $1 to $0.80, ensuring consistent pricing and eliminating unexpected price fluctuations.
Green Apple Discount:
After receiving the discount on red apples, the brothers also decided to buy green apples as well. All green apples have a total 30% discount, the discount is distributed equally between the 3 apples so that each gets 10% reducing its price from $1 to $0.90, making it predictable for buyers.
Apples Plan:
In addition to the group discounts, the store decided to add a 35% global discount (equivalent to SP and not EDP) applied to all apples regardless of their color. Since the apples are the same size and there are a total of 5 apples, the global discount of 35% is distributed equally, resulting in a 7% discount per apple.
Summary of final apple prices:
The brothers finally have a fair and predictable discount allocation for all apples.
Red Apples:
Group Discount - 20%
Global Discount - 7%
Final price of red apples - $0.74
Green Apples :
Group Discount - 10%
Global Discount - 7%
Final price of green apples - $0.83
Both brothers now enjoy a stable, predictable cost structure for their apples. The total discount is permanent, and with the new system, the allocation is also predictable. Similarly, Finout’s FairShare Cost model offers a solution to the AWS discount confusion by providing consistent discount allocation across Amazon EC2, AWS Lambda, Amazon ECS, Compute Savings Plans, RDS, Elasticache, DynamoDB, and RedShift. Each resource will get a fair share of its eligible discounts (RIs, Spot Instances, and Savings Plans) based on usage. This helps teams track and optimize cloud spending without surprises, providing the same predictability and stability the friends now experience with their apples.
FairShare Cost Solutions:
Analyze the Past - Showback and Chargeback:
You gain a transparent and accurate view of cloud costs, with each team or service being charged based on actual usage, free from the distortions caused by arbitrary discount allocations.Eliminates anomalies and false positives
Simplifies analysis of historical spending patterns
Provides accurate and actionable cost insights
Plan the Future - Modern Financial Planning:
FairShare Cost allocation ensures that no team benefits unfairly from discounts intended for other workloads, aligning costs with usage and fostering accountability across departments.Aligns costs with actual usage
Enhances predictability in billing
Supports precise budget planning and resource allocation
FinOps Adoption - A Core Product Value :
Structured and predictable cost allocation enables finance teams to generate reliable reports and forecasts, enabling better budgeting and planning.Simplifies cost models for clarity
Reduces organizational noise
Fosters cross-team collaboration with a shared language
FairShare and Amortized Cost Comparison
An apple stand sells red and green apples. Each type of apple has unique qualities, and discounts need to be allocated fairly across both types according to specific criteria.
This scenario, along with the various commitment combination types, highlights the similarities and differences between FairShare and Amortized costs, using an apple as a metaphor for a resource.
There are four types of commitment combinations in cost calculations: No Commitments, Group Commitments Only, Global Commitments Only, and Group and Global Commitments, each defining how FairShare and AWS Amortized costs are applied based on eligible discounts and allocation methods.
No Commitments
Scenario continued:
Both red and green apples are sold at a standard price of $1, without special discounts or commitments. Both apple groups have the same discount, with no adjustments for specific requirements or categories.
Explanation:
All resource costs are calculated on an On-Demand basis (no discount applied). The FairShare cost and the AWS Amortized cost are the same.
Group Commitments Only
Scenario continued:
Only red apples receive a special discount, reducing their cost over time through a prepaid commitment. This discount is divided evenly among all red apples, ensuring each one benefits equally. Green apples, however, continue to be sold at the public price of $1 with no discount applied.
Explanation:
Resources with group commitments receive eligible discounts, allocated by the usage ratio calculated through the FairShare cost type (group allocation), while all other resources are calculated at the On-Demand rate (which have no discount). Groups that receive a discount will show different FairShare and Amortized costs, while groups without a discount will have equal FairShare and Amortized costs, reflecting the on-demand rate.
Global Commitments Only
Note: Not including EDP
Scenario continued:
A general discount is applied to all apples.
Explanation:
All resources are calculated using the Fairshare cost calculation (global allocation calculation) and receive their relative discount according to usage. The Fairshare cost for individual resource groups may differ from the AWS Amortized cost but the total price of all resources together will be the same for both cost types.
Group Commitments and Global Commitments
Scenario continued:
The store gave a discount to all the apples and also an additional discount to each apple type.
Explanation:
All resources are calculated using the Fairshare cost calculation by both Reserved Instances (RIs) and Savings Plans (SPs) allocation, according to the eligible discounts. The Fairshare cost for individual resource groups may differ from the AWS Amortized cost but the total price of all resources together will be the same for both cost types.
Summary of Fairshare Cost and AWS Amortized Cost Comparison:
The Fairshare cost for individual resource groups may differ from the AWS Amortized cost. Still, the total price of all resources combined will remain the same for both cost types because the total discount is the same; it’s allocated differently between these cost types.
Visualization of Finout’s Fairshare vs. AWS’s Net Amortized cost allocation:
Using Fairshare, you can accurately allocate 100% of each discount to its owner, making showback and chargeback straightforward and efficient.
Use Cases
Inconsistent discount allocation in AWS cloud services presents challenges for organizations across various roles. When Reserved Instances (RIs), Savings Plans (SPs), and Spot Instance discounts are applied unpredictably, it disrupts accurate financial reporting, stable budgeting, and reliable cost tracking. For FinOps managers, finance leaders, developers, and DevOps engineers alike, these fluctuations can lead to inefficiencies, and budget disputes, making it challenging to optimize and manage cloud costs effectively. The following use cases illustrate how unpredictable AWS discount distribution impacts each role and highlight the need for a consistent cost allocation model.
FinOps
Use Case: Ensuring Accurate Showback and Chargeback Reporting
As a FinOps manager, I’m responsible for generating accurate showback and chargeback reports for each team based on their cloud usage. This reporting helps allocate costs fairly and allows teams to track their spending against their budget. However, AWS’s unpredictable discount allocations, where RIs and SPs may apply randomly to different resources, cause inconsistencies in the cost data. For instance, in one month, Team A’s instances received discounts that Team B’s identical instances didn’t receive, making it appear that Team A’s costs are lower despite similar usage. This creates disputes between teams and makes it challenging to allocate budgets fairly, requiring manual adjustments and reducing the accuracy of our financial reports.
Finance:
Use Case: Forecasting Cloud Expenses for Budget Planning
As a finance manager, I need reliable cost data to forecast expenses and plan budgets accurately. However, AWS’s fluctuating discount allocations make this problematic. For example, when preparing the quarterly budget, I notice that cloud spending in one month was significantly lower than in the next, despite stable usage. After investigating, I found that the first month benefited from more RI and SP discounts than the second. These unpredictable shifts mean that projected costs can deviate widely from actual cost, complicating financial planning and making it harder to meet budget goals.
Development:
Use Case: Tracking Cost Savings Through Instance Rightsizing
As a developer focused on reducing my team’s EC2 costs, I regularly rightsize instances to match cloud usage better. I recently adjusted our instances, expecting a drop in costs for the following month. To my surprise, the costs remained high and sometimes even increased. After investigating, I found that AWS had inconsistently applied RI and SP discounts to our resources, with some instances receiving discounts and others not, despite identical configurations. This inconsistency makes it challenging to assess the impact of my optimization efforts and accurately communicate cost savings to my manager.
DevOps:
Use Case: Stabilizing Cloud Costs for Resource Optimization
As a DevOps engineer, I aim to stabilize cloud costs by monitoring usage and adjusting resources as needed. However, AWS’s variable discount allocations make this problematic. For instance, I track our EC2 usage closely, but in one week, our costs spike without any change in demand. Upon investigation, I found that fewer instances received RI or SP discounts that week compared to the previous one. This irregularity in discount distribution complicates my cost management efforts, as it’s hard to pinpoint actual areas for optimization when costs fluctuate unpredictably.
How Does It Work?
The FairShare Cost cost type is built to allocate cloud discounts fairly and accurately, ensuring that each resource receives the appropriate cost reductions based on usage and eligible commitments. This sophisticated cost type guarantees thatdiscounts from Reserved Instances (RIs), Spot Instances, and Savings Plans (SPs), as well as On-Demand costs, are distributed equitably across all relevant resources. It addresses the complexities of AWS pricing mechanisms by clearly defining how different types of cost commitments are applied across various services.
FairShare Cost Calculation
Commitment and Discount Categorization:
Finout categorizes resource discounts into two types: Group and Global Commitments:
Group-Level Discounts: These include Reserved Instances (RIs) and Spot Instances, which are applied to specific groups of resources sharing attributes such as region, operating system, instance type, and size. For example, if RIs are purchased for EC2 instances in a specific region and instance type, only those instances will benefit from the discount. Finout ensures that these group-level discounts are distributed proportionally across all resources within the group that meet the eligibility criteria, preventing unrelated resources from receiving unintended discounts.
Global Discounts: These include Savings Plans (SPs) and On-Demand, which are applied across all relevant resources, regardless of region or OS. SPs offer flexible discounts that cover multiple services, such as EC2, Lambda, and Fargate. Finout ensures that these global discounts are distributed proportionally based on the actual usage of each resource, ensuring fairness and transparency across all services.
Resource Usage Share:
After identifying a resource's group and global commitments, Finout divides the discount for each resource by the resource usage.
Relative Group Cost - measures how much the resource contributes to the total on-demand cost within its specific group (e.g., region or instance type).
Formula: Relative Group Cost = resource’s on-demand rate / on-demand group costRelative Global Cost - shows the resource's contribution to the total on-demand cost across all groups and services globally.
Formula: Relative Global Cost = resource’s on-demand rate / on-demand total cost
Fair Discounts Allocation:
This ensures the discounted costs account for eligible discounts and the relative usage.After configuring the relative cost, FInout multiples the relative cost by the resource commitments, having the discounted cost consider the eligible discounts and the relative usage.
Group Allocation - Combines group-level commitment and relative group cost to represent the adjusted or allocated cost at the group level.
Formula: Group Level Commitments × Relative Group CostGlobal Allocation - Combines global-level commitment and relative global cost to represent the adjusted or allocated cost at the global level.
Formula: Global Level Commitments × Relative Global Cost
FairShare Cost:
Combines the Group and Global allocation as the resource can benefit from both discounts.Formula: (Relative Group Cost × Group-Level Commitments) + (Relative Global Cost × Global Commitments)
Technical Use Case
Resources
Group A (us-west-1, Linux, m5.large):
10 On-Demand EC2 instances
5 Spot Instances at $0.25 per hour
On-Demand Rate: $1 per hour
- Cost Breakdown:
On-Demand Group Cost (Group A):
-For 10 on-demand instances, the total cost is: $1 * 10 = $10.00 per hour
-The 5 spot instances cost: $0.25 * 5 = $1.25 per hour
Total On-Demand Cost for Group A = $10.00 + $1.25 = $11.25 per hour
Group B (us-east-1, Windows, t3.medium):
15 On-Demand EC2 instances
On-Demand Rate: $1.20 per hour
-Cost Breakdown:
On-Demand Group Cost (Group B):
Total On-demand cost for 15 instances is: $1.20 * 15 = $18.00 per hour
Lambda Functions:20 Lambda functions across multiple regions
On-Demand Rate: $0.15 per function invocation
Cost Breakdown:
On-Demand Group Cost (Lambda):
:Total cost for 20 Lambda invocations instances is: $0.15 * 20 = $3.00
Total On-Demand Cost = $11.25 + $18.00 + $3.00 = $32.25Commitments
Reserved Instances (RIs): 5 RIs for Group A, 7 RIs for Group B
Spot Instances: 5 Spot instances for Group A
Savings Plans (SPs): A global savings plan covering both EC2 instances and Lambda functions, with a $5/hr commitment
FairShare Cost Calculation for a Resource in Group A
Global Commitments:
On-Demand Cost (globally):
On-demand cost for Group A: $5.00
On-demand cost for Group B: $9.60
Total On-Demand Global Cost = $5.00 + $9.60 = $14.60
Total Savings Plan Commitments = $5.00
Relative Group Cost:
RI Cost for Group A:
Total RI commitment cost = $2.00 (for 5 RIs)
Discount: 60% discount applied, so cost per hour = $0.40/hrSpot Cost for Group A:
Total Spot commitment cost = $1.25 (for 5 Spot instances)
Discount: 75% discount applied, so cost per hour = $0.25/hr
Discount Allocation:
Relative Group Cost (for Group A) =
On-Demand rate / On-Demand group cost
= $1 / $11.25 = 0.0889 (Relative cost for Group A)Relative Global Cost =
On-Demand rate / Total On-Demand cost
= $1 / $32.25 = 0.0310 (Relative global cost)
FairShare Calculation Group A
FairShare Cost for Group A = 0.896 per hour
FairShare Cost Calculation for a Resource in Group B
Relative Group Cost:
RI Cost for Group B:
Total RI commitment cost = $3.50 (for 7 RIs)
Discount: 41.6% discount applied, so cost per hour = $0.50/hrGlobal Commitments:
Same total global on-demand cost of $14.60 as Group A
Discount Allocation:
Relative Group Cost (for Group B) =
On-Demand rate / On-Demand group cost
= $1.20 / $18 = 0.0667Relative Global Cost =
On-Demand rate / Total On-Demand cost
= $1.20 / $32.25 = 0.0372
FairShare Calculation Group B:
FairShare Cost for Group B = 0.886 per hour