DB Design for a Startup: Keep It Simple

You aren't Google, and that's perfectly fine

95% of applications will never need distributed databases. Start with PostgreSQL and focus on your product.

Start Simple: The Reality of Database Scale

Start Simple: Database Reality Check Most applications never need distributed databases 95% of Apps Managed PostgreSQL < 100GB Data < 1000 requests/sec PostgreSQL 🌍 Data Residency Solved EU (GDPR) • US • Asia-Pacific Just select region in console Providers: AWS RDS • Google Cloud SQL Azure Database • Supabase $25 - $100/month Zero ops, full compliance Top 5% of Apps Scaled PostgreSQL 100GB - 10TB Data 1K - 10K requests/sec Primary + Replicas Read 1 Read 2 Cache Example: Notion PostgreSQL + replicas at $10B valuation Solutions: Aurora • AlloyDB • Citus Still single logical database $500 - $5K/month Some ops, mostly managed Top 1% Only Truly Distributed > 10TB Data > 10K requests/sec Shard 1 Shard 2 Shard 3 ...N ⚠️ High operational complexity Actually needed when: • Global < 50ms latency required • Database team of 5+ engineers Examples: Spanner • DynamoDB • Cassandra $10K+/month Plus dedicated ops team 💡 Pro tip: Let managed services handle regions, compliance, and scaling. Focus on your product.

Proof It Works

Company Exit Value Database Strategy
Instagram $1B PostgreSQL until acquisition
WhatsApp $19B PostgreSQL handled 900M users
Notion $10B valuation Still on PostgreSQL + replicas
Stack Overflow Still thriving 4 SQL Servers, 1.3B pageviews/month
💰 The $120B Database Market (2024) $50B Single Instance PostgreSQL • MySQL RDS • Azure SQL • Cloud SQL Millions of apps $70B Distributed/Scale Aurora • Spanner • DynamoDB BigQuery • Snowflake • Cosmos DB Trillions in transactions 95% of apps 90% of revenue Top 7 vendors control 91% of $120B market AWS $27B Microsoft $25B Oracle $18B Google $10B Snow $4B IBM $4B DBX $3B 100+ Others ~$10B The paradox: 95% of apps run on single instances, but the top 1% drive most database revenue Source: Gartner 2023 Database Market Analysis

When to Actually Scale

Clear Signals (Not Hunches)

  1. Your database vendor tells you: AWS RDS has a max instance size. When you hit it, time to consider options.

  2. Costs become unreasonable: If database costs exceed $10K/month on a single instance

  3. Global latency requirements: Users in Australia complaining about 500ms latency

  4. Sustained load, not spikes: Consistent 10K+ requests/second (not Black Friday spikes)

The Progressive Enhancement Path

Level 1: Managed PostgreSQL (AWS RDS, Cloud SQL) → Product-market fit  
Level 2: Add Redis + read replicas OR AWS Aurora or Goog AlloyDB → Scale phase
Level 3: Custom sharding → Only if you're Uber

Three Rules for Startup Success

1. PostgreSQL + Managed Services

Provider Starting Price Best For
AWS RDS $15/month Full AWS ecosystem
Google Cloud SQL $7/month GCP users
Azure Database $5/month Microsoft shops
Supabase Free tier Rapid prototyping
Neon Free tier Serverless PostgreSQL

2. Design for 10x, Not 1000x

3. Monitor These 3 Metrics

Common Startup Mistakes to Avoid

❌ Mistake 1: Over-Engineering from Day One

# DON'T DO THIS for your MVP
architecture = {
    'microservices': 12,
    'databases': ['PostgreSQL', 'MongoDB', 'Redis', 'Elasticsearch'],
    'message_queues': ['Kafka', 'RabbitMQ'],
    'orchestration': 'Kubernetes',
    'team_size': 2  # 
}

# DO THIS instead
architecture = {
    'monolith': 'React + PostgreSQL',
    'deployment': 'Vercel' or 'GCP' or 'AWS',
    'team_size': 2  # 
}

❌ Mistake 2: Don't paint yourself into NoSQL corner for Wrong Reasons; use JSONB

// DocumentDBs OR NoSQL DBs: Great for MVPs AND real-time (e.g., Firebase, MongoDB)
// But Harder for transactions & joins
// PostgreSQL JSON: Best of both worlds

// Instead of MongoDB documents:
CREATE TABLE orders (
  id SERIAL PRIMARY KEY,
  user_id INTEGER REFERENCES users(id),
  items JSONB,  -- Flexible schema for prototyping where needed
  created_at TIMESTAMP
);
// Get consistency + flexibility

❌ Mistake 3: DIY Database Management

Every hour spent on database ops is an hour not spent on your product. Use AWS RDS, Cloud SQL, or Azure Database. Period.

The Only Takeaway You Need

PostgreSQL on AWS RDS/Cloud SQL/Azure will handle your first 10 million users.

Stop worrying about scale. Start worrying about product-market fit.