# Phase 2 Cost Estimates: Hosting + API Usage **Project**: Tractatus AI Safety Framework Website **Phase**: 2 of 3 **Created**: 2025-10-07 **Currency**: USD (approximate NZD conversion: ×1.65) **Planning Horizon**: 3 months (Phase 2 duration) --- ## Table of Contents 1. [Executive Summary](#executive-summary) 2. [One-Time Costs](#one-time-costs) 3. [Monthly Recurring Costs](#monthly-recurring-costs) 4. [OVHCloud Hosting Options](#ovhcloud-hosting-options) 5. [Claude API Pricing](#claude-api-pricing) 6. [Usage Scenarios](#usage-scenarios) 7. [Cost Optimization Strategies](#cost-optimization-strategies) 8. [Budget Recommendations](#budget-recommendations) --- ## Executive Summary ### Total Phase 2 Costs (3 months) | Scenario | One-Time | Monthly | 3-Month Total | Notes | |----------|----------|---------|---------------|-------| | **Minimal** | $50 | $80 | $290 | Basic VPS, light API usage | | **Standard** | $100 | $150 | $550 | Recommended for soft launch | | **High Usage** | $200 | $300 | $1,100 | Heavy AI features, peak traffic | **Recommended Budget**: **$550 USD** (~$900 NZD) for 3-month Phase 2 **Ongoing Monthly** (post-launch): $150-200 USD (~$250-330 NZD) --- ## One-Time Costs ### Initial Setup (First Month Only) | Item | Cost (USD) | Notes | |------|------------|-------| | **Domain Registration** | $15-30/year | `agenticgovernance.digital` (if not already owned) | | **SSL Certificate** | $0 | Let's Encrypt (free) | | **Development Tools** | $0 | Open source (Git, Node.js, MongoDB) | | **Migration Services** | $0 | Self-managed deployment | | **Security Audit Tools** | $0-50 | Free tier (npm audit, Trivy) or paid scans | | **Load Testing Tools** | $0-50 | k6 (free), Artillery (free tier) | | **Email Setup** | $0 | ProtonMail existing account | | **Analytics Setup** | $0 | Self-hosted Plausible/Matomo | | **Backup Storage** | $0-20 | Initial backup storage (if off-server) | | **Contingency** | $50 | Unexpected setup costs | **Total One-Time**: **$50-200 USD** --- ## Monthly Recurring Costs ### Breakdown by Service #### 1. Hosting (OVHCloud VPS) | Tier | Specs | Price/Month | Use Case | |------|-------|-------------|----------| | **VPS Starter** | 1 vCore, 2GB RAM, 20GB SSD | $7-10 | Development/testing only | | **VPS Value** | 1 vCore, 2GB RAM, 40GB SSD | $10-15 | Light traffic (<1000 visitors/month) | | **VPS Essential** | 2 vCore, 4GB RAM, 80GB SSD | $20-30 | **Recommended for soft launch** | | **VPS Comfort** | 2 vCore, 8GB RAM, 160GB SSD | $40-50 | Moderate traffic (1000-5000 visitors/month) | | **VPS Elite** | 4 vCore, 16GB RAM, 320GB SSD | $80-100 | High traffic (5000+ visitors/month) | **Recommendation**: Start with **VPS Essential ($20-30)**, upgrade if needed. #### 2. Claude API (Anthropic) **Pricing Model** (as of 2025): - **Claude Sonnet 4.5**: - Input: $3.00 per million tokens - Output: $15.00 per million tokens - Context: 200K tokens **Estimated Usage**: | Feature | Requests/Month | Tokens/Request (avg) | Monthly Cost | |---------|----------------|----------------------|--------------| | **Blog Topic Suggestions** | 100 | 5K input + 1K output | $2.00 | | **Blog Outline Generation** | 30 | 10K input + 5K output | $3.00 | | **Media Inquiry Triage** | 50 | 3K input + 500 output | $0.75 | | **Case Study Analysis** | 20 | 15K input + 3K output | $2.00 | | **Moderation Assistance** | 50 | 5K input + 1K output | $1.50 | | **Miscellaneous** | 50 | 5K input + 1K output | $1.50 | **Total API Cost (Light Usage)**: **$10-15/month** **Total API Cost (Standard)**: **$30-50/month** **Total API Cost (Heavy)**: **$100-200/month** #### 3. Additional Services | Service | Cost/Month | Notes | |---------|------------|-------| | **Bandwidth** | $0-5 | Usually included in VPS, overage rare | | **Backups (Off-site)** | $0-10 | OVHCloud Snapshot or Backblaze B2 | | **Domain Renewal** | $1-3 | Amortized annual cost | | **Email (ProtonMail)** | $0 | Existing account (free tier) | | **Analytics (Self-hosted)** | $0 | Plausible/Matomo on same VPS | | **Error Tracking** | $0-10 | Sentry free tier (5K events/month) or self-hosted | | **Uptime Monitoring** | $0-5 | UptimeRobot free tier or self-hosted | | **CDN (Optional)** | $0-20 | Cloudflare Free tier or paid | **Total Additional**: **$0-50/month** --- ## OVHCloud Hosting Options ### Recommended Configuration: VPS Essential **Specs**: - 2 vCores (Intel Xeon or AMD EPYC) - 4GB RAM - 80GB SSD NVMe - 500 Mbps bandwidth (unlimited traffic) - 1 IPv4 + 1 IPv6 - Anti-DDoS protection included **Price**: **$20-30/month** (varies by region) **Justification**: - Handles MongoDB (2GB RAM minimum recommended) - Supports Node.js application + Nginx - Room for Plausible Analytics - Suitable for 1,000-5,000 visitors/month - Upgrade path available (scale vertically) ### Alternative: Hetzner Cloud (European Hosting) If OVHCloud is unavailable or too expensive: **Hetzner CX21**: - 2 vCPU - 4GB RAM - 40GB SSD - 20TB traffic - **€4.90/month (~$5.30 USD)** **Hetzner CX31**: - 2 vCPU - 8GB RAM - 80GB SSD - 20TB traffic - **€8.90/month (~$9.65 USD)** **Note**: Hetzner has excellent pricing but may have fewer NZ/Oceania users. OVHCloud has better global presence. --- ## Claude API Pricing ### Pricing Tiers (Anthropic - 2025) | Model | Input (per 1M tokens) | Output (per 1M tokens) | Context Window | |-------|----------------------|------------------------|----------------| | **Claude Haiku 4.0** | $0.25 | $1.25 | 200K | | **Claude Sonnet 4.5** | $3.00 | $15.00 | 200K | | **Claude Opus 4.0** | $15.00 | $75.00 | 200K | **Recommendation**: **Claude Sonnet 4.5** (best balance of quality and cost) ### Token Usage Estimation **Average Request Breakdown**: 1. **Blog Topic Suggestion**: - Input: 3K tokens (recent news summaries) - Output: 500 tokens (5-10 topic suggestions) - Cost per request: $0.02 2. **Blog Outline Generation**: - Input: 8K tokens (topic + guidelines + examples) - Output: 3K tokens (detailed outline) - Cost per request: $0.07 3. **Media Inquiry Triage**: - Input: 2K tokens (inquiry text + classification criteria) - Output: 300 tokens (classification + priority + draft response) - Cost per request: $0.01 4. **Case Study Analysis**: - Input: 10K tokens (submission + Tractatus framework docs) - Output: 2K tokens (relevance analysis + categorization) - Cost per request: $0.06 ### Monthly Usage Scenarios #### Scenario 1: Light Usage (Soft Launch) - 30 blog topic checks - 10 blog outlines - 20 media inquiries - 10 case study analyses - **Total**: ~$5-10/month #### Scenario 2: Standard Usage (Active Moderation) - 100 blog topic checks - 30 blog outlines - 50 media inquiries - 20 case study analyses - **Total**: ~$30-50/month #### Scenario 3: Heavy Usage (Full Production) - 300 blog topic checks - 100 blog outlines - 150 media inquiries - 50 case study analyses - **Total**: ~$100-200/month --- ## Usage Scenarios ### Scenario 1: Minimal (Development/Testing) **Use Case**: Low traffic, testing AI features | Cost Item | Amount | |-----------|--------| | VPS (Value tier) | $15 | | Claude API (light) | $10 | | Backups | $5 | | Domain (amortized) | $2 | | **Monthly Total** | **$32** | | **3-Month Total** | **$96** | **Limitations**: - 500-1,000 visitors/month max - Limited AI usage (testing only) - Single-server (no redundancy) --- ### Scenario 2: Standard (Recommended for Soft Launch) **Use Case**: Soft launch with 20-50 users, moderate AI usage | Cost Item | Amount | |-----------|--------| | VPS (Essential tier) | $30 | | Claude API (standard) | $50 | | Backups | $10 | | Error tracking | $10 | | Domain (amortized) | $2 | | **Monthly Total** | **$102** | | **3-Month Total** | **$306** | | **With setup costs** | **$406** | **Capabilities**: - 1,000-5,000 visitors/month - 30 blog posts/month (AI-assisted) - 50 media inquiries/month - 20 case studies/month - Monitoring and error tracking **Recommendation**: **This is the sweet spot for Phase 2** --- ### Scenario 3: High Usage (Peak Production) **Use Case**: High traffic, heavy AI features | Cost Item | Amount | |-----------|--------| | VPS (Comfort tier) | $50 | | Claude API (heavy) | $200 | | Backups | $15 | | Error tracking | $10 | | CDN | $20 | | Domain (amortized) | $2 | | **Monthly Total** | **$297** | | **3-Month Total** | **$891** | | **With setup costs** | **$1,091** | **Capabilities**: - 5,000-10,000 visitors/month - 100+ blog posts/month - 150+ media inquiries/month - 50+ case studies/month - CDN for global performance **When to use**: Phase 3 (public launch) or if soft launch exceeds expectations --- ## Cost Optimization Strategies ### 1. API Cost Reduction **Techniques**: - **Caching**: Cache AI responses for identical queries (30-day TTL) - **Batch Processing**: Group similar requests (e.g., weekly topic suggestions) - **Haiku for Simple Tasks**: Use Claude Haiku for media triage (5x cheaper) - **Rate Limiting**: Cap AI requests per user/day - **Human Overrides**: Allow admins to skip AI for trivial cases **Savings**: 30-50% reduction in API costs ### 2. Hosting Cost Reduction **Techniques**: - **Start Small**: Begin with VPS Value, upgrade as needed - **Annual Billing**: OVHCloud offers ~20% discount for annual payment - **Resource Optimization**: Optimize database queries, enable caching - **Self-Host Everything**: Analytics, error tracking, monitoring (no SaaS fees) - **Cloudflare Free Tier**: CDN + DDoS protection at no cost **Savings**: 20-30% reduction in hosting costs ### 3. Bandwidth Optimization **Techniques**: - **Image Optimization**: WebP format, lazy loading - **Compression**: Gzip/Brotli for all text assets - **CDN**: Offload static assets to Cloudflare - **Minimize Dependencies**: No unnecessary JavaScript libraries **Savings**: Avoid bandwidth overage fees --- ## Budget Recommendations ### Phase 2 Budget Allocation **Total Recommended Budget**: **$550 USD** (~$900 NZD) **Breakdown**: - **Setup costs**: $100 (one-time) - **Month 1**: $150 (infrastructure + initial AI usage) - **Month 2**: $150 (AI features rollout) - **Month 3**: $150 (soft launch) ### Contingency Planning **Recommended Buffer**: **+20%** ($110 USD / ~$180 NZD) **Reasons**: - Unexpected traffic spikes - API usage higher than estimated - Additional tools/services needed - Domain/email issues **Total with Contingency**: **$660 USD** (~$1,090 NZD) --- ## Monthly Budget Template (Post-Launch) ### Baseline Monthly Costs (Standard Usage) ``` Fixed Costs: VPS Essential (OVHCloud) $30 Domain (amortized annual) $2 Backups (off-site) $10 Error Tracking (Sentry free) $0 Analytics (self-hosted) $0 ───────────────────────────────────── Subtotal Fixed $42 Variable Costs: Claude API (30-50 requests/day) $50 Bandwidth (if overage) $0 CDN (Cloudflare Free) $0 Support/Maintenance $0 ───────────────────────────────────── Subtotal Variable $50 Total Monthly (Standard) $92 Rounded Budget Recommendation: $100/month ``` ### Annual Cost Projection (Year 1) ``` Phase 2 (3 months): $550 Phase 3 (9 months): $900 (assuming $100/month average) ───────────────────────────── Year 1 Total: $1,450 USD (~$2,400 NZD) ``` --- ## Cost Comparison: Self-Hosted vs. Cloud Services ### Option 1: Self-Hosted (Recommended) | Service | Provider | Cost | |---------|----------|------| | Hosting | OVHCloud VPS | $30/month | | Analytics | Plausible (self-hosted) | $0 | | Error Tracking | GlitchTip (self-hosted) | $0 | | Monitoring | Self-hosted scripts | $0 | | Backups | OVHCloud Snapshots | $10/month | | **Total** | | **$40/month** | ### Option 2: Cloud Services | Service | Provider | Cost | |---------|----------|------| | Hosting | Vercel/Netlify | $20/month | | Database | MongoDB Atlas | $25/month | | Analytics | Plausible (cloud) | $9/month | | Error Tracking | Sentry (cloud) | $26/month | | Monitoring | UptimeRobot Pro | $7/month | | **Total** | | **$87/month** | **Savings with Self-Hosted**: **$47/month** ($564/year) **Tradeoff**: More setup/maintenance effort, but better privacy and cost control. --- ## Payment Methods & Billing ### OVHCloud Payment Options - Credit/Debit Card (Visa, MasterCard) - PayPal - Bank Transfer (for annual plans) - Cryptocurrency (some regions) ### Anthropic Claude API - Credit/Debit Card - Pay-as-you-go (monthly billing) - Enterprise plans (prepaid credits) ### Billing Schedule - **VPS**: Monthly (or annual for discount) - **Claude API**: Monthly (arrears) - **Domain**: Annual - **Backups**: Monthly --- ## Currency Conversion (NZD) **Exchange Rate** (as of 2025-10-07): **1 USD = ~1.65 NZD** | USD Amount | NZD Equivalent | |------------|----------------| | $50 | ~$83 | | $100 | ~$165 | | $150 | ~$248 | | $300 | ~$495 | | $550 | ~$908 | | $1,000 | ~$1,650 | **Note**: Exchange rates fluctuate. Add 5-10% buffer for volatility. --- ## Approval Checklist Before proceeding with Phase 2, confirm: - [ ] **Budget approved**: $550-660 USD (~$900-1,090 NZD) for 3 months - [ ] **Monthly ongoing**: $100-150 USD (~$165-250 NZD) acceptable - [ ] **Payment method**: Credit card or PayPal available - [ ] **OVHCloud account**: Created and verified - [ ] **Anthropic account**: API access approved - [ ] **Currency**: USD or NZD budget confirmed - [ ] **Contingency**: 20% buffer accepted ($110 USD / ~$180 NZD) --- ## Appendix: Cost Calculator ### Interactive Budget Calculator (Conceptual) ```javascript // Example usage: const monthlyBudget = calculateMonthlyCost({ vps: 'essential', // $30 apiRequests: 500, // ~$50 backups: true, // $10 cdn: false, // $0 errorTracking: 'free' // $0 }); console.log(monthlyBudget); // $90 ``` **Implementation**: Could be added to admin dashboard for real-time cost tracking. --- ## Revision History | Date | Version | Changes | |------|---------|---------| | 2025-10-07 | 1.0 | Initial cost estimates for Phase 2 | --- **Document Owner**: John Stroh **Last Updated**: 2025-10-07 **Next Review**: Monthly (during Phase 2) **Contributors**: Claude Code (Anthropic Sonnet 4.5)