What is an MVP (Really)?
An MVP is not:
- A prototype or mockup
- A feature-complete product
- Something you’re embarrassed to show
An MVP is:
- A functional product that solves one core problem
- Something users can actually use and pay for
- A tool for learning, not impressing
The MVP test: Can a user accomplish their primary goal with your product? If yes, ship it.
The MVP Development Timeline
| Phase | Duration | Deliverable |
|---|---|---|
| Discovery | 1 week | PRD, user stories, tech decisions |
| Design | 1 week | Wireframes, basic UI (not pixel-perfect) |
| Development | 3-5 weeks | Working product |
| Testing | 3-5 days | Bug fixes, edge cases |
| Launch | 2-3 days | Deployment, monitoring |
Total: 6-8 weeks
If someone tells you an MVP takes 6 months, they’re not building an MVP.
Tech Stack Recommendation (2025)
For 90% of MVPs, this stack works:
Frontend: Next.js 14+ (App Router)
Backend: Next.js API Routes or Supabase Edge Functions
Database: Supabase (Postgres)
Auth: Supabase Auth or Clerk
Payments: Stripe
Hosting: Vercel
Storage: Supabase Storage or Cloudflare R2
Email: Resend or Loops
Analytics: PostHog or Amplitude
Why this stack?
- Fast development (great DX)
- Generous free tiers
- Scales without re-architecture
- Huge community = easy to find help
- You can hire developers who know it
When to use different stacks
| Use Case | Recommendation |
|---|---|
| Standard SaaS | Next.js + Supabase |
| AI-heavy product | Python backend + Next.js frontend |
| Mobile-first | React Native or Flutter |
| High-traffic consumer | Next.js + PlanetScale |
| Enterprise/complex | Custom architecture (not an MVP) |
Scoping Your MVP
The #1 mistake: building too much.
The One-Feature Framework
Answer this: What is the ONE thing users must be able to do?
Examples:
- Calendly: Book a meeting
- Dropbox: Upload and share a file
- Stripe: Accept a payment
- Slack: Send a message to a team
Everything else is nice-to-have for v1.
Feature Prioritization Matrix
| Feature | Core to Value? | Build Now |
|---|---|---|
| User authentication | Yes | Yes |
| The main action | Yes | Yes |
| Settings page | No | No |
| Admin dashboard | No | No |
| Mobile app | No | No |
| Integrations | No | No |
| Custom branding | No | No |
Rule: If it’s not directly tied to the user completing their main task, cut it.
Cost Breakdown
DIY (Technical Founder)
| Item | Cost |
|---|---|
| Domain | $12/year |
| Vercel | Free tier |
| Supabase | Free tier |
| Stripe | 2.9% + $0.30 per transaction |
| Your time | 200-400 hours |
Total: $50-500 (excluding your time)
With an Agency
| Complexity | Timeline | Cost |
|---|---|---|
| Simple (landing + 1 feature) | 3-4 weeks | $10-20K |
| Standard (auth + core features) | 6-8 weeks | $25-40K |
| Complex (multiple user types, integrations) | 10-12 weeks | $50-80K |
Note: If you’re quoted $100K+ for an MVP, find another agency.
What affects cost?
Increases cost:
- Custom design (vs. using templates)
- Multiple user roles
- Real-time features
- Third-party integrations
- Mobile apps (in addition to web)
Decreases cost:
- Using component libraries (shadcn/ui)
- Single user type
- Standard CRUD operations
- Web-only initially
The Build Process (Week by Week)
Week 1: Discovery & Planning
Deliverables:
- User personas (1-2 max)
- User journey map (main flow only)
- Feature list (prioritized)
- Tech stack decision
- Database schema (rough)
Don’t:
- Spend weeks on this
- Create 50-page PRDs
- Design every screen in detail
Week 2: Design & Setup
Deliverables:
- Wireframes for core screens (5-10 screens)
- Project setup (repo, CI/CD, staging environment)
- Database schema (final)
- Auth flow working
Tools:
- Design: Figma (use templates)
- Components: shadcn/ui, Radix
- Project: Linear or GitHub Issues
Weeks 3-5: Development
Focus:
- Core feature first, always
- Working > pretty
- Deploy daily to staging
- Get feedback as you build
Daily rhythm:
Morning: Build features
Afternoon: Test + fix bugs
Evening: Deploy to staging
Week 6: Polish & Prep
Deliverables:
- Bug fixes
- Error handling
- Loading states
- Basic analytics
- Payment integration (if applicable)
Week 7: Launch
Launch checklist:
- Production environment ready
- Domain configured
- SSL working
- Monitoring setup (Sentry, LogRocket)
- Analytics tracking
- Payment processing tested
- Basic SEO (title, description, OG image)
- Legal pages (Privacy, Terms)
Common Mistakes
1. Building in Stealth for 12 Months
Problem: No user feedback, building wrong thing Solution: Launch in 6-8 weeks, iterate publicly
2. Perfect Design Before Code
Problem: Wastes time, delays validation Solution: Design as you build, use component libraries
3. Building Mobile + Web
Problem: 2x the work, 2x the bugs Solution: Web first, mobile later (or PWA)
4. Custom Everything
Problem: Slow, expensive, unnecessary Solution: Use off-the-shelf solutions (Stripe, Auth0, etc.)
5. No Launch Plan
Problem: Build it but nobody comes Solution: Build waitlist while building product
Post-MVP: What’s Next?
After launch, focus on:
- Metrics - Are people using it? Where do they drop off?
- Feedback - Talk to every user. What’s missing?
- Iteration - Weekly releases based on feedback
- Growth - Only after product-market fit signals
Signs of product-market fit:
- Users return without prompting
- Users recommend to others
- Users complain when it’s down
- Users pay without heavy discounting
Key Takeaways
- An MVP is NOT a prototype—it’s a functional product with one core feature
- Timeline: 4-8 weeks. If longer, you’re overbuilding
- Tech stack for speed: Next.js, Supabase, Vercel, Stripe
- Cost: $15-50K with an agency, $5-15K if you code yourself
- Launch ugly, validate fast, iterate based on real user feedback
Ready to Build Your MVP?
We’ve built 40+ MVPs and products. Our sweet spot is taking founders from idea to launched product in 6-8 weeks.
Book a call to discuss your project.