# SubAIVA Hosting & Inference Comparison Report

**Date**: 2026-02-26
**Author**: Genesis Research Agent (Claude Opus 4.6)
**Purpose**: Compare Elestio, Together.ai, and Cloudflare for hosting SubAIVA instances at scale
**Context**: SubAIVAs are OpenClaw-based AI agents requiring LLM inference, vector memory (Qdrant), and a gateway server

---

## Executive Summary

**Recommendation: HYBRID architecture is the clear winner.**

No single provider optimally covers all SubAIVA needs. The optimal stack is:

| Layer | Provider | Why |
|-------|----------|-----|
| **LLM Inference** | **Together.ai** (serverless) | Best model selection, OpenAI-compatible API, no GPU management, pay-per-token |
| **Stateful Infrastructure** | **Elestio** (managed VMs) | PostgreSQL, Qdrant, Redis, OpenClaw gateway -- already in use, proven |
| **Edge Caching & CDN** | **Cloudflare** (Workers + Vectorize) | Australian edge locations (Sydney/Melbourne/Perth), response caching, low-latency static serving |
| **Voice** | **Telnyx** (unchanged) | Already integrated, Australian numbers available |

**Estimated cost per SubAIVA at scale: $28-65/mo** (depending on tier and usage), achieving **85-94% gross margin** at $497-997/mo pricing.

---

## Table of Contents

1. [Option 1: Elestio (Managed Hosting)](#option-1-elestio-managed-hosting)
2. [Option 2: Together.ai (Serverless Inference)](#option-2-togetherai-serverless-inference)
3. [Option 3: Cloudflare (Edge AI / Workers AI)](#option-3-cloudflare-edge-ai--workers-ai)
4. [Comparison Matrix](#comparison-matrix)
5. [Cost Modeling at Scale](#cost-modeling-at-scale)
6. [Hybrid Architecture (Recommended)](#hybrid-architecture-recommended)
7. [Gross Margin Analysis](#gross-margin-analysis)
8. [Sources](#sources)

---

## Option 1: Elestio (Managed Hosting)

### What Elestio Offers

Elestio is a fully managed open-source hosting platform supporting 8 cloud providers (Hetzner, Netcup, DigitalOcean, Vultr, Linode, AWS Lightsail, Scaleway, AWS) across 138+ global regions.

### Can Elestio host custom Docker containers?

**Yes.** Elestio supports custom Docker Compose deployments via their CI/CD pipeline. You can:
- Deploy any Docker image (including OpenClaw gateway)
- Use GitHub/GitLab integration for auto-deploy on push
- Run custom docker-compose stacks
- Use their "Bring Your Own VM" option for full control

### Compute Options

**CPU-only VMs** (most relevant for gateway + databases):

| Provider | Spec | Monthly Cost |
|----------|------|-------------|
| Netcup (EU) | 2 vCPU, 4GB RAM, 60GB NVMe | ~$14/mo |
| Hetzner (EU) | 2 vCPU, 4GB RAM, 40GB | ~$21/mo |
| Hetzner (EU) | 4 vCPU, 8GB RAM, 80GB | ~$35-40/mo |
| DigitalOcean (US/SG) | 2 vCPU, 4GB RAM, 80GB | ~$28/mo |
| Vultr (AU-Sydney) | 2 vCPU, 4GB RAM, 80GB | ~$30/mo |

**GPU VMs** (for running Ollama + local models):

| Provider | GPU | VRAM | Monthly Cost |
|----------|-----|------|-------------|
| Hetzner GEX44 | NVIDIA RTX 4000 SFF Ada | 20GB GDDR6 ECC | ~$212/mo (post April 2026 increase) |
| Hetzner GEX130 | NVIDIA RTX 6000 Ada | 48GB GDDR6 ECC | ~$870/mo (post April 2026 increase) |
| Scaleway GPU | NVIDIA L4 | 24GB | ~$300-400/mo |

**NOTE**: Hetzner is raising prices 30-37% effective April 1, 2026. All Hetzner prices above reflect post-increase rates.

### Can Elestio Run Ollama + Custom Models?

**Yes.** Elestio has Ollama as a first-class managed service (listed in their catalog). You can deploy Ollama with GPU support. However:
- GPU instances start at ~$212/mo (Hetzner GEX44, 20GB VRAM)
- A Qwen 3 14B model (~9.3GB) fits on the GEX44
- Running 1 Ollama per SubAIVA is cost-prohibitive at scale
- Shared Ollama instances possible but add complexity

### GPU Availability

Limited. Elestio's GPU options come through:
- Hetzner (Germany/Finland only -- no Australian data centers)
- Scaleway (France/Netherlands)
- No GPU options in Australia through any Elestio provider

### Data Residency

| Region | Available Providers |
|--------|-------------------|
| Australia (Sydney) | Vultr, DigitalOcean |
| US | All 8 providers |
| EU (Germany/Finland/France) | Hetzner, Netcup, Scaleway, OVH |
| Singapore (closest Asia-Pacific) | DigitalOcean, Vultr |

### Auto-Scaling

**Limited.** Elestio is VM-based, not serverless. You can:
- Vertically scale (resize VMs) with some downtime
- Manually provision additional instances
- No native horizontal auto-scaling
- Would need custom orchestration (Kubernetes via K3s on Elestio) for true auto-scaling

### Managed Qdrant: Share or Separate?

**Can share with namespacing.** Qdrant supports collections and payload filtering, so SubAIVAs can share a Qdrant instance with:
- Separate collections per SubAIVA (recommended for isolation)
- Payload-based filtering within shared collections (more efficient but less isolated)
- A single managed Qdrant on a 4-8GB VM can handle 100+ SubAIVAs with moderate vector counts

**Current Elestio Qdrant**: Already deployed. Can be extended for SubAIVAs.

### Pricing for 10/50/100 SubAIVAs (Elestio-only approach)

**Scenario A: CPU gateway + shared Qdrant (no local LLM -- use external inference)**

| Scale | Gateway VMs | Shared Qdrant | Shared PostgreSQL | Shared Redis | Total/mo |
|-------|------------|---------------|-------------------|-------------|----------|
| 10 SubAIVAs | 1x 4vCPU/8GB ($40) | 1x 4GB ($30) | Existing | Existing | ~$70/mo |
| 50 SubAIVAs | 3x 4vCPU/8GB ($120) | 1x 8GB ($55) | 1x dedicated ($30) | Existing | ~$205/mo |
| 100 SubAIVAs | 6x 4vCPU/8GB ($240) | 2x 8GB ($110) | 1x dedicated ($40) | 1x dedicated ($25) | ~$415/mo |

**Scenario B: GPU + Ollama per SubAIVA (NOT recommended)**

| Scale | Cost | Why Not |
|-------|------|---------|
| 10 SubAIVAs | 10x $212 = $2,120/mo | Destroys margin at $497/mo pricing |
| 100 SubAIVAs | 100x $212 = $21,200/mo | Absurd |

### Elestio Verdict

**Best for: Stateful infrastructure (databases, gateway, caching)**
**NOT for: LLM inference at scale (GPU costs destroy margins)**

---

## Option 2: Together.ai (Serverless Inference)

### Models Available

Together.ai hosts 200+ models. Key models for SubAIVA:

**Best value for SubAIVA brain (serverless):**

| Model | Size | Input $/M tokens | Output $/M tokens | Notes |
|-------|------|-------------------|-------------------|-------|
| Qwen3-Next-80B-A3B-Instruct | 80B (3B active) | $0.15 | $1.50 | MoE, very cheap input, smart |
| Qwen3-Next-80B-A3B-Thinking | 80B (3B active) | $0.15 | $1.50 | With reasoning |
| Qwen3-235B-A22B-Instruct | 235B (22B active) | $0.20 | $0.60 | Best quality/cost ratio |
| Qwen 2.5 7B Instruct Turbo | 7B | $0.30 | $0.30 | Fastest, cheapest dense |
| Llama 3.1 8B Instruct Turbo | 8B | $0.18 | $0.18 | Cheapest Llama |
| Llama 3.3 70B Instruct Turbo | 70B | $0.88 | $0.88 | Best open-source quality |
| Mistral Small 3 | ~24B | $0.10 | $0.30 | Very cheap |

**Embedding models:**

| Model | $/M tokens | Dimensions |
|-------|-----------|------------|
| BGE-Base-EN v1.5 | $0.01 | 768 |
| BGE-Large-EN v1.5 | $0.02 | 1024 |
| Multilingual e5 large instruct | $0.02 | 1024 |

### Pricing Per Token for Inference

See table above. Key insight: **MoE models (Qwen3-Next, Qwen3-235B) offer the best value** because they activate only a fraction of parameters per inference, keeping costs low while maintaining quality.

**Recommended SubAIVA brain model: Qwen3-235B-A22B-Instruct** at $0.20/$0.60 per M tokens. This is a 235B parameter model that only activates 22B parameters per request -- excellent quality at a fraction of the cost of a full 235B model.

### Can We Run Custom/Fine-Tuned Models?

**Yes.** Together.ai supports:
- Upload custom models from Hugging Face (paid tiers)
- LoRA fine-tuning on their platform ($0.48/M tokens for models up to 16B)
- Deploy fine-tuned models to dedicated endpoints instantly
- No upload fees or storage costs -- you only pay for inference time on dedicated endpoints

### Latency for Australian Users

**Together.ai data centers are primarily in the US, with expansion into EU and Asia.**
- No Australian data center confirmed
- US West Coast to Sydney: ~150-180ms network latency
- With inference time (~200-500ms for small models, 1-3s for large models), total response time: ~400ms-3.5s
- For voice applications (Telnyx), this is acceptable as voice has its own buffering
- For chat, this is noticeable but acceptable (sub-2s for most queries)

**Mitigation**: Use Cloudflare edge caching for common/cached responses to reduce perceived latency.

### API Compatibility

**Fully OpenAI-compatible.** Together.ai's API endpoints for chat, vision, images, embeddings, and speech are drop-in replacements for OpenAI's client libraries. Just change the base URL:

```python
client = OpenAI(
    base_url="https://api.together.xyz/v1",
    api_key="YOUR_TOGETHER_API_KEY"
)
```

This means OpenClaw (which supports OpenAI-compatible APIs) can connect to Together.ai with zero code changes.

### Batch Inference Pricing

**50% discount on most models** for batch (non-real-time) processing. Useful for:
- Nightly memory consolidation
- Knowledge graph updates
- Bulk document processing
- Pre-computing common responses

### Rate Limits at Scale

| Tier | RPM (Requests Per Minute) | Token Limits |
|------|---------------------------|-------------|
| Default | 60 RPM base | Model-specific |
| Dynamic | ~2x your sustained rate | Scales with consistent usage |
| Scale/Enterprise | Custom (contact sales) | Higher limits, SLAs |

**For 100 SubAIVAs**: At 1000 conversations/day each = ~100K conversations/day = ~70 conversations/minute. With ~3-5 API calls per conversation, that's 210-350 RPM. You would need Together.ai's Scale or Enterprise tier, or distribute across multiple API keys.

### Dedicated Endpoints (Reserved GPU)

| GPU | Hourly Cost | Monthly (24/7) |
|-----|------------|-----------------|
| 1x H200 141GB | $4.99/hr | ~$3,593/mo |
| 1x H100 80GB | $3.36/hr | ~$2,419/mo |
| 1x A100 SXM 80GB | $2.56/hr | ~$1,843/mo |

**When to use dedicated**: When serverless rate limits are insufficient, or when you need guaranteed latency SLAs. A single H100 can serve many concurrent SubAIVAs.

### Cost to Serve 100 SubAIVAs (~1000 conversations/day each)

**Assumptions per conversation**:
- ~2000 input tokens (system prompt + context + user message)
- ~500 output tokens (response)
- 3 API calls per conversation (routing + generation + tool use)
- Total: ~6000 input + 1500 output tokens per conversation

**Using Qwen3-235B-A22B-Instruct ($0.20/$0.60 per M tokens):**

| Scale | Conversations/day | Input tokens/mo | Output tokens/mo | Input cost | Output cost | Embeddings | Total/mo |
|-------|-------------------|-----------------|------------------|-----------|-------------|------------|----------|
| 10 SubAIVAs | 10,000 | 1.8B | 450M | $360 | $270 | $18 | **~$648/mo** |
| 50 SubAIVAs | 50,000 | 9B | 2.25B | $1,800 | $1,350 | $90 | **~$3,240/mo** |
| 100 SubAIVAs | 100,000 | 18B | 4.5B | $3,600 | $2,700 | $180 | **~$6,480/mo** |

**Using cheaper Qwen3-Next-80B-A3B ($0.15/$1.50 per M tokens) -- lighter model:**

| Scale | Input cost | Output cost | Embeddings | Total/mo |
|-------|-----------|-------------|------------|----------|
| 10 SubAIVAs | $270 | $675 | $18 | **~$963/mo** |
| 100 SubAIVAs | $2,700 | $6,750 | $180 | **~$9,630/mo** |

**Using cheapest viable: Llama 3.1 8B Turbo ($0.18/$0.18 per M tokens):**

| Scale | Input cost | Output cost | Embeddings | Total/mo |
|-------|-----------|-------------|------------|----------|
| 10 SubAIVAs | $324 | $81 | $18 | **~$423/mo** |
| 100 SubAIVAs | $3,240 | $810 | $180 | **~$4,230/mo** |

**NOTE**: These costs assume 1000 conversations/day per SubAIVA, which is aggressive. Real-world usage for a $497/mo business receptionist will likely be 50-200 conversations/day, reducing costs by 5-20x.

**Realistic estimate (100 convos/day per SubAIVA, Qwen3-235B):**

| Scale | Total inference/mo |
|-------|--------------------|
| 10 SubAIVAs | **~$65/mo** |
| 50 SubAIVAs | **~$324/mo** |
| 100 SubAIVAs | **~$648/mo** |

### Together.ai Verdict

**Best for: LLM inference (serverless, pay-per-token, OpenAI-compatible, zero GPU management)**
**Strength: Model flexibility -- can upgrade SubAIVA brain models instantly without infrastructure changes**
**Weakness: No Australian data centers (latency), rate limits need Enterprise tier at scale**

---

## Option 3: Cloudflare (Edge AI / Workers AI)

### Workers AI: Models Available

Cloudflare Workers AI runs inference on their global edge network. Available models:

**LLMs:**

| Model | Size | Input $/M tokens | Output $/M tokens |
|-------|------|-------------------|-------------------|
| Llama 3.2 1B | 1B | $0.027 | $0.201 |
| Llama 3.1 8B | 8B | $0.282 | $0.827 |
| Llama 3.3 70B (fp8) | 70B | $0.293 | $2.253 |
| QwQ 32B | 32B | $0.660 | $1.000 |
| Qwen 2.5 Coder 32B | 32B | $0.660 | $1.000 |
| DeepSeek-R1-Distill-Qwen-32B | 32B | $0.660 | $1.000 |
| Llama 4 Scout 17Bx16E | MoE | TBD | TBD |
| GPT-OSS-120B | 120B | TBD | TBD |

**Embedding models:**
| Model | $/M tokens |
|-------|-----------|
| BGE-M3 | $0.012 |
| Qwen3 Embedding 0.6B | $0.012 |

**Critical limitation: No Qwen 3 14B, no Qwen3-235B, no Qwen3-Next models.** The largest Qwen model is 32B (Coder variant only). This severely limits model choice compared to Together.ai.

### Pricing Model

- $0.011 per 1,000 Neurons (their compute unit)
- Free tier: 10,000 Neurons/day (enough for ~4,000 tokens on Llama 8B)
- No hourly charges -- pure pay-per-request (serverless)
- Workers Paid plan: $5/mo base

### Can It Run Qwen 3 14B?

**No.** Workers AI does not currently offer Qwen 3 14B. The available Qwen models are:
- Qwen 2.5 Coder 32B (code-focused, not ideal for general conversation)
- QwQ 32B (reasoning-focused)
- Qwen3 Embedding 0.6B (embeddings only)

This is a significant gap for SubAIVA, which needs a general-purpose conversational model.

### Vectorize vs Our Qdrant

| Feature | Cloudflare Vectorize | Our Qdrant (Elestio) |
|---------|---------------------|----------------------|
| Pricing | $0.01/M queried dimensions + $0.05/100M stored dimensions | Included in VM cost (~$30/mo) |
| Free tier | 30M queried + 5M stored dimensions/mo | N/A |
| Max vectors | 5 million per index | Unlimited (hardware-bound) |
| Filtering | Basic metadata | Rich payload filtering |
| Multi-tenancy | Multiple indexes (free) | Collections + namespaces |
| Latency | Edge-local (very fast) | Single region |
| Maturity | GA but young product | Battle-tested, feature-rich |

**Verdict**: Vectorize is cheaper for small scale and has edge-latency benefits. Qdrant is more mature and flexible for complex memory operations. For SubAIVA's memory system (which uses LanceDB patterns), Qdrant is the safer choice.

### D1 vs Our PostgreSQL

| Feature | Cloudflare D1 | Our PostgreSQL (Elestio) |
|---------|--------------|--------------------------|
| Pricing | $0.001/M rows read, $1.00/M rows written, $0.75/GB storage | Included in VM cost (~$14-30/mo) |
| Free tier | 5M reads/day, 100K writes/day, 5GB | N/A |
| SQL dialect | SQLite-based | Full PostgreSQL |
| Extensions | None (SQLite) | Full pgvector, PostGIS, etc. |
| Scalability | Distributed, edge-replicated | Single instance (can cluster) |
| Maturity | GA but limited feature set | Industry standard |

**Verdict**: D1 is SQLite-based, which **violates Genesis Rule 7 (No SQLite)**. Additionally, PostgreSQL's pgvector extension and full SQL capabilities are needed for SubAIVA. D1 is not a viable replacement.

### Latency: Australian Edge Locations

**Major advantage.** Cloudflare has AI inference-capable edge locations in:
- Sydney, Australia
- Melbourne, Australia
- Perth, Australia
- Brisbane, Canberra, Adelaide, Hobart (Workers, not confirmed for AI inference)

This means Workers AI inference runs at <20ms network latency for Australian users, vs ~150-180ms to US data centers. However, this advantage only applies to models available on Workers AI.

### Workers for Gateway Logic (WebSocket Support)

**Yes, but with caveats.** Cloudflare Workers support WebSockets via Durable Objects:
- WebSocket connections are charged as requests
- Incoming messages use a 20:1 billing ratio (1M messages = 50K billed requests)
- Durable Objects provide stateful, persistent WebSocket servers
- Hibernation API reduces costs for idle connections
- Maximum CPU time per request: 30 seconds (5 min with config)

**For OpenClaw gateway**: Workers could handle the WebSocket layer, but OpenClaw is a Node.js application that expects a traditional server environment. Running it as a Cloudflare Worker would require significant refactoring.

**Durable Objects pricing (relevant for gateway):**
- 1M requests/mo included, then $0.15/M
- 400K GB-s duration included, then $12.50/M GB-s
- Storage: 5GB included, then $0.20/GB-mo

### KV/R2 for Caching

| Service | Use Case | Pricing |
|---------|----------|---------|
| Workers KV | Response caching, session data | $0.50/M reads, $5.00/M writes, $0.50/GB storage |
| R2 | Object storage (documents, media) | $0.015/GB storage, $0.36/M Class A ops, free egress |

### Cost at Scale for 100 SubAIVAs (Cloudflare-only)

**Using Llama 3.3 70B (best available on Workers AI):**

| Component | 10 SubAIVAs | 100 SubAIVAs |
|-----------|-------------|-------------|
| Workers AI inference | ~$1,500/mo | ~$15,000/mo |
| Durable Objects (gateway) | ~$20/mo | ~$150/mo |
| Vectorize (memory) | ~$5/mo | ~$50/mo |
| D1 (NOT viable -- SQLite) | N/A | N/A |
| Workers + KV | ~$10/mo | ~$50/mo |
| **Total** | **~$1,535/mo** | **~$15,250/mo** |

**Problem**: Workers AI Llama 3.3 70B output tokens cost $2.253/M -- 3.75x more than Together.ai's Qwen3-235B at $0.60/M, while being a less capable model. The inference cost is the dominant expense and Cloudflare loses badly here.

### Model Size Limitations

The largest confirmed model on Workers AI is approximately 70B parameters (Llama 3.3 70B with fp8 quantization) plus GPT-OSS-120B. The model catalog is significantly smaller than Together.ai's 200+ models. No custom model uploads.

### Cloudflare Verdict

**Best for: Edge caching, CDN, response caching near Australian users, static asset serving**
**NOT for: Primary LLM inference (limited models, higher cost per token, no custom models)**
**NOT for: Primary database (D1 is SQLite-based, violates Genesis rules)**

---

## Comparison Matrix

| Criterion | Elestio | Together.ai | Cloudflare |
|-----------|---------|-------------|------------|
| **Model flexibility** | Full (run any model via Ollama) | Excellent (200+ models, custom fine-tuned) | Limited (subset of open-source, no custom) |
| **Cost per SubAIVA/month** (infra only) | $4-20 (gateway+DB share) | N/A (inference only) | $2-5 (Workers+DO) |
| **Cost per SubAIVA/month** (inference) | $212+ (GPU required) | $3-7 (serverless, 100 convos/day) | $15-150 (depends on model) |
| **Latency (Australia)** | Good (Vultr Sydney) | Moderate (US-based, ~150-180ms RTT) | Excellent (Sydney/Melbourne/Perth edge) |
| **Memory/vector support** | Excellent (managed Qdrant) | Basic (embeddings API only) | Good (Vectorize, but young) |
| **Auto-scaling** | Manual/limited | Automatic (serverless) | Automatic (serverless) |
| **Data residency** | AU (Vultr), US, EU | US primarily, expanding | AU (Sydney/Melbourne), global |
| **GPU availability** | EU only (Hetzner), no AU | Not needed (serverless) | Edge GPUs (AU available) |
| **Custom model support** | Full (Ollama runs anything) | Yes (HuggingFace upload, fine-tuning) | No custom models |
| **Multi-tenant isolation** | VM-level or container-level | API key / endpoint level | Worker-level isolation |
| **Operational complexity** | Medium (manage VMs, updates) | Low (pure API calls) | Low (serverless) |
| **OpenAI API compatible** | N/A (self-hosted) | Yes (drop-in replacement) | Yes (Workers AI binding) |
| **WebSocket support** | Full (native on VMs) | N/A | Yes (via Durable Objects) |
| **Batch processing** | Manual | Yes (50% discount) | No batch mode |

### Cost at Scale

| Scale | Elestio (infra only) | Together.ai (inference, Qwen3-235B, 100 convos/day) | Cloudflare (inference, Llama 70B, 100 convos/day) |
|-------|---------------------|------------------------------------------------------|---------------------------------------------------|
| **10 SubAIVAs** | ~$70/mo | ~$65/mo | ~$150/mo |
| **50 SubAIVAs** | ~$205/mo | ~$324/mo | ~$750/mo |
| **100 SubAIVAs** | ~$415/mo | ~$648/mo | ~$1,500/mo |
| **1000 SubAIVAs** | ~$3,500/mo | ~$6,480/mo | ~$15,000/mo |

**Combined (Elestio infra + Together.ai inference):**

| Scale | Total Cost/mo | Per SubAIVA/mo |
|-------|--------------|----------------|
| 10 | ~$135 | ~$13.50 |
| 50 | ~$529 | ~$10.58 |
| 100 | ~$1,063 | ~$10.63 |
| 1000 | ~$9,980 | ~$9.98 |

---

## Cost Modeling at Scale

### Realistic Usage Assumptions

For an AI receptionist at a small business ($497/mo tier):
- **50-200 conversations/day** (not 1000 -- that's enterprise level)
- **Average conversation**: 4 turns (8 API calls including tool use)
- **Tokens per conversation**: ~3,000 input + 800 output
- **Memory operations**: 2-3 vector lookups per conversation
- **Voice calls**: Handled by Telnyx (separate billing, ~$0.02-0.05/min)

### Per-SubAIVA Monthly Cost Breakdown (100 convos/day)

**Model: Qwen3-235B-A22B-Instruct (recommended)**

| Component | Provider | Cost/mo | Notes |
|-----------|----------|---------|-------|
| LLM inference (input) | Together.ai | $1.80 | 9M input tokens @ $0.20/M |
| LLM inference (output) | Together.ai | $1.44 | 2.4M output tokens @ $0.60/M |
| Embeddings | Together.ai | $0.18 | 9M tokens @ $0.02/M (BGE-Large) |
| Gateway compute (shared) | Elestio | $3-5 | Share of VM costs |
| Qdrant memory (shared) | Elestio | $2-3 | Share of managed Qdrant |
| PostgreSQL (shared) | Elestio | $1-2 | Share of existing instance |
| Redis caching (shared) | Elestio | $0.50-1 | Share of existing instance |
| Cloudflare CDN | Cloudflare | $0.10-0.50 | Workers + caching |
| **Total per SubAIVA** | | **$10-14/mo** | At 100 convos/day |

**Model: Llama 3.1 8B Turbo (budget option for Tier 1)**

| Component | Cost/mo | Notes |
|-----------|---------|-------|
| LLM inference | $0.97 | Both input+output @ $0.18/M |
| Everything else | $7-12 | Same as above |
| **Total per SubAIVA** | **$8-13/mo** | Cheaper model, good enough for basic |

**Model: Qwen3-235B (heavy usage, 500 convos/day, Tier 3)**

| Component | Cost/mo |
|-----------|---------|
| LLM inference | $16.20 |
| Everything else | $10-15 |
| **Total per SubAIVA** | **$26-31/mo** |

---

## Hybrid Architecture (Recommended)

```
                    AUSTRALIAN USER
                         |
                    [Cloudflare CDN]
                    Edge Cache (Sydney/Melbourne)
                    - Cached responses (sub-5ms)
                    - Static assets
                    - Rate limiting
                    - DDoS protection
                         |
                    [Elestio Gateway VM]
                    OpenClaw Gateway (Vultr Sydney or Hetzner EU)
                    - WebSocket handler
                    - Session management
                    - Tool execution
                    - Request routing
                    /          |           \
                   /           |            \
        [Together.ai]    [Elestio Qdrant]   [Elestio PostgreSQL]
        Serverless LLM   Vector Memory      Entity Storage
        - Qwen3-235B     - Per-SubAIVA      - User profiles
        - Embeddings       collections      - Conversation logs
        - Batch jobs     - Shared cluster   - Billing state
                              |
                         [Elestio Redis]
                         Working Memory
                         - Session cache
                         - Rate limit counters
                         - Pub/Sub for real-time
                              |
                         [Telnyx]
                         Voice Pipeline
                         - Australian numbers
                         - WebRTC widget
                         - AI Assistant API
```

### Why This Architecture Wins

1. **Cost-optimal**: Together.ai serverless = pay only for tokens used. No idle GPU costs.
2. **Model-flexible**: Can upgrade SubAIVA brain instantly (switch from Llama 8B to Qwen3-235B with a config change).
3. **Australian-fast**: Cloudflare edge cache in Sydney serves cached responses in <5ms. Gateway in Sydney (Vultr) for <20ms to databases.
4. **Operationally simple**: No GPU management. Elestio manages VM updates/backups. Together.ai manages inference infrastructure.
5. **Scales linearly**: Adding a SubAIVA = create a Qdrant collection + PostgreSQL row + API key. No new infrastructure until you hit VM capacity.
6. **Tiered model strategy**:
   - Tier 1 ($497): Llama 3.1 8B or Qwen 2.5 7B (cheapest, fast)
   - Tier 2 ($997): Qwen3-235B-A22B-Instruct (smarter, better memory)
   - Tier 3 ($1,497): Qwen3-235B + voice (Telnyx) + advanced tools
   - Queen ($20K+): Local Qwen 3 14B on Mac Mini (sovereign, existing)

### Implementation Path

**Month 1 (10 SubAIVAs)**:
1. Deploy 1x OpenClaw gateway VM on Elestio (Vultr Sydney, 4vCPU/8GB, ~$40/mo)
2. Extend existing Qdrant with 10 new collections
3. Configure Together.ai API keys (serverless, Qwen3-235B)
4. Set up Cloudflare CDN + response caching
5. Total infrastructure: ~$70/mo + ~$65/mo inference = **$135/mo**

**Month 6 (100 SubAIVAs)**:
1. Scale to 3-4 gateway VMs behind a load balancer
2. Dedicated Qdrant cluster (2x 8GB VMs)
3. Together.ai Scale tier for higher rate limits
4. Total: ~$415/mo infra + ~$648/mo inference = **$1,063/mo**

**Year 1 (1000 SubAIVAs)**:
1. Consider Together.ai dedicated endpoint (H100, $2,419/mo) vs serverless ($6,480/mo)
2. At 1000 instances, dedicated endpoint likely cheaper and faster
3. Elestio K3s cluster for gateway auto-scaling
4. Total: ~$3,500/mo infra + ~$5,000-6,500/mo inference = **$8,500-10,000/mo**

---

## Gross Margin Analysis

### At 100 Conversations/Day per SubAIVA

| Tier | Monthly Price | Cost per SubAIVA | Gross Margin | Margin % |
|------|--------------|-------------------|-------------|----------|
| Tier 1 ($497) | $497 | ~$10-13 (Llama 8B) | $484-487 | **97.4-97.9%** |
| Tier 2 ($997) | $997 | ~$14-18 (Qwen3-235B) | $979-983 | **98.2-98.6%** |
| Tier 3 ($1,497) | $1,497 | ~$28-35 (Qwen3-235B + Telnyx voice) | $1,462-1,469 | **97.7-98.1%** |

### At 500 Conversations/Day (Heavy Usage)

| Tier | Monthly Price | Cost per SubAIVA | Gross Margin | Margin % |
|------|--------------|-------------------|-------------|----------|
| Tier 1 ($497) | $497 | ~$25-35 | $462-472 | **92.9-95.0%** |
| Tier 2 ($997) | $997 | ~$40-55 | $942-957 | **94.5-96.0%** |
| Tier 3 ($1,497) | $1,497 | ~$55-75 | $1,422-1,442 | **95.0-96.3%** |

**All scenarios exceed the 80% gross margin target, most exceeding 95%.**

### Break-Even Analysis

| Fixed Costs (Shared Infra) | Monthly |
|---------------------------|---------|
| Gateway VMs (1-2) | $40-80 |
| Qdrant cluster | $30-55 |
| PostgreSQL | $14-30 |
| Redis | $14-25 |
| Cloudflare Workers Paid | $5 |
| Together.ai base | $0 (pay-per-use) |
| **Total fixed** | **$103-195/mo** |

Break-even at Tier 1 pricing ($497/mo): **1 customer covers all fixed infra costs.**
By customer #2, you are profitable on infrastructure.
Variable costs (inference) scale linearly and remain <5% of revenue.

---

## Key Risks & Mitigations

| Risk | Impact | Mitigation |
|------|--------|------------|
| Together.ai rate limits at scale | Throttled responses | Enterprise tier, or switch to dedicated endpoint at 500+ SubAIVAs |
| Together.ai latency from US to AU | 150-180ms added RTT | Cloudflare edge cache for common responses; streaming responses hide latency |
| Hetzner price increases (April 2026) | 30-37% cost increase on EU VMs | Use Vultr Sydney for AU-facing infra; Hetzner only for EU customers |
| Together.ai model deprecation | Brain model removed | Multi-model strategy; can switch models via config, not code |
| Qdrant single-instance failure | Memory loss for all SubAIVAs | Elestio daily backups + replication if critical |
| Cloudflare Workers AI improves model catalog | Better edge inference option | Monitor; switch inference to Cloudflare if they add Qwen3-235B equivalent |

---

## Decision Summary

| Question | Answer |
|----------|--------|
| Should we use Elestio for everything? | **No** -- GPU costs destroy margins for inference |
| Should we use Together.ai for everything? | **No** -- no stateful infrastructure (databases, gateway) |
| Should we use Cloudflare for everything? | **No** -- limited models, D1 is SQLite (forbidden), no custom models |
| Should we go hybrid? | **Yes** -- each provider for its strength |
| Which LLM provider? | **Together.ai** -- best model selection, OpenAI-compatible, cheapest per-token |
| Which infra provider? | **Elestio** -- already in use, managed Qdrant/PostgreSQL/Redis |
| Which CDN/edge? | **Cloudflare** -- Australian edge locations, response caching |
| Gross margin achievable? | **Yes** -- 92-98% depending on usage tier |

---

## Sources

- [Elestio Pricing](https://elest.io/pricing)
- [Elestio Ollama Plans](https://elest.io/open-source/ollama/resources/plans-and-pricing)
- [Elestio Custom Docker Deploy](https://docs.elest.io/books/cicd-pipelines/page/deploy-own-docker-compose-image-using-elestio-custom-docker-compose)
- [Elestio Container Hosting](https://elest.io/fully-managed-services/hosting-and-infrastructure/containers)
- [Together.ai Pricing](https://www.together.ai/pricing)
- [Together.ai Models](https://www.together.ai/models)
- [Together.ai Qwen Family](https://www.together.ai/qwen)
- [Together.ai Rate Limits](https://docs.together.ai/docs/rate-limits)
- [Together.ai Dedicated Endpoints](https://www.together.ai/dedicated-endpoints)
- [Together.ai OpenAI Compatibility](https://docs.together.ai/docs/openai-api-compatibility)
- [Together.ai Data Center Locations](https://www.together.ai/data-center-locations)
- [Together.ai Fine-Tuning](https://www.together.ai/fine-tuning)
- [Together.ai Inference Models](https://docs.together.ai/docs/inference-models)
- [Cloudflare Workers AI Pricing](https://developers.cloudflare.com/workers-ai/platform/pricing/)
- [Cloudflare Workers AI Models](https://developers.cloudflare.com/workers-ai/models/)
- [Cloudflare Workers Pricing](https://developers.cloudflare.com/workers/platform/pricing/)
- [Cloudflare Vectorize Pricing](https://developers.cloudflare.com/vectorize/platform/pricing/)
- [Cloudflare D1 Pricing](https://developers.cloudflare.com/d1/platform/pricing/)
- [Cloudflare Durable Objects Pricing](https://developers.cloudflare.com/durable-objects/platform/pricing/)
- [Cloudflare Global Network](https://www.cloudflare.com/network/)
- [Hetzner GPU Server GEX44](https://www.hetzner.com/dedicated-rootserver/gex44/)
- [Hetzner GPU Server GEX130](https://www.hetzner.com/dedicated-rootserver/gex130/)
- [Hetzner 2026 Price Increase](https://webhosting.today/2026/02/24/hetzner-raises-prices-from-april-1-2026-cloud-increases-reach-up-to-37/)

---

*Report generated 2026-02-26 by Genesis Research Agent. All pricing sourced from live web data.*
*Pricing is subject to change. Verify with providers before committing.*
