Skip to main content

ADR-002: Subscription Model Design

Status: Accepted Date: December 17, 2025 Decision Makers: CODITECT Engineering Team


Context

CODITECT needs a subscription model that supports:

  1. Multiple pricing tiers (Free, Starter, Professional, Enterprise)
  2. Monthly and annual billing
  3. Free trials
  4. Usage-based add-ons
  5. Team/seat-based pricing (future)

Decision

Implement a tiered subscription model with usage metering.

Tier Structure

Free → Starter ($19/mo) → Professional ($49/mo) → Enterprise (Custom)

Key Design Decisions

  1. Annual discount: 2 months free (17% discount)
  2. Trial period: 14 days on paid plans
  3. Proration: Enabled for upgrades, none for downgrades
  4. Cancellation: At period end (not immediate)
  5. Usage metering: AI requests, storage overage

Implementation

PLANS = {
"free": Plan(price_monthly=0, limits={"projects": 3, "ai_requests": 100}),
"starter": Plan(price_monthly=1900, limits={"projects": 10, "ai_requests": 1000}),
"professional": Plan(price_monthly=4900, limits={"projects": -1, "ai_requests": 10000}),
"enterprise": Plan(price_monthly=0, limits={"projects": -1, "ai_requests": -1}), # Custom
}

Consequences

Positive

  • Clear upgrade path
  • Predictable revenue
  • Flexible for growth

Negative

  • Usage metering adds complexity
  • Need careful limit enforcement

Document Control:

  • Created: December 17, 2025