Skip to main content

StemBlock AI: Product-Led Growth Transformation Plan

Executive Summary

Transform StemBlock AI from a flat-access educational platform into a Product-Led Growth SaaS with freemium model, persona-specific workspaces, and strategic AI workflow expansion.

Key Objectives:

  1. Implement 3-tier pricing (Community/Team/Enterprise) with clear value differentiation
  2. Add workspace collaboration features for all personas (Student, Coach, Parent, Admin)
  3. Gate AI features with usage limits and tier-based access
  4. Build 4 new AI workflow systems to drive upgrade intent
  5. Enable self-serve signup and upgrades via Stripe integration

Timeline: 14 weeks across 5 implementation phases


Pricing Tier Architecture

Community Tier (FREE)

Target: Individual users exploring the platform

Limits:

  • AI Workflow Runs: 10/month (all workflows combined)
  • Storage: 100MB total
  • History: 30 days retention
  • Collaboration: Solo workspace only

Per-Persona Access:

  • Students: 10 submissions/month, basic AI feedback, personal dashboard
  • Coaches: 1 class (max 10 students), 5 assignments/month, auto-publish grading only
  • Parents: Monitor 1 child, monthly AI summaries
  • Admins: Manage own organization only

Team Tier ($29/month per user)

Target: Small schools, homeschool co-ops, tutoring centers

Limits:

  • AI Workflow Runs: 100/month per user
  • Storage: 10GB per user
  • History: Unlimited
  • Collaboration: Team workspaces with permissions

Enhanced Access:

  • Students: Unlimited submissions, full AI evaluations, peer collaboration
  • Coaches: Unlimited classes, advanced grading (review queue, bulk actions), team workspace
  • Parents: Monitor 3 children, weekly reports, coach messaging
  • Admins: Multi-coach management, org analytics

AI Workflows:

  • Automated Grading: 100 uses/month (full control)
  • Parent Communication: 50 emails/month
  • Learning Paths: 20 generations/month
  • Assignment Creation: 20/month

Enterprise Tier (Custom pricing, $500+/month)

Target: Schools, districts, large organizations

Features:

  • Everything unlimited
  • SSO/SAML integration
  • Custom AI model fine-tuning
  • White-label platform
  • API access
  • Dedicated account manager

Database Schema Changes

New Tables

// Core subscription management
model Subscription {
id String @id @default(uuid())
userId String @map("user_id")
tier SubscriptionTier // COMMUNITY, TEAM, ENTERPRISE
status SubscriptionStatus // ACTIVE, CANCELLED, etc.
billingInterval BillingInterval? // MONTHLY, YEARLY

// Stripe fields
stripeCustomerId String? @unique
stripeSubscriptionId String? @unique

// Dates
currentPeriodStart DateTime
currentPeriodEnd DateTime
trialEnd DateTime?

usageRecords UsageRecord[]
}

// Usage tracking
model UsageRecord {
id String @id @default(uuid())
subscriptionId String
userId String
feature FeatureFlag // AI_GRADING, PARENT_COMMUNICATION, etc.
count Int @default(1)
periodStart DateTime
periodEnd DateTime
}

// Feature limits per tier
model FeatureLimit {
id String @id @default(uuid())
tier SubscriptionTier
feature FeatureFlag
monthlyLimit Int? // null = unlimited
enabled Boolean @default(true)
}

// Workspaces
model Workspace {
id String @id @default(uuid())
name String
type WorkspaceType // PERSONAL, TEAM, ORGANIZATION
ownerId String
members WorkspaceMember[]
resources WorkspaceResource[]
}

// Workspace membership
model WorkspaceMember {
workspaceId String
userId String
role WorkspaceRole // OWNER, ADMIN, MEMBER, VIEWER
permissions WorkspacePermission[] // VIEW, COMMENT, EDIT, etc.
}

// Shared resources in workspace
model WorkspaceResource {
id String
workspaceId String
resourceType ResourceType // ASSIGNMENT, SUBMISSION, FILE, etc.
resourceId String // ID of the actual resource
}

// AI workflow execution history
model WorkflowExecution {
id String
userId String
workflowType WorkflowType // AUTOMATED_GRADING, etc.
inputData Json
outputData Json?
status ExecutionStatus // PENDING, RUNNING, COMPLETED, FAILED
tokensUsed Int?
executionTime Int? // in ms
startedAt DateTime
completedAt DateTime?
}

Key Enums:

  • FeatureFlag: AI_GRADING, PARENT_COMMUNICATION, LEARNING_PATHS, ASSIGNMENT_CREATION, TEAM_WORKSPACE, BULK_OPERATIONS, etc.
  • WorkflowType: AUTOMATED_GRADING, PARENT_COMMUNICATION, LEARNING_PATH, ASSIGNMENT_CREATION

Critical Backend Services

1. Subscriptions Service

File: stemblockai-backend/src/subscriptions/subscriptions.service.ts

Key Methods:

  • getCurrentSubscription(userId) - Get active subscription with usage
  • hasFeatureAccess(userId, feature) - Check tier-based access
  • checkUsageLimit(userId, feature) - Check quota, return remaining
  • recordUsage(userId, feature) - Track feature usage
  • upgradeSubscription(userId, newTier) - Stripe-powered upgrade

2. Feature Gate Guard

File: stemblockai-backend/src/subscriptions/guards/feature-gate.guard.ts

Usage:

@Post(':id/evaluate')
@UseGuards(JwtAuthGuard, FeatureGateGuard)
@RequireFeature(FeatureFlag.AI_GRADING)
async generateEvaluation(@Param('id') submissionId: string) {
await this.subscriptionsService.recordUsage(req.user.id, FeatureFlag.AI_GRADING);
return this.evaluationsService.generateEvaluation(submissionId);
}

Throws ForbiddenException when quota exceeded, includes upgrade prompt.

3. Workspaces Service

File: stemblockai-backend/src/workspaces/workspaces.service.ts

Key Methods:

  • createPersonalWorkspace(userId) - Auto-created on registration
  • createTeamWorkspace(ownerId, name) - Team tier required
  • addMember(workspaceId, userId, role, permissions) - Invite to workspace
  • shareResource(workspaceId, resourceType, resourceId) - Share assignments/files

Four New AI Workflows

Workflow 1: Automated Grading

File: stemblockai-backend/src/workflows/automated-grading/automated-grading.service.ts

Community Tier:

  • Auto-triggers on submission (uses 1 of 10/month quota)
  • Basic feedback only
  • Auto-publishes (no review)

Team/Enterprise Tier:

  • Configurable trigger (immediate/batch/manual)
  • Review queue with bulk operations
  • Custom rubrics
  • Full AI feedback with coach override

Implementation:

  • Extends existing EvaluationsService
  • Adds review queue system
  • Batch processing for Team tier
  • Integration with workspace sharing

Workflow 2: Parent Communication Generator

File: stemblockai-backend/src/workflows/parent-communication/parent-communication.service.ts

Community Tier:

  • 3 pre-built templates (5/month)
  • Copy to clipboard (manual send)

Team/Enterprise Tier:

  • Custom templates (50/month)
  • Direct email sending (SendGrid/Resend)
  • Bulk emails for entire class
  • Scheduled reports (weekly/monthly)
  • Email tracking (Enterprise)

Implementation:

  • AI generates personalized content from student data
  • Template management system
  • Email service integration
  • Bulk operations for Team tier

Workflow 3: Personalized Learning Paths

File: stemblockai-backend/src/workflows/learning-paths/learning-paths.service.ts

Community Tier:

  • View-only basic path (1 generation)
  • Shows next recommended assignment

Team/Enterprise Tier:

  • Full customization (20/month)
  • Interactive visualization
  • Coach can edit milestones
  • Skill gap analysis
  • Progress tracking

Implementation:

  • Performance analysis algorithm (category scores, trends)
  • AI-powered path generation
  • Visual path builder (frontend)
  • Coach customization tools

Workflow 4: Assignment Creation Assistant

File: stemblockai-backend/src/workflows/assignment-creation/assignment-creation.service.ts

Community Tier:

  • Not available

Team/Enterprise Tier:

  • AI-assisted creation (20/month)
  • Parameters: topic, difficulty, type, grade level
  • Generates: title, description, rubric, sample solution
  • Save to team workspace library
  • Reusable templates

Implementation:

  • LLM-powered generation
  • Template management
  • Workspace integration for sharing
  • Rubric builder

Workspace Redesign by Persona

Student Workspace

Personal (All Tiers):

  • My Assignments dashboard
  • Submission history
  • Progress tracker with gamification
  • Achievement badges

Team+ Additions:

  • Peer collaboration spaces
  • Share submissions with classmates
  • Group project workspaces
  • Skill tree visualization
  • Comparison to class averages

Coach Workspace

Personal (All Tiers):

  • My Classes dashboard
  • Assignment creation
  • Review queue
  • Personal assignment library

Team+ Additions:

  • Coach team workspace
  • Shared assignment library (all coaches in org)
  • Collaborative grading
  • Team analytics
  • Coach-to-coach messaging

Parent Workspace

Personal (All Tiers):

  • Children dashboard
  • Progress overview
  • Published evaluations viewer

Team+ Additions:

  • Monitor up to 3 children (Team) or unlimited (Enterprise)
  • Weekly AI reports
  • Direct coach messaging
  • Comparison across children
  • Customizable alerts

Admin Workspace

Personal (All Tiers):

  • User management
  • Basic analytics
  • Billing management

Team+ Additions:

  • Multi-coach management
  • Organization-wide analytics
  • Bulk user operations
  • Custom role definitions (Enterprise)
  • API key management (Enterprise)

Implementation Phases

Phase 1: Foundation (Weeks 1-3)

Goal: Set up pricing infrastructure and feature gating

Week 1: Database Schema

  • Create all new tables (Subscription, UsageRecord, FeatureLimit, Workspace, etc.)
  • Update User model with subscription relation
  • Seed feature_limits with tier definitions
  • Test migrations

Week 2: Subscription Service

  • Create SubscriptionsModule and Service
  • Implement FeatureGateGuard and @RequireFeature decorator
  • Add subscription endpoints (GET /me/subscription, POST /subscriptions/upgrade)
  • Unit tests

Week 3: Workspace Service

  • Create WorkspacesModule and Service
  • Implement workspace endpoints
  • Auto-create personal workspaces on registration
  • Unit tests

Critical Files:

  • stemblockai-backend/prisma/schema.prisma
  • stemblockai-backend/src/subscriptions/subscriptions.service.ts
  • stemblockai-backend/src/subscriptions/guards/feature-gate.guard.ts
  • stemblockai-backend/src/workspaces/workspaces.service.ts

Phase 2: Frontend Tier UI (Weeks 4-5)

Goal: Build pricing pages and upgrade flows

Week 4: Pricing Page

  • Create pricing page with tier comparison
  • Build subscription management dashboard
  • Add usage indicators to all dashboards
  • Build upgrade modals/CTAs

Week 5: Stripe Integration

  • Set up Stripe products and prices
  • Implement StripeService
  • Create checkout session endpoint
  • Handle Stripe webhooks (subscription events)
  • Test payment flow

Critical Files:

  • stemblockai-frontend/app/pricing/page.tsx
  • stemblockai-frontend/components/dashboard/UsageIndicator.tsx
  • stemblockai-frontend/components/modals/UpgradeModal.tsx
  • stemblockai-backend/src/billing/stripe.service.ts

Phase 3: Workspace Features (Weeks 6-8)

Goal: Build collaborative workspaces

Week 6: Personal Workspaces

  • Student/Coach/Parent/Admin personal workspace dashboards
  • Workspace settings

Week 7: Team Workspaces

  • Create team workspace functionality
  • Invite members, permissions management
  • Shared assignment library

Week 8: Collaboration Features

  • Peer review system
  • Comments and annotations
  • Activity feed
  • Notifications system

Critical Files:

  • stemblockai-frontend/app/[role]/workspace/page.tsx (for each role)
  • stemblockai-frontend/app/coach/workspace/team/page.tsx
  • stemblockai-backend/src/collaboration/peer-reviews.service.ts

Phase 4: AI Workflows (Weeks 9-12)

Goal: Build 4 new AI workflow systems

Week 9: Automated Grading Workflow

  • Backend service with review queue
  • Bulk grading operations
  • Frontend grading panel for coaches
  • Workflow configuration UI

Week 10: Parent Communication Generator

  • Backend service with email integration
  • Template management
  • Frontend communication panel
  • Bulk communication UI

Week 11: Personalized Learning Paths

  • Backend service with performance analysis
  • Path generation with LLM
  • Frontend visualization
  • Coach customization interface

Week 12: Assignment Creation Assistant

  • Backend service with template management
  • Rubric generation
  • Frontend creation wizard
  • Workspace integration

Critical Files:

  • stemblockai-backend/src/workflows/automated-grading/automated-grading.service.ts
  • stemblockai-backend/src/workflows/parent-communication/parent-communication.service.ts
  • stemblockai-backend/src/workflows/learning-paths/learning-paths.service.ts
  • stemblockai-backend/src/workflows/assignment-creation/assignment-creation.service.ts
  • Frontend workflow UIs for each

Phase 5: Polish & Launch (Weeks 13-14)

Goal: Testing, migration, and launch

Week 13: Testing

  • End-to-end testing
  • Load testing (concurrent AI requests)
  • Security audit
  • Cross-browser and mobile testing
  • Accessibility audit

Week 14: Migration & Launch

  • Migrate all existing users to COMMUNITY tier
  • 30-day grace period (unlimited access)
  • Send announcement emails
  • Launch pricing page
  • Monitor for issues

Migration Strategy

Existing Users

  • Default tier: All existing users → COMMUNITY tier
  • Grace period: 30 days of unlimited access to explore features
  • After grace period: Enforce COMMUNITY tier limits (10 AI runs/month)

Migration Script

# Run migration
npm run migrate:users-to-community

Creates COMMUNITY subscription for all users without subscriptions.

Communication Plan

Pre-Launch (1 week before):

  • Email: "Introducing New Features: Team Workspaces & AI Workflows"
  • Announce pricing tiers, reassure existing users

Launch Day:

  • Email: "New Features Are Live! Explore Your Free COMMUNITY Tier"
  • Highlight new features, explain limits
  • Offer launch discount (20% off Team tier for 3 months)

Post-Grace Period:

  • Email: "Heads Up: Your Monthly AI Quota Resets Soon"
  • Remind current usage, suggest upgrade

Harvey.ai Insights (Contrast)

Harvey's Approach:

  • Enterprise-only, no free tier
  • Sales-led growth (high-touch)
  • Deep customization per customer
  • $100K+ per customer
  • 500+ customers, $50M ARR

StemBlock AI's PLG Approach (Opposite):

  • Freemium with self-serve upgrades
  • Product-led growth (low-touch)
  • Standardized features with templates
  • $29-500/month per user
  • Target: Thousands of users via viral adoption

Key Lessons:

  • Harvey left market share on table by avoiding freemium
  • PLG requires lower customization, higher standardization
  • Community features drive network effects (Harvey doesn't have)
  • Self-serve checkout essential (Harvey requires sales calls)

Critical Files Summary

Backend (Most Important)

  1. stemblockai-backend/prisma/schema.prisma - Database foundation
  2. stemblockai-backend/src/subscriptions/subscriptions.service.ts - Core subscription logic
  3. stemblockai-backend/src/subscriptions/guards/feature-gate.guard.ts - Feature access control
  4. stemblockai-backend/src/workflows/automated-grading/automated-grading.service.ts - Highest-value workflow
  5. stemblockai-backend/src/workspaces/workspaces.service.ts - Collaboration foundation

Frontend (Most Important)

  1. stemblockai-frontend/app/pricing/page.tsx - Primary conversion point
  2. stemblockai-frontend/components/dashboard/UsageIndicator.tsx - Drives upgrade intent
  3. stemblockai-frontend/components/modals/UpgradeModal.tsx - Self-serve upgrade flow
  4. stemblockai-frontend/components/coach/AutomatedGradingPanel.tsx - Key workflow UI
  5. stemblockai-frontend/app/settings/subscription/page.tsx - Subscription management

Success Metrics

PLG Metrics to Track:

  • Free-to-paid conversion rate (target: 5-10%)
  • Time to first value (target: < 5 minutes)
  • Feature adoption rate (AI workflows)
  • Monthly Active Users (MAU) growth
  • Average Revenue Per User (ARPU)
  • Net Revenue Retention (NRR)
  • Product Qualified Leads (PQLs) - users hitting quota limits

Tier Distribution Goal:

  • Community: 80% of users (broad adoption)
  • Team: 15% of users (primary revenue)
  • Enterprise: 5% of users (high-value accounts)

Next Steps

  1. Review this plan with stakeholders
  2. Set up development environment (local Stripe test mode)
  3. Start Phase 1, Week 1: Database schema implementation
  4. Establish weekly checkpoints for progress review
  5. Prepare migration communications for existing users

This plan transforms StemBlock AI into a modern PLG SaaS while preserving the quality of the existing AI evaluation system.