Success Story
Yalo optimizes its costs with FinOps on GCP and AWS and reduces its active GKE nodes from ~165 to ~140
At a glance
Yalo is a conversational commerce platform that makes intensive use of microservices on Kubernetes (GKE). Its production cluster had CPU efficiency close to 10% due to overprovisioning, and Datadog was projecting overages of ~USD 3,500/month. Craftech ran an infrastructure assessment and applied FinOps optimizations on Google Cloud Platform and AWS. Average active GKE nodes dropped from ~165 to ~140.
~165 → ~140
average active GKE nodes
~80.4 vCPUs
freed in the first rightsizing batch alone
USD 667/month
less from removing 77 idle disks
Yalo is a conversational commerce platform (engagement platform) that makes intensive use of microservices on Kubernetes (GKE), CloudSQL, Redis, Kafka and Datadog. The project focused on an infrastructure assessment and cost optimizations (FinOps) on Google Cloud Platform and AWS.
Solution implemented
- Conservative vertical rightsizing of more than 120 services in progressive batches, with requests and limits based on actual usage, and autoscaling with HPA
- Python scripts to audit node underutilization
- In-place resizing of Memorystore and CloudSQL after analyzing hit ratio, connections and historical peaks
- Datadog cost containment without touching code: Metrics without Limits, unnecessary percentiles disabled and log exclusion filters
- Safe removal of dozens of orphaned persistent disks
- KEDA for event-driven scaling based on Kafka lag and mixed Spot / On-Demand nodepools
- Tagging standard (service, cost-center, customer, tier) ready for its IaC pipeline
Business Challenge
Yalo's production cluster on GCP had ~157 nodes and CPU efficiency close to 10% due to overprovisioning. In Datadog there were projected overages of ~USD 3,500/month from very high-cardinality custom metrics, 117 times above the plan limit, and from indexing logs with no value. The CloudSQL and Memorystore (Redis) instances had huge capacities, for example 16 vCPUs and 72 GB of RAM, with historical usage below 15%. In addition, the tagging scheme did not allow analyzing costs by customer or by service.
Solution
Craftech applied conservative vertical rightsizing to more than 120 services in progressive batches, adjusting requests and limits to actual usage, with autoscaling (HPA) and Python scripts to audit node underutilization. It resized Memorystore and CloudSQL in place after analyzing hit ratio, connections and historical peaks. In Datadog it contained costs without touching code, with Metrics without Limits, disabling unnecessary percentiles and log exclusion filters. It also safely removed dozens of orphaned persistent disks, added KEDA for event-driven scaling based on Kafka lag, introduced mixed Spot / On-Demand nodepools and left a tagging standard (service, cost-center, customer, tier) ready for its IaC pipeline.
Outcomes
- Average active GKE nodes from ~165 to ~140, with lows of 134
- The first rightsizing batch alone freed ~80.4 vCPUs and ~87.5 GiB of RAM
- USD 667/month less from removing 77 idle disks
Stack & technologies