MeetingMeter - Meeting Cost Calculator

Model: z-ai/glm-4.7
Status: Completed
Cost: $0.219
Tokens: 142,132
Started: 2026-01-03 20:41

Section 03: Technical Feasibility & Architecture

Technical Achievability Score

9/10
High Feasibility Assessment

MeetingMeter relies on mature, well-documented APIs (Google Calendar, Microsoft Graph) rather than experimental technology. The core logic—calculating cost based on duration and attendees—is deterministic, not probabilistic, eliminating the risks associated with generative AI hallucinations.

The "AI" components (identifying patterns, suggesting optimizations) can be implemented using lightweight, rule-based algorithms initially, with potential for future ML integration. Precedents exist in time-tracking and productivity tools (e.g., Clockwise, Harvest), proving the technical viability of calendar sync and analytics. The primary complexity lies in data normalization across different calendar providers, a solved problem with standard libraries. A functional prototype can be built within 4-6 weeks by a single developer.

Recommendations

  • Prototype the Sync Engine First: Build a minimal sync pipeline for Google Calendar before adding Outlook or Zoom to validate data latency.
  • Use a Supabase Starter: Leverage Supabase's Auth and Postgres combination to skip backend boilerplate and focus on the cost calculation logic.

Recommended Technology Stack

Layer Technology Rationale
Frontend Next.js 14 (App Router) + Tailwind CSS + shadcn/ui Next.js offers SSR for SEO (marketing site) and client-side routing for the dashboard. shadcn/ui provides beautiful, accessible pre-built components, drastically reducing design time for internal tools.
Backend Supabase (PostgreSQL) + Edge Functions Supabase handles Auth (OAuth for Google/Microsoft) and Database in one go. Edge Functions (Node.js) are perfect for secure API calls to external providers without managing a separate server.
AI/Logic Rule-Based Algorithms (Python/JS) + OpenAI GPT-4o-mini Cost calculation is deterministic arithmetic. "Insights" will use rule-based heuristics initially (e.g., if attendees > 8 and no agenda, flag). GPT-4o-mini is reserved for generating "nudge" text suggestions due to low cost.
Infrastructure Vercel (Frontend) + Supabase Cloud (Backend) Vercel offers industry-leading deployment speed and preview environments for Next.js. Supabase provides generous free tiers for early scaling. Combined monthly hosting < $50.
Dev/Ops GitHub Actions + Sentry Standard CI/CD pipeline for automated testing and deployment. Sentry is critical for monitoring API failures from Google/Microsoft services.

System Architecture

CLIENT LAYER
Web Dashboard (Next.js) Chrome Extension
↓ HTTPS / Auth
API & SERVICES LAYER (Vercel / Supabase Edge)
Auth (OAuth) Webhook Handler Cost Engine
↓ Read/Write
DATA STORE
PostgreSQL (Supabase)
Users, Events, Salaries
EXTERNAL APIS
Google Calendar
Microsoft Graph
Zoom API

Feature Implementation Complexity

Feature Complexity Effort Notes
OAuth Authentication (Google/Outlook) Low 2-3 days Supabase Auth handles 90% of this.
Calendar Sync & Webhooks Medium 5-7 days Handling sync failures and "delta" updates is tricky.
Cost Calculation Engine Low 2-3 days Straightforward math logic (Duration * Rate).
Analytics Dashboard Low 3-4 days Use Recharts or Tremor for quick visualization.
Salary Band Import (CSV/HRIS) Low 1-2 days PapaParse for CSV; HRIS integration is Phase 2.
Optimization Algorithms (Rules) Medium 4-6 days Iterating on rules (e.g., "Large Meeting" threshold) takes time.
Chrome Extension (Nudges) Medium 5-7 days DOM injection into Google Calendar UI is fragile.
Organization Hierarchy Mapping High 8-10 days Mapping emails to "Teams/Depts" requires manual input or complex graph parsing.

AI & Logic Implementation Strategy

AI Use Cases

  • Nudge Generation: GPT-4o-mini → Generate polite, actionable text for meeting optimization emails.
  • Agenda Analysis: GPT-4o-mini → Parse meeting descriptions to detect presence of agenda vs. social chat.
  • Smart Categorization: Zero-shot classification → Label meetings as "Brainstorm," "Status Update," or "Decision" based on title/description.

Cost & Quality Control

Budget Threshold: $0.05/user/mo

We will aggressively cache AI results. If a meeting is analyzed once, we don't re-analyze unless details change. Rule-based heuristics handle 80% of logic to keep API costs negligible.

Data Requirements & Strategy

Data Schema Overview

Users (id, email, org_id, salary_band)
  ↳ Organizations (id, name, settings_json)
  ↳ Events (id, provider_id, title, start_time, end_time, attendee_count, calculated_cost)
    ↳ Event_Attendees (event_id, user_id, role)

Third-Party Integrations

Service Purpose Criticality Fallback
Google Calendar API Primary data source for events Must-have None (MVP blocker)
Microsoft Graph API Outlook/Teams data source Must-have None (Enterprise requirement)
Stripe Subscription billing Must-have Paddle/LemonSqueezy
Resend Weekly reports & nudges High AWS SES, SendGrid
OpenAI API Smart insights generation Nice-to-have Hardcoded templates

Scalability & Performance

MVP (100 users)
Supabase Free Tier
~$25/mo
Growth (10k users)
Supabase Pro + Vercel Pro
~$400/mo
Scale (100k users)
Dedicated DB Cluster
~$2,500/mo

Bottleneck: Webhook processing speed. If 1,000 users have meetings start at 9:00 AM, we receive 1,000 webhook hits simultaneously. Mitigation: Use a job queue (like Supabase Queues or Inngest) to process updates asynchronously rather than blocking the webhook response.

Security & Privacy

Data Privacy

  • PII Protection: Salary data is encrypted at rest (PostgreSQL pgcrypto). Only "Salary Bands" (e.g., "Level 3: $100k-$120k") are exposed to managers, never exact individual salaries.
  • Meeting Content: We explicitly DO NOT read meeting bodies/notes, only metadata (time, attendees, title).

API Security

  • Token Storage: OAuth refresh tokens stored securely in Supabase Vault.
  • Row Level Security (RLS): Database policies ensure users can only view analytics for their own organization or sub-teams.

Technical Risks & Mitigations

🔴 High: Google/Microsoft API Quota Exceeded

Impact: Service interruption. New events won't sync, and costs won't calculate.

Mitigation: Implement aggressive caching and exponential backoff on API calls. Monitor usage via Sentry. Request quota increases immediately upon hitting 80% usage. Optimize sync to only fetch "delta" changes rather than full calendar dumps daily.

🟡 Medium: Webhook Latency & Missed Events

Impact: Dashboard shows outdated data. Cost calculations are wrong for the current day.

Mitigation: Do not rely solely on webhooks. Implement a "Cron Job" (via pg_cron or Vercel Cron) that performs a full reconciliation sync every 24 hours at 2 AM to catch any missed events or deletions.

🟡 Medium: Chrome Extension UI Breaking

Impact: Nudge feature fails, reducing value proposition for individual users.

Mitigation: Keep the extension logic minimal. Use specific CSS selectors where possible, but have a fallback to inject a floating button if the specific calendar container isn't found. Monitor extension errors via Sentry.

Development Timeline (10 Weeks)

Phase 1: Foundation (Weeks 1-2)

Setup & Auth

  • Next.js + Supabase project initialization
  • Google OAuth flow implementation
  • Database schema creation (Users, Orgs, Events)
  • Basic dashboard shell

Phase 2: Core Integration (Weeks 3-5)

The Sync Engine

  • Google Calendar API integration (Read & Webhooks)
  • Event normalization & DB storage
  • Cost calculation logic (Salary bands)
  • Historical data backfill (last 3 months)

Phase 3: Analytics & Insights (Weeks 6-8)

Visualization & Logic

  • Dashboard charts (Spend over time, Top meetings)
  • Rule-based optimization engine
  • Team hierarchy mapping (Manual upload)
  • Weekly email report generation

Phase 4: Polish & Launch (Weeks 9-10)

Go-to-Market Ready

  • Stripe billing integration
  • Chrome Extension MVP (Calendar overlay)
  • Error handling & Sentry setup
  • Security audit & performance tuning

Team Composition & Skills

Solo Founder Feasibility: YES

A solo full-stack founder (React/Node.js) can build the MVP. The reliance on managed services (Supabase, Vercel, Stripe) removes the need for DevOps expertise. The database schema is simple enough not to require a dedicated Data Engineer initially.

Estimated Effort: ~400-500 hours for MVP (approx. 3 months full-time).
Role Required Skills Phase
Full Stack Engineer TypeScript, React, Next.js, SQL, OAuth Immediate (Must-have)
Product Designer UI/UX, Figma, Data Visualization Month 2 (Contractor OK)
Data Analyst Python, Statistics, Benchmarking Research Month 4 (Part-time)