See how much you can save by scheduling your non-production instances to automatically shut down during off-hours.
AWS bills grow quietly. EC2 and RDS instances that power your dev, staging, and QA environments keep running through nights and weekends, even when nobody is using them. The calculator above gives you a realistic picture of what that costs and what you could save by scheduling those resources to stop automatically.
The average engineering team's non-production infrastructure runs for roughly 168 hours per week. In practice, developers use those environments for around 50 hours — normal working hours across five days. That leaves more than 100 hours per week where the instances are running but idle.
AWS charges by the hour (or second, for some instance families). Every hour an idle instance runs is an hour you're paying for directly. Unlike reserved capacity purchases, there's no commitment discount that offsets this — on-demand instances billed during off-hours are pure waste.
If your non-production instances are off for nights and weekends, they run for approximately 60 hours out of every 168-hour week — about 36% of the time. That means you're paying for 64% of the hours when nobody is using them.
The calculator takes your current EC2 and RDS instance types and their on-demand hourly costs, then models two scenarios: always-on versus a standard schedule where instances are only running during working hours. It applies the schedule to your selected region's pricing and shows the monthly and annual delta.
The default schedule — 8am to 8pm Monday through Friday — represents a conservative estimate. Many teams run tighter schedules (7am to 7pm, for example, or 9am to 6pm) and save even more. You can adjust the hours in the calculator to match your actual working pattern.
| Setting | Conservative | Typical | Aggressive |
|---|---|---|---|
| Hours/day | 12 | 10 | 8 |
| Days/week | 5 | 5 | 4 |
| Weekly runtime | 60 hrs | 50 hrs | 32 hrs |
| Potential saving | ~64% | ~70% | ~81% |
Pricing data in the calculator uses standard AWS on-demand rates for the most common instance families. Actual savings will vary depending on whether you're using Savings Plans, Reserved Instances, or Spot pricing for your non-production workloads — though in most cases, scheduled shutdown stacks on top of those discounts rather than replacing them.
Savings potential varies significantly depending on how many environments you run and how large they are. The table below shows approximate monthly savings for common setups based on an 8am–8pm weekday-only schedule.
| Environment | Typical Setup | Monthly Cost (always-on) | Monthly Cost (scheduled) | Saving |
|---|---|---|---|---|
| Small dev | 2× m5.large | $138 | $50 | $88 |
| Dev + staging | 4× m5.large + 1× RDS db.t3.medium | $415 | $149 | $266 |
| Full pre-prod | 8× mixed EC2 + 2× RDS | $1,200 | $430 | $770 |
| Large team | 15+ instances across envs | $3,000+ | $1,080+ | $1,920+ |
These figures assume on-demand pricing in us-east-1. Your numbers will differ based on region, instance mix, and storage costs, but the proportional saving — typically 60 to 70 percent on compute — holds across configurations.
RDS instances are often the biggest line item in non-production AWS bills. A single db.r5.large running around the clock costs over $300/month. Scheduling it to run only during working hours cuts that to around $110.
Instance scheduling delivers fast, repeatable savings, but it's one part of a broader cost optimisation strategy. Once you've captured the easy wins from scheduled shutdowns, the next layer typically involves right-sizing and commitment-based discounts.
Right-sizing means identifying instances that are consistently using less CPU and memory than they're provisioned for and moving them to smaller types. ServerScheduler's EC2 right-sizing recommendations surface these opportunities automatically, showing you which instances are oversized and what a downsize would save. Pairing right-sizing with scheduling is the fastest path to meaningful cost reduction.
For workloads that do run continuously — production systems, for example — AWS Savings Plans offer up to 72% off on-demand rates in exchange for a one- or three-year usage commitment. ServerScheduler shows you your Savings Plans coverage and where gaps exist so you can make commit decisions with accurate data rather than guesswork.
ServerScheduler connects to your AWS account via a read/write IAM role and gives you a visual interface to set instance schedules across EC2, RDS, and ElastiCache. You define start and stop times per environment, and the platform handles the automation — no scripts, no Lambda functions, no maintenance.
Setup takes around ten minutes. You connect your AWS account, choose which instances to schedule, and set the hours. Schedules can be applied individually or to tagged groups of instances, so you can manage an entire environment — dev, staging, QA — with a single configuration. For teams managing multiple AWS accounts, the multi-account guide explains how to connect all of them from a single dashboard.
Find oversized instances and get specific downsize recommendations.
AWS Savings PlansSee your coverage and savings potential from commitment-based discounts.
How to Reduce AWS CostsA practical guide to cutting your AWS bill across compute, storage, and networking.
Scheduled EC2 Start/StopAutomate EC2 instance start and stop times on a recurring schedule.