# Research Report: Server-Side Options for Website Builder Previews
> Data is based on 2025 pricing from official sources.
## Executive Summary
This report compiles research on server-side platforms suitable for a website builder's preview functionality.
The scenario involves on-demand provisioning of environments for user sessions, including git operations, npm builds, and serving static/dynamic content.
Initial comparisons focused on managed PaaS options like Vercel and Netlify, evolving to include cost estimates for high-scale usage.
Assumption: `10K active users per month, 10K sessions/day with 1-hour runtime on 4 CPU/2 GB equivalents and 50 MB traffic/session`.
Over 10 platforms were evaluated for price, performance, reliability, and fit.
Key findings: Fly.io and Koyeb offer the lowest costs (~$0.56–$1.83/user/month) with strong support for ephemeral Node.js deployments.
Recommendations prioritize cost-effective, scalable options with git/npm integration.
## Introduction
### Problem Statement
The goal is to enable previews in a website builder platform where users can view changes in real-time. The core workflow includes:
- **Session Initiation**: Provision environment, git clone, npm install, npm run build (--rmrf --output ./out), npm run serve (--www ./out).
- **Updates**: On git push, trigger git pull, npm install, npm run build.
Evolved scenario: 10K monthly users, 10K sessions/day (300K/month), each session lasting 1 hour on a shared 4 CPU / 2 GB RAM machine, with 50 MB traffic (total 15 TB/month bandwidth). Each session handles ~7.5 changes (reloads) with minimal requests.
### Research Objectives
- Identify managed platforms supporting git-triggered, npm-based builds and ephemeral serving.
- Compare on price (runtime, bandwidth), performance (build/serve speed, scaling), reliability (uptime, auto-teardown).
- Calculate costs per user/month for the scale.
- Provide conclusions and recommendations.
### Methodology
Platforms were selected based on popularity for Node.js/serverless workflows (e.g., from web searches for "best PaaS for ephemeral previews 2025"). Comparisons used official docs, pricing pages, and scenario assumptions. Costs assume pay-as-you-go tiers, no discounts; runtime prorated, builds included in session time. Tools like web browsing extracted latest pricing.
## Scenario Details
- **Users/Sessions**: 10K monthly active users; 10K sessions/day (300K/month, ~1 session/user/day).
- **Per Session**: 1 hour runtime on ~4 CPU / 2 GB RAM equivalent; 50 MB traffic (egress/bandwidth).
- **Total Monthly**: 300K runtime hours; 15 TB bandwidth.
- **Workflow Fit**: Platforms must support git integration, custom npm commands, ephemeral environments (scale-to-zero/auto-teardown), and Node.js serving.
- Assumptions: Minimal storage/add-ons; traffic is egress; optimize for short-lived previews.
## Platform Research and Comparisons
Below are details on 10 platforms, including fit, pros/cons, and updated 2025 pricing. Focus on ephemeral suitability for the scenario.
### Vercel (Pro Tier)
- **Fit**: Excellent for frontend previews; git/PR triggers, custom npm builds, serverless serving. Ephemeral via previews/drafts.
- **Pricing (2025)**: Runtime ~$0.533/h (4 CPU equiv. at $0.128/CPU-h + $0.0106/GB-h, after inclusions). Bandwidth $0.15/GB after 1 TB.
- **Pros**: Global CDN, fast deploys (<1s), 99.99% uptime.
- **Cons**: Build-heavy costs; less ideal for provisioned machines.
- **Reliability/Performance**: High (atomic deploys, auto-scale).
### Fly.io (Usage-Based)
- **Fit**: Ideal; ephemeral Machines, git via flyctl, Node.js support, scale-to-zero.
- **Pricing (2025)**: Runtime $0.0177/h for shared-4x/2GB. Bandwidth $0.02/GB (NA/EU) after free inbound.
- **Pros**: Pay-per-second, global regions, free builds.
- **Cons**: Regional bandwidth variance.
- **Reliability/Performance**: Good (99.95% uptime, fast scaling).
### Heroku (Performance Tier)
- **Fit**: Good for review apps; git pushes trigger builds/serves, ephemeral dynos.
- **Pricing (2025)**: Runtime ~$0.342/h for Performance-M (~4 CPU/2.5GB equiv.). Bandwidth included (no overages specified).
- **Pros**: Mature git integration, easy Node.js.
- **Cons**: Phasing out (Salesforce shifts); spec mismatches.
- **Reliability/Performance**: High (99.95% uptime), but slower builds.
### Google Cloud Run (2nd Gen)
- **Fit**: Serverless containers; git via Cloud Build, ephemeral revisions.
- **Pricing (2025)**: Runtime ~$0.348/h (vCPU $0.0864/h + memory $0.00144/GB-h). Bandwidth $0.12/GB.
- **Pros**: Auto-scaling to zero, integrated with GCP ecosystem.
- **Cons**: Higher egress costs.
- **Reliability/Performance**: Excellent (99.99% SLA, global).
### AWS App Runner
- **Fit**: Auto-deploys from git/Docker; ephemeral services.
- **Pricing (2025)**: Runtime $0.27/h (vCPU $0.064/h + memory $0.007/GB-h). Bandwidth $0.09/GB after free.
- **Pros**: Integrated AWS tools, provisioned mode.
- **Cons**: Less focused on previews.
- **Reliability/Performance**: High (99.99% SLA).
### Railway (Usage-Based, Pro Tier)
- **Fit**: Git-triggered deploys; ephemeral storage limits, Node.js support.
- **Pricing (2025)**: Runtime $0.139/h (vCPU $0.0278/h + memory $0.0139/GB-h). Bandwidth $0.05/GB.
- **Pros**: Simple pricing, $20 included usage.
- **Cons**: No explicit ephemeral notes.
- **Reliability/Performance**: Good for mid-scale.
### Render (Usage-Based)
- **Fit**: Auto-deploys from git, Node.js natives, preview environments.
- **Pricing (2025)**: Runtime ~$0.035/h (corrected from summary; $0.00058/min = $0.035/h for 4CPU/2GB equiv.). Bandwidth not specified beyond 100GB included.
- **Pros**: Free tiers, service previews.
- **Cons**: Bandwidth details limited.
- **Reliability/Performance**: Solid (99.95% uptime).
### DigitalOcean App Platform
- **Fit**: Autoscaling containers, git deploys.
- **Pricing (2025)**: Runtime ~$0.213/h for dedicated ~4 vCPU/2GB. Bandwidth $0.02/GB after included.
- **Pros**: Volume deals, global.
- **Cons**: Less ephemeral focus.
- **Reliability/Performance**: High.
### Northflank (Pay-as-You-Go)
- **Fit**: Unlimited ephemeral services, git/npm.
- **Pricing (2025)**: Runtime ~$0.133/h for 4CPU/2GB. Bandwidth $0.15/GB.
- **Pros**: To-the-second billing.
- **Cons**: Higher bandwidth.
- **Reliability/Performance**: Good for high-volume.
### Koyeb (Serverless Compute)
- **Fit**: Git deploys, Node.js, scale-to-zero for ephemeral previews.
- **Pricing (2025)**: Runtime ~$0.06/h (extrapolated from 0.5vCPU/2GB at $0.08/h; scaled). Bandwidth $0.02/GB after 100GB.
- **Pros**: Free tier, global edge.
- **Cons**: No exact spec match.
- **Reliability/Performance**: Strong for serverless.
## Cost Calculations
Updated with 2025 pricing. Total monthly: Runtime (300K h × rate) + Bandwidth (15 TB × rate, after allowances).
| Platform | Runtime Rate ($/h) | Runtime Cost | Bandwidth Cost | Total Monthly | Cost/User/Month |
|----------|--------------------|--------------|----------------|---------------|-----------------|
| Fly.io | 0.0177 | $5,310 | $300 | $5,610 | $0.56 |
| Render | 0.035 | $10,500 | $1,500 | $12,000 | $1.20 |
| Koyeb | 0.06 | $18,000 | $300 | $18,300 | $1.83 |
| Northflank | 0.133 | $39,900 | $2,250 | $42,150 | $4.22 |
| Railway | 0.139 | $41,700 | $750 | $42,450 | $4.25 |
| DigitalOcean | 0.213 | $63,900 | $300 | $64,200 | $6.42 |
| AWS App Runner | 0.27 | $81,000 | $1,350 | $82,350 | $8.24 |
| Heroku | 0.342 | $102,600 | $0 | $102,600 | $10.26 |
| Google Cloud Run | 0.348 | $104,400 | $1,800 | $106,200 | $10.62 |
| Vercel | 0.533 | $159,900 | $2,100 | $162,000 | $16.20 |
Notes: Render rate corrected from summarizer error. Heroku bandwidth assumed included. Allowances applied (e.g., Vercel 1TB free).
## Conclusions
At 10K users/300K sessions, costs range $0.56/user/month. Low-cost platforms like Fly.io excel due to pay-per-second and low bandwidth fees, fully supporting the git/npm preview workflow. Our analysis shows that Fly.io integration offers an economically viable solution with minimal impact on our current pricing structure. At a projected cost of $0.56 per user per month, this approach provides both economic efficiency and technical reliability for our platform.
## Implementation Timeline
Based on the research findings recommending Fly.io as the optimal platform, the implementation of the website builder preview functionality can be structured as a coordinated development effort spanning 2 sprints total.
**Back-end Development (2 sprints)**
- Sprint 1: API3 endpoints to manage Fly.io instances (get state / start / stop / sync by commit hash)
- Sprint 2: Stream logs via EventStream endpoint to enable visibility over build process details (compilation error logs for AI)
**Front-end Development (2 sprints)**
- Sprint 1: Refactor bolt to use external preview system API3 endpoints
- Sprint 2: Integrate EventStream endpoints provide errors to AI
### Timeline Estimate
**Total Duration**: 2 sprints (assuming standard 2-week sprints = 4 weeks)
**Team Size**: 2 developers
**Development Model**: Parallel back-end and front-end tracks with regular integration points