SnoozeDB vs AWS Instance Scheduler
Two approaches to scheduling your AWS databases. One requires CloudFormation, DynamoDB, and ongoing maintenance. The other connects in 2 minutes.
What Is AWS Instance Scheduler?
AWS Instance Scheduler is an open-source solution maintained by AWS that deploys a CloudFormation stack to automatically start and stop EC2 and RDS instances based on schedules defined in DynamoDB.
It's free (excluding Lambda + DynamoDB infrastructure costs) and works, as long as you have the in-house skills to deploy, configure, and maintain it.
The problem? For most teams, the real cost isn't on the AWS bill, it's in engineering time.
Why Look for an Alternative?
Complex and Fragile Setup
Deploying Instance Scheduler requires launching a CloudFormation stack (~20 resources), configuring periods and schedules in DynamoDB, then manually tagging each instance with the right key.
Every schedule change goes through aws scheduler-cli or a direct DynamoDB update. There is no visual interface for non-developers.
No User Interface
This is the biggest weakness. When a developer needs to extend a database for an evening deployment, they have to modify an AWS tag or use the CLI.
The result: they ask you on Slack. You interrupt your work. Context-switching is expensive.
The Maintenance Burden
Instance Scheduler runs on AWS Lambda. You're responsible for runtime updates, dependency management, and any CloudFormation API changes.
The project has been rewritten several times by AWS. Each major version involves a stack migration that can break existing schedules.
Unhandled Edge Cases
Instance Scheduler handles basic time slots, but common scenarios remain problematic:
- Holidays: no built-in holiday calendar; you have to manually exclude dates.
- Snapshot conflicts: if an automatic backup is running, the
StopDBInstancecall fails silently. - Multi-account: requires a cross-account role per AWS account, deployed independently.
- Visibility: no dashboard to view schedule status or realized savings.
Detailed Comparison
| Criteria | AWS Instance Scheduler | SnoozeDB |
|---|---|---|
| Setup | CloudFormation stack + DynamoDB + manual tagging | Read-only AWS connection, 2 minutes |
| User interface | None (CLI + tags) | Web dashboard for the whole team |
| Developer self-service | No: DevOps intervention required | Yes: one-click unlock |
| AWS multi-account | Manual cross-account roles | Native, no CloudFormation |
| Schedule configuration | DynamoDB (JSON/CLI) | Visual drag-and-drop interface |
| Savings dashboard | No | Yes, with CO₂ impact estimation |
| Tag management | Required (tag every instance) | Optional (Magic Tags or UI) |
| Audit trail | CloudTrail (raw) | Built-in with user context |
| Maintenance | Lambda runtime + CloudFormation stack to maintain | Zero: managed SaaS |
| Cost | "Free" + Lambda + DynamoDB + engineering time | From $29/month, all-inclusive |
| EC2 support | Yes | Rolling out soon |
Who Is Each Solution For?
AWS Instance Scheduler is a fit if:
- You have a dedicated DevOps team with available bandwidth
- You're comfortable with CloudFormation and DynamoDB
- Your developers never need exceptions or ad-hoc unlocks
- You don't need visibility into realized savings
SnoozeDB is a fit if:
- You want to be up and running in 2 minutes, no CloudFormation
- Your developers need to manage their own databases
- You manage multiple AWS accounts
- You want a savings and environmental impact dashboard
- You'd rather delegate maintenance to a managed tool
Frequently Asked Questions
- Is AWS Instance Scheduler really free?
- The code is open-source, but you pay for the underlying AWS resources (Lambda, DynamoDB, CloudWatch) and, more importantly, the engineering time to deploy, configure, and maintain it. This hidden cost often exceeds $1,000 per year.
- Can I migrate from Instance Scheduler to SnoozeDB?
- Yes. SnoozeDB automatically scans your RDS instances upon connection. You don't need to recreate your schedules: SnoozeDB detects databases and suggests a default schedule you can adjust in one click.
- Does SnoozeDB work with EC2?
- EC2 support is currently being rolled out. SnoozeDB currently manages RDS instances across all AWS regions.
- How does SnoozeDB access my AWS account?
- Via a cross-account IAM role with read-only access (DescribeDBInstances) and limited write permission (StartDBInstance, StopDBInstance). No data from your databases is ever read or transferred.
- Can I use both solutions together?
- Technically yes, but it's not recommended. Both tools may conflict (one starts what the other stops). We advise removing Instance Scheduler tags before enabling SnoozeDB.
- Is SnoozeDB GDPR compliant?
- Yes. SnoozeDB collects no data from your databases. Only infrastructure metadata (instance IDs, regions, tags) is processed. Data is hosted in Europe.
Ready to Replace Your Instance Scheduler?
Connect your read-only AWS account. SnoozeDB detects your RDS databases and suggests a schedule in 2 minutes.
No commitment, free cancellation during the trial.