Skip to content
MKMukesh Kasliwal
All case studies
Deployment · Cost

Moving off Laravel Vapor to ECS cut the AWS bill by a third

  • ECS
  • GitHub Actions
  • Auto Scaling
  • Load Balancer
  • CloudFront
01Problem

The challenge

The client was running a PHP SaaS platform on Laravel Vapor. Vapor trades infrastructure control for convenience — it runs the application on Lambda behind API Gateway and bills per invocation, which gets expensive at steady, predictable traffic rather than spiky traffic. There was no way to right-size compute, no visibility into what was actually driving the bill, and every deploy went through Vapor's own pipeline rather than one the team could inspect or change.

02Architecture

How it fits together

Moving off Laravel Vapor to ECS cut the AWS bill by a third — full architectureAWS ClouddeployUsersinternet clientsLoad Balancerhealth checksECS Serviceauto scaling tasksRDSapplication databaseGitHub Actionsbuild + deployECRcontainer imagesCloudFrontCDN + TLS
03Solution

What I built

Move the application onto containers on ECS, with GitHub Actions handling builds and deploys instead of a managed platform.

01

ECS

Containers

The application runs as a task definition on ECS, so the exact CPU and memory it gets is a number in a config file, not whatever Vapor decided to allocate.

02

GitHub Actions

CI/CD

Pushing to main builds the image, pushes it to ECR, and rolls out a new ECS task definition — a pipeline the team can read and change themselves.

03

Auto Scaling

Capacity

ECS service auto scaling adds and removes tasks against real CPU and request-count targets, so capacity tracks actual load instead of a serverless platform's per-request pricing.

04

Application Load Balancer

Traffic

Routes incoming requests across the running tasks and handles health checks, so a bad deploy or a stalled task gets pulled out of rotation automatically.

05

CloudFront

CDN

Sits in front of the load balancer for static assets and TLS termination at the edge.

04Outcomes

What it delivered

Lower AWS bill

Monthly AWS spend dropped from $600–700 to $400 — and has held there for several months, not just the first billing cycle after the move.

Predictable deploys

GitHub Actions replaced a black-box managed pipeline with one the team can read, change, and debug when something goes wrong.

Right-sized capacity

ECS task sizing and auto scaling targets are set deliberately, not left to whatever a serverless platform decided to bill for.

The cost drop wasn't a one-time migration discount — it's the difference between paying for a serverless convenience tax on steady traffic and paying for the compute actually being used.

Want this level of ownership on your AWS?

The audit is free and the findings are yours to keep. If an ongoing arrangement makes sense after that, the tiers are published.