Build Your MVP This Weekend for $0 on AWS
Everything I shared at AWS Community Day Cebu about shipping real products on the free tier. No surprise bills, just smart architecture choices.
Ship a real MVP this weekend without the surprise bills
I gave this talk at AWS Community Day Cebu on September 13, 2025. The event theme was "Build Beyond Limits" and it was held at UP Cebu Performing Arts Hall. This post covers everything from that session so you can follow along at your own pace.
The Problem We All Face
You've got an idea. You want to build it. But then you start thinking about cloud costs and suddenly you're paralyzed.
What if I rack up a massive bill? What if I pick the wrong architecture? What if, what if, what if...
And the idea just sits there. Unbuilt. Forever.
Sound familiar? Yeah, me too.
The Good News
You can build and deploy a real, working MVP in one weekend. With authentication, a database, file storage, analytics, the whole package. And it'll cost you somewhere between $0 and $5.
This isn't about cutting corners or building something janky. It's about being smart with your architecture choices. AWS Free Tier is genuinely generous if you know how to use it.
What You'll Learn
The MVP Mindset
- Start small: serverless and managed services are your friends
- Ship fast: perfect is the enemy of done
- Track costs: set up billing alerts before you build anything
- Iterate: real user feedback beats imaginary perfect features
What We're Building
A QR Code Generator app. Sounds simple, but it covers all the bases:
- User authentication with Amazon Cognito
- Database storage with DynamoDB
- File storage with S3
- Serverless APIs with Lambda
- Analytics and tracking
- Production deployment with Amplify
Why This Works
The traditional approach looks like this: spend weeks on perfect architecture, write perfect code, build all the features, never actually ship.
The MVP approach: pick a good enough architecture, write working code, build one feature really well, ship it, then iterate based on what real users tell you.
The Architecture
Why Serverless for MVPs?
Serverless is perfect for MVPs because you only pay for what you use. No traffic? No bill. Suddenly go viral? It scales automatically. You don't have to babysit servers, and monitoring comes built in.
Focus on building features, not managing infrastructure.
Weekend Timeline
Here's roughly how your weekend could look:
Saturday Morning (2 hours)
Set up your AWS account and immediately configure billing alerts (seriously, do this first). Bootstrap a Next.js app, deploy it to Amplify, and wire up authentication with Cognito.
Saturday Afternoon (4 hours)
Design your database schema in DynamoDB, build out the core QR generation feature, and throw together a basic UI.
Sunday (3 hours)
Polish everything, test it properly, deploy to production, and share it with your first users.
That's about 9 hours total, and you'll stay well within the free tier.
AWS Free Tier Limits
Here's what you get for free every month:
| Service | Free Limit | Duration | Use Case |
|---|---|---|---|
| Lambda | 1M requests/month | Always free | Your API endpoints |
| DynamoDB | 25GB storage | Always free | All your user data |
| S3 | 5GB storage | 12 months | File uploads |
| Cognito | 10K monthly users | Always free | Authentication |
| API Gateway | 1M calls/month | 12 months | REST APIs |
| CloudFront | 1TB transfer/month | Always free | CDN for your assets |
| Amplify | 5GB hosting + builds | Always free | Deploy and host |
Note: Cognito's free tier changed in late 2024. New user pools created after November 2024 get 10K MAU free (down from 50K for older pools). S3 and API Gateway free tiers expire after your first 12 months, so keep that in mind for longer-running projects.
These limits can comfortably handle 1000+ active users in your first months. By the time you outgrow them, you'll hopefully have revenue to cover the costs.
The QR Code Generator
What exactly are we building? A real SaaS app with:
MVP Features
- User registration and login
- Generate QR codes with custom URLs
- Dashboard showing your QR code history
- Track when your codes get scanned
- Download QR images
What We're NOT Building (Yet)
- Fancy analytics dashboard
- Team collaboration
- Custom QR designs with logos
- Bulk operations
- Developer API
Why such a narrow scope? Because one feature done really well beats ten features done halfway. You can always add more later once real users tell you what they actually want.
Cost Control (Super Important)
Set Billing Alerts FIRST
Before you do anything else, set up billing alerts. Seriously. Do this first.
aws budgets create-budget \
--account-id $(aws sts get-caller-identity --query Account --output text) \
--budget '{
"BudgetName": "Weekend MVP Budget",
"BudgetLimit": {"Amount": "10", "Unit": "USD"},
"TimeUnit": "MONTHLY",
"BudgetType": "COST"
}'
Keep an Eye on Things
Check your AWS bill weekly. If you hit 80% of your budget, start optimizing. If you see unusual spikes, investigate immediately. Don't wait for a surprise bill.
As You Grow
- Starting out ($0/month): Free tier handles 100 to 1000 users just fine
- Getting serious ($5 to $20/month): Add a custom domain, email
- Growing fast ($20 to $100/month): Time to scale up features
Success Metrics
How do you know if your MVP is actually working?
Technical Stuff
- App loads in under 2 seconds
- QR codes generate in under 5 seconds
- 99%+ uptime (serverless makes this pretty easy)
- Works on mobile
Business Stuff
- 10 users in your first week
- 50 QR codes generated
- 100 scans recorded
- At least 1 person gives you feedback (this is gold)
Cost Stuff
- Stay under $5/month
- Check your spending regularly
- Optimize before you need to scale
Implementation Details
Pick Managed Services
Let AWS handle the infrastructure so you can focus on your actual product:
const smartChoice = {
database: 'DynamoDB',
auth: 'Amazon Cognito',
storage: 'S3',
api: 'API Gateway + Lambda',
hosting: 'Amplify',
}
Don't do this to yourself:
const painfulChoice = {
database: 'PostgreSQL on EC2',
auth: 'Custom JWT implementation',
storage: 'EC2 file system',
api: 'Express server on EC2',
hosting: 'Custom nginx setup',
}
You'll spend all your time managing servers instead of building features.
Database Design
type QrItem @model @auth(rules: [{ allow: owner }]) {
id: ID!
targetUrl: String!
s3Key: String!
createdAt: AWSDateTime!
scanCount: Int @default(value: 0)
}
type QrScan @model @auth(rules: [{ allow: public, provider: apiKey }]) {
id: ID!
qrId: String! @index
scanAt: AWSDateTime!
userAgent: String
}
Simple, and it respects user privacy. That's all you need to start.
What You'll Have by Sunday
By the time you close your laptop Sunday evening, you'll have:
A Real Product
- Working auth system
- Database with real data
- File storage with CDN
- Analytics and tracking
- Mobile responsive UI
- Live in production
Actual Skills
- AWS Amplify development
- Serverless architecture patterns
- React/Next.js best practices
- Database design
- Cost monitoring
A Foundation to Grow
- Modern architecture that scales
- Industry standard tech stack
- Something real for your portfolio
- Real users giving real feedback
Ready to Build?
Don't let this become another tutorial you bookmark and forget. Pick a weekend and actually ship something.
Key Takeaways
- Start small: one feature done well beats ten done poorly
- Ship fast: real feedback beats perfect features every time
- Use managed services so you can focus on your product instead of infrastructure
- Set billing alerts before you create anything
- Build, ship, get feedback, repeat
The best time to ship was last weekend. The second best time is this weekend.
Resources
Community: AWS Amplify Discord
Huge thanks to AWS User Group Cebu for having me, to all the volunteers who made the event happen, and to everyone who showed up. The energy at UP Cebu was incredible. And if you're hesitant about starting small, remember that every iteration gets you closer to something real.