Cloud Provider
Service Name
Inefficiency Type
Clear filters
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Showing
1234
out of
1234
inefficiencies
Filter
:
Filter
x
Overprovisioned Azure Database for PostgreSQL Flexible Server
Databases
Cloud Provider
Azure
Service Name
Azure Database for PostgreSQL – Flexible Server
Inefficiency Type
Overprovisioned Resource

Azure Database for PostgreSQL – Flexible Server often defaults to general-purpose D-series VMs, which may be oversized for many production or development workloads. PostgreSQL typically does not require a high sustained high CPU, making it well-suited to memory-optimized (E-series) or burstable (B-series) instances.

When actual usage consistently falls below the provisioned capacity — particularly CPU — the deployment may be overprovisioned, resulting in unnecessary compute charges. Choosing the wrong VM family or size leads to silent overspend, especially in long-lived database environments.

Overprovisioned Storage in Azure SQL Elastic Pools or Managed Instances
Databases
Cloud Provider
Azure
Service Name
Azure SQL
Inefficiency Type
Overprovisioned Resource

Azure SQL deployments often reserve more storage than needed, either due to default provisioning settings or anticipated future growth. Over time, if actual usage remains low, these oversized allocations generate unnecessary storage costs.

In Elastic Pools, resizing can be done through standard configuration updates. In Managed Instances, reducing storage may require a shrink operation to reclaim unused space before reallocation is permitted. Without regular review, these overprovisioned environments persist as silent cost contributors.

Outdated Azure App Service Plan
Compute
Cloud Provider
Azure
Service Name
Azure App Service
Inefficiency Type
Outdated Resource

Applications running on App Service V2 plans may incur higher operational costs and degraded performance compared to V3 plans. V2 uses older hardware generations that lack access to platform-level enhancements introduced in V3, including improved cold start times, faster scaling, and enhanced networking options.

This inefficiency often arises from legacy deployments or default provisioning choices that haven't been revisited. Without proactive review, teams may continue running production workloads on suboptimal infrastructure—paying more for less performance.

Idle Azure App Service Plan Without Deployed Applications
Compute
Cloud Provider
Azure
Service Name
Azure App Service
Inefficiency Type
Unused Resource

App Service Plans continue to incur charges even when no applications are deployed. This can occur when applications are deleted, migrated, or retired, but the associated App Service Plan remains active. Without ongoing workloads, these idle plans become silent cost contributors — especially in higher-cost SKUs like Premium v3 or Isolated v2.

In large or decentralized environments, unused plans can accumulate quickly if cleanup is not automated or routinely enforced. These idle plans offer no functional value but continue to consume compute resources and generate operational expense.

Idle Azure SQL Elastic Pool Without Databases
Databases
Cloud Provider
Azure
Service Name
Azure SQL
Inefficiency Type
Unused Resource

An Azure SQL Elastic Pool continues to incur costs even if it contains no databases. This can occur when databases are deleted, migrated to single-instance configurations, or consolidated elsewhere — but the pool itself remains provisioned. In such cases, the pool becomes an idle resource consuming budget without delivering value.

This inefficiency often goes undetected in large or decentralized environments where cleanup workflows are manual or inconsistent. Since the pool reserves compute and storage regardless of usage, it silently contributes to unnecessary spend over time.

Missing S3 Gateway Endpoint for Intra-Region EC2 Access
Storage
Cloud Provider
AWS
Service Name
AWS S3
Inefficiency Type
Inefficient Configuration

When EC2 instances within a VPC access Amazon S3 in the same region without a Gateway VPC Endpoint, traffic is routed through the public S3 endpoint and incurs standard internet egress charges — even though it remains within the AWS network. This results in unnecessary egress charges, as AWS treats this traffic as data transfer out to the internet, billed under the S3 service.

By contrast, provisioning a Gateway Endpoint for S3 allows traffic between EC2 and S3 to flow over the AWS private backbone at no additional cost. This configuration is especially important for data-intensive applications, such as analytics jobs, backups, or frequent uploads/downloads, where the cumulative data transfer can be substantial.

Because the egress cost is billed under S3, it is often misattributed or overlooked during EC2 or networking reviews, leading to silent overspend.

Suboptimal Cross-AZ Routing to NAT Gateway
Networking
Cloud Provider
AWS
Service Name
AWS NAT Gateway
Inefficiency Type
Inefficient Configuration

NAT Gateways are designed to serve private subnets within the same Availability Zone. When subnets in one AZ are configured to route traffic through a NAT Gateway in a different AZ, the traffic crosses AZ boundaries and incurs inter-AZ data transfer charges in addition to the standard NAT processing fees.

This typically happens when:

* NAT Gateways are deployed in multiple AZs (as recommended for resilience), but * Route tables for all subnets are configured to send traffic to a single NAT Gateway, ignoring AZ placement

In high-throughput environments, this misalignment silently generates excess cost. Ensuring that each subnet routes through the NAT Gateway in its own AZ avoids inter-AZ charges and aligns with AWS architectural best practices.

Suboptimal Use of Search Optimization Service
Other
Cloud Provider
Snowflake
Service Name
Snowflake Search Optimization Service
Inefficiency Type
Suboptimal Configuration and Usage

Search Optimization can enable significant cost savings when selectively applied to workloads that heavily rely on point-lookup queries. By improving lookup efficiency, it allows smaller warehouses to satisfy performance SLAs, reducing credit consumption.

However, inefficiencies arise when:

  • Search Optimization is not enabled on critical lookup-heavy tables, forcing oversized warehouses.
  • It is enabled unnecessarily on infrequently queried data, adding avoidable costs.
  • Warehouse sizing is not adjusted after Search Optimization is implemented, missing the primary cost-saving opportunity.

Regular review of query patterns and warehouse sizing is essential to maximize the intended benefit of Search Optimization.

Unconverted Convertible EC2 Reserved Instances
Compute
Cloud Provider
AWS
Service Name
AWS EC2
Inefficiency Type
Misconfigured Reservation

Convertible Reserved Instances provide valuable pricing flexibility — but that flexibility is often underused. When EC2 workloads shift across instance families or OS types, the original RI may no longer apply to active usage. If the RI is not converted, the customer continues paying for unused commitment despite having the ability to adapt it.

Because conversion is a manual process and requires matching or exceeding the original RI’s value, many organizations fail to optimize their coverage. Over time, this leads to growing pools of ineffective RIs that could have been aligned to real workloads.

Underutilized RDS Commitment Due to Workload Drift
Databases
Cloud Provider
AWS
Service Name
AWS RDS
Inefficiency Type
Overcommitted Reservation

RDS workloads often evolve — changing engine types, rightsizing instances, or shifting to Aurora or serverless models. When these changes occur after Reserved Instances have been purchased, the existing commitments may no longer match active usage. This results in silent overspend, as underutilized RIs continue billing without offsetting usage.

Unlike Convertible EC2 RIs, RDS RIs cannot be exchanged. Selling unused RDS RIs is not supported. In rare cases, AWS Support may approve a goodwill adjustment, but this is not guaranteed. The most effective way to recover value is to steer eligible workloads back toward the reserved configuration.

There are no inefficiency matches the current filters.