SST vs Serverless Framework
The modern infrastructure-as-code tool versus the OG serverless deployment framework. One uses real programming languages. One uses YAML.
The short answer
SST over Serverless Framework for most cases. SST is what Serverless Framework should have become.
- Pick SST if building on AWS and want TypeScript infrastructure with live debugging. New projects should default to SST
- Pick Serverless Framework if need multi-cloud support, have existing Serverless Framework projects, or depend on specific community plugins
- Also consider: AWS CDK is the middle ground ā TypeScript infra from AWS directly, but without SST's developer experience features like live debugging.
ā Nice Pick, opinionated tool recommendations
The Serverless Deployment Problem
Writing a Lambda function is easy. Deploying it with API Gateway, a custom domain, DynamoDB tables, S3 buckets, IAM roles, and CloudFront distributions is painful.
Both SST and Serverless Framework solve this. They abstract away the CloudFormation hell and give you higher-level constructs. But they do it very differently.
Why SST Wins
SST (v3) uses Pulumi under the hood and lets you define infrastructure in TypeScript:
`typescript
const api = new sst.aws.ApiGatewayV2("Api");
api.route("GET /", "src/handler.main");
`
Real code. Real types. Real IDE support. If you can write TypeScript, you can write infrastructure.
The killer feature: sst dev connects your local machine to a live AWS environment. Set a breakpoint in your Lambda, trigger it, and debug locally. No deploy-test-deploy cycle.
Serverless Framework: Showing Its Age
Serverless Framework uses serverless.yml. It's YAML with magic variables and plugins.
The plugin ecosystem is both its strength and weakness. Need something? There's a plugin. Is it maintained? Maybe. Does it conflict with other plugins? Probably.
Serverless Framework v4 introduced a paid tier for large teams. The community didn't love this. SST is open source with no usage-based pricing.
The Ecosystem Shift
SST isn't just for Lambda anymore. v3 expanded to support:
⢠Containers (ECS, Fargate) ⢠Static sites (CloudFront + S3) ⢠Cron jobs ⢠Queues (SQS) ⢠Topics (SNS) ⢠Auth (Cognito, OIDC)
It's becoming a full-stack deployment tool, not just a serverless one. The name SST (formerly Serverless Stack) no longer limits its scope.
Quick Comparison
| Factor | SST | Serverless Framework |
|---|---|---|
| Config Language | TypeScript | YAML |
| Local Development | Live Lambda (sst dev) | Offline plugin (flaky) |
| Type Safety | Full TypeScript | None (YAML) |
| Plugin Ecosystem | Components (growing) | 1000+ plugins (mature) |
| Multi-Cloud | AWS-focused (Pulumi capable) | AWS, Azure, GCP |
| Pricing | Free and open source | Free tier + paid plans |
| Documentation | Excellent | Good |
| Community | Growing fast | Large but fragmented |
The Verdict
Use SST if: You're building on AWS and want TypeScript infrastructure with live debugging. New projects should default to SST.
Use Serverless Framework if: You need multi-cloud support, have existing Serverless Framework projects, or depend on specific community plugins.
Consider: AWS CDK is the middle ground ā TypeScript infra from AWS directly, but without SST's developer experience features like live debugging.
SST vs Serverless Framework: FAQ
Is SST or Serverless Framework better?
SST is the Nice Pick. SST is what Serverless Framework should have become. Real TypeScript for your infrastructure, live Lambda debugging, and a component model that actually makes sense. Serverless Framework had its moment, but SST is the future of serverless deployment.
When should you use SST?
You're building on AWS and want TypeScript infrastructure with live debugging. New projects should default to SST.
When should you use Serverless Framework?
You need multi-cloud support, have existing Serverless Framework projects, or depend on specific community plugins.
What's the main difference between SST and Serverless Framework?
The modern infrastructure-as-code tool versus the OG serverless deployment framework. One uses real programming languages. One uses YAML.
How do SST and Serverless Framework compare on config language?
SST: TypeScript. Serverless Framework: YAML. SST wins here.
Are there alternatives to consider beyond SST and Serverless Framework?
AWS CDK is the middle ground ā TypeScript infra from AWS directly, but without SST's developer experience features like live debugging.
SST is what Serverless Framework should have become. Real TypeScript for your infrastructure, live Lambda debugging, and a component model that actually makes sense. Serverless Framework had its moment, but SST is the future of serverless deployment.
Related Comparisons
Disagree? nice@nicepick.dev