Estimated monthly infrastructure and development AI spend today (beta) vs at 10k daily active users.
These figures are estimates based on public vendor pricing and traffic assumptions, not actual invoices. Use them for planning and capacity discussions. For the full service inventory, see Services & vendors.
Infrastructure costs (hosting, databases, SaaS) and development AI tooling (Cursor, Claude, Codex, PR review) are shown separately — dev tools scale with team size, not traveler DAU.
Scenarios
Section titled “Scenarios”| Scenario | Assumptions |
|---|---|
| Today (beta) | ~500–2k DAU, ~50 active partners, four deploys/day, Neon already on a paid tier, Clerk on base plan |
| At volume (10k DAU) | 10k DAU × 6 page views ≈ 1.8M page views/month; ~3 PostHog events per session; proportional Workers CPU, Turso auth traffic, R2 media, Mailgun magic links; partner count stays well below 10k in Ireland |
Not every line item scales with traveler traffic. Partner tools (Clerk, listing AI, dashboard map APIs) grow with partner activity. Traveler-facing costs (Workers, Turso, PostHog, image transforms) grow with DAU.
Stripe transaction fees scale with gross merchandise volume (GMV) and are excluded from the infra totals below. Partner subscription revenue is separate from platform running costs.
Monthly cost by service
Section titled “Monthly cost by service”| Service | Billing model | Today (est.) | 10k DAU (est.) | What drives the delta |
|---|---|---|---|---|
| Cloudflare Workers | Usage (requests + CPU) | €5–15 | €40–120 | SSR requests on frontend + dashboard |
| Cloudflare R2 + Image Resizing | Storage + transforms | €5–20 | €50–120 | R2 storage grows slowly; image transforms on the frontend scale with page views at 10k DAU |
| Fly.io (Directus + Chatwoot) | Always-on VMs | €30–60 | €60–120 | Two containers; may need larger machines at volume |
| Neon Postgres | Usage (compute + storage) | €30–50 | €35–80 | Directus + Chatwoot databases — already on a paid tier today; modest growth at 10k DAU (content is build-time, not per-page) |
| Turso | Usage (rows read/written) | €0–10 | €25–50 | Traveler auth sessions, favorites, planner |
| Upstash Redis | Usage | €5–15 | €15–35 | Chatwoot Sidekiq today; Directus cache/queue via Upstash planned — adds cost later |
| Clerk | Base plan (MAU) | €25 | €25–35 | Partner auth — base tier covers us; Ireland partner count stays well under 10k |
| Stripe | % of GMV | % of GMV | % of GMV | Per-transaction; grows with booking roadmap |
| PostHog | Events | €0–20 | €80–200 | Page views, listing analytics, funnels |
| Mailgun | Emails sent | €5–15 | €30–60 | Magic links, booking confirmations (future) |
| OpenAI — listing translations | Tokens (partners) | €10–30 | €15–40 | Partner-only — listing translations and rewrites in the dashboard; scales with partner activity, not traveler DAU |
| OpenAI — frontend AI chat (roadmap) | Tokens (travelers) | €0 | €50–200 | Planned — in-app AI chat on soultales.com; scales with traveler usage at volume |
| OpenRouteService / Google APIs | API calls (dashboard) | €5–15 | €10–25 | Dashboard only — routes and Places when partners add listings or holidays; low volume, not tied to traveler traffic |
| Cloudflare Pages + KV | Low flat/usage | €0–5 | €5–15 | Docs hosting, dashboard session KV |
| GitHub Actions | Free tier | €0 | €0–20 | May exceed free minutes at heavy CI |
| Temps (roadmap) | Fly.io + Postgres | €15–30 | €20–40 | Self-hosted on Fly.io with its own database — VM + storage; log and error volume grows with traffic |
| App staging (roadmap) | See staging section below | +€5–15 | +€10–25 | Incremental on top of production; helpdesk not duplicated |
| Total (infra) | ~€135–310/mo | ~€470–1,240/mo | Excludes Stripe %, revenue, dev AI tooling, staging (until deployed), and excluded items below |
Excluded from these estimates
Section titled “Excluded from these estimates”The tables above cover current production services and planned items we can size today. The following roadmap platforms have separate hosting and vendor costs not yet included — budgets for these will be added once architecture and vendor choices are final:
| Platform | Status | Why excluded |
|---|---|---|
| Ticket / booking system | Roadmap (Stripe Connect) | Native checkout, payouts, and ticket validation — separate infra on top of existing Stripe integration |
| Email marketing platform | Roadmap (TBD) | Location-aware campaigns for travelers in Ireland — vendor and hosting not selected yet |
See Roadmap items 5 and 8 for scope. Mailgun in the table above covers transactional email today (magic links, notifications) — not marketing campaigns.
Staging environment (incremental cost)
Section titled “Staging environment (incremental cost)”Not deployed yet — planned in Roadmap item 1. Figures are extra monthly cost on top of production, for app staging only (frontend, dashboard, Directus). Helpdesk stays on production.
Assumptions: Neon branch for Directus data (within included branch quota on Launch), second Fly.io app for staging Directus with min_machines_running = 0, separate Turso DB and R2 bucket, Clerk/Stripe test mode, light staging traffic on Workers.
| Component | Incremental (scale-to-zero staging) | Notes |
|---|---|---|
| Fly.io staging Directus | €1–5/mo | Compute only while testing; small volume storage ~€0.15–0.50/mo when suspended |
| Neon staging branch | €0–3/mo | Branch fee usually €0; CU-hours only when Directus or migrations hit the branch |
| Cloudflare Workers (×2) | €0–3/mo | Negligible at beta staging traffic |
| KV, Turso, R2 | €0–1/mo | Extra namespaces/DB/bucket within existing tiers |
| Clerk / Stripe test | €0 | Test instances |
| Total incremental | ~€5–15/mo | Recommended configuration |
| Scenario | Incremental monthly cost |
|---|---|
| Recommended — scale-to-zero staging Directus, Neon branch | ~€5–15 |
Staging Directus always-on (min_machines_running = 1) | ~€15–25 |
| Heavy daily staging usage (frequent builds, media uploads) | ~€30–45 |
| + Helpdesk staging (not planned) | +€35–70 |
With recommended app staging, total infra rises from ~€135–310/mo to roughly ~€140–325/mo (4–6% increase). Production Directus today uses €10–11/mo); staging can stay cheaper by suspending when idle.min_machines_running = 1 (
See Environments for planned URLs, architecture, and deploy flow.
Development tooling (AI per FTE)
Section titled “Development tooling (AI per FTE)”These are development costs for a fully equipped full-time engineer (FTE), not production infrastructure. Each FTE runs the top individual tier on Cursor, Codex, and Claude — plus a per-seat AI code review subscription. See AI development and the roadmap.
Assumed team size: 1 FTE today, 2 FTE at 10k DAU — headcount grows slowly; traveler traffic does not multiply IDE subscriptions.
| Tool | Billing | Per FTE (est.) | Today (1 FTE) | 10k DAU (2 FTE) | What it covers |
|---|---|---|---|---|---|
| Cursor Pro+ | Subscription | €55/mo | €55 | €110 | Top IDE tier — agents, unlimited tab, 3× usage credits (~$60/mo) |
| OpenAI Codex Pro | Subscription (Pro 20×) | €185/mo | €185 | €370 | Top Codex tier — maximum cloud agent sessions (~$200/mo) |
| Claude Max | Subscription | €90/mo | €90 | €180 | Max tier — Claude Code, highest individual usage allowance |
| AI code review | Per seat | €25/mo | €25 | €50 | Automated review on every pull request — billed per seat, not per repo |
| Total (dev AI) | ~€355/mo per FTE | ~€355/mo | ~€710/mo | Scales with FTE count, not DAU |
Combined platform cost (infra + dev AI)
Section titled “Combined platform cost (infra + dev AI)”| Today (est.) | 10k DAU (est.) | |
|---|---|---|
| Infrastructure | ~€135–310/mo | ~€470–1,240/mo |
| Development AI (1–2 FTE) | ~€355/mo | ~€710/mo |
| Total | ~€490–665/mo | ~€1,180–1,950/mo |
A fully loaded FTE AI stack (~€355/mo) is still far below contractor or agency rates for the same output — agents implement and review under documented platform standards, so human time goes to product decisions rather than repetitive coding.
What stays cheap
Section titled “What stays cheap”Several architectural choices keep the cost curve sub-linear as traffic grows:
- Neon scale-to-zero — Postgres compute idles when Directus and Chatwoot are quiet, but both databases already sit on a paid tier in production.
- R2 zero egress to Workers — media delivery does not add bandwidth surcharges.
- Static-first frontend — travelers browse pre-built pages; no per-page CMS database queries.
- OSS where it counts — Directus and Chatwoot have no per-seat license fees; we pay for hosting only.
- Better Auth on Turso — traveler auth avoids per-seat SaaS pricing as the user base grows.
- Neon branching for staging — isolated Directus data without duplicating full Postgres storage; staging compute scales to zero when nobody is testing.
- Scale-to-zero staging Directus — only Fly.io component that would add meaningful cost; suspending idle machines keeps staging in the ~€5–15/mo band.
See Platform stack for the full rationale behind each service choice.
Related docs
Section titled “Related docs”- Services & vendors — authoritative per-package vendor list
- Platform stack — scalability and cost philosophy
- AI development — why dev AI tooling lowers feature cost
- Environments — production URLs and planned staging architecture
- Roadmap — planned staging, Temps logging, booking, email marketing, frontend AI chat, and more