A client came to us with a monthly AWS bill that had grown 3x in eighteen months while traffic had grown about 40%. Over six weeks we brought spend down 41% with no measurable change in latency or availability. Nothing here is exotic — it is the same list every time, worked patiently.
Start by finding out what you are actually paying for
Before changing anything, enable Cost Explorer with daily granularity and tag every resource by environment and service owner. In this account, 22% of spend was on resources nobody could name. You cannot optimise an anonymous bill.
The forgotten NAT gateway
One NAT gateway in an unused staging VPC had been running for fourteen months. It cost more than the entire staging environment it served.
Idle infrastructure is almost always the largest single win and the easiest. Unattached EBS volumes, old snapshots, load balancers with no targets, dev environments running through the weekend. This category alone was 11% of the bill.
Rightsizing beats reserving
It is tempting to buy Savings Plans immediately, but committing to oversized instances just locks in waste at a discount. We rightsized first, using two weeks of CloudWatch data. Most application servers were running at 8–14% CPU on instances chosen during a traffic spike two years earlier.
- Move steady-state workloads to Graviton where the runtime supports it — typically 20% cheaper for equal or better performance.
- Rightsize based on p95 utilisation, not peak, then let auto-scaling handle the rest.
- Only after rightsizing, buy Compute Savings Plans for the stable baseline.
Storage tiering is free money
S3 Intelligent-Tiering required a single configuration change and cut storage cost 34% on a bucket holding seven years of documents that were almost never read after month three. Separately, RDS snapshots older than the retention policy had never actually been deleted.
Data transfer is the invisible line item
Cross-AZ chatter between an application tier and its database in a different availability zone was quietly generating a four-figure monthly charge. Co-locating them and putting CloudFront in front of static assets removed most of it.
Make it stick
A one-off cleanup regresses within a year. We left the client with a monthly cost review in the sprint calendar, budget alarms per environment, mandatory tagging enforced at deploy time, and automatic shutdown of non-production environments outside working hours. The last one saves 60% of dev and staging spend on its own.
Frequently Asked Questions
Cost depends on scope, integrations and compliance requirements. A business website typically starts around ₹60,000, a mobile app around ₹4,00,000, and a custom ERP from ₹8,00,000. We provide a fixed, milestone-based quote after a free consultation so there are no surprises mid-project.
A marketing website ships in 3–5 weeks. Mobile apps and custom web applications typically run 8–16 weeks. ERP and AI platforms usually take 12–24 weeks depending on module count. You receive a milestone plan with dates before development begins.
Our core stack is Laravel, PHP, Node.js, React, Next.js, Vue and WordPress for web; Flutter and React Native for mobile; Python, LangChain and OpenAI for AI; and AWS with Docker for infrastructure. We recommend the stack that fits your team and budget, not the one we happen to prefer.
