Decision Brief · CST Infrastructure

Building our own Gorgias

Can Emazing replace a $1,500–1,900/mo helpdesk + AI stack with a self-hosted system run by Claude? Yes. Here is the whole conversation in one page.

Prepared by Fable 5 for Anthony Lim · July 4, 2026 · Full PRD: ~/cron-launchers/helpdesk/PRD-gorgias-replacement.md

The verdict

4–5/10
Difficulty at AI speed. The software itself is not the hard part. A single-company helpdesk is mostly plain CRUD. The genuinely hard 20%: email plumbing that never silently drops a ticket, Meta's app-review calendar, and the fact that after cutover, we are the vendor at 2 AM.

What we're actually replacing (live account pull, July 4)

Your Gorgias account has run since 2019. Last 30 days:

Email + help center
8,119 · 86%
Phone (CloudTalk)
660 · 7%
Live chat
463 · 5%
Social (IG/FB/TikTok)
~207 · 2%

~9,450 tickets total. Config surface: 144 macros, 70 rules, 95 views, 623 tags, 5 Shopify stores, 3 chat widgets, 8 email addresses, ~8 human agents, 12 bot users (Yuma). A meaningful slice of email is spam we will kill at the Google layer before it ever becomes a ticket; measuring the exact share is a Phase 0 task.

Difficulty by piece

ComponentGradeWhy
Core ticketing, macros, rules, views, CSAT2 / 10Plain CRUD. Days of agent work.
Phone (CloudTalk webhook)2 / 10CloudTalk stays; we just receive its call-ended webhook.
Live chat + Shopify sidebar3 / 10Supabase Realtime (we already run Supabase) + a small widget per brand.
Migration + reporting3 / 10Fully scriptable; we already reverse-engineered Gorgias's reporting API.
Email pipeline (86% of volume)5 / 10Threading, dedupe, attachments, deliverability. Must be bulletproof; gets a 14-day shadow soak.
Social bridge6 / 10Not the code, the Meta app review. Only ~2% of volume and mostly handled outside Gorgias today; last and optional.
Operating it 24/77 / 10The real cost. Watchdogs, runbooks, and a rollback path are designed in from day one.

The money

$1,500–1,900
Today / month
Gorgias $800–900 + Yuma $700–1,000
$385–525
After cutover / month
hosting + email + Claude plans + API overflow
$12k–18k
Saved per year
~$1,000–1,500/mo
New stack line item$ / month
Supabase Pro (database, auth, realtime)25
App hosting (Fly.io / Railway)20–40
Email infra (Gmail API $0 on existing Workspace, or Postmark)0–60
Claude subscriptions for replies ($200 + $100 Max, Router-managed)300
Claude API overflow lane (Router "account D", used only at caps)20–100
Meta / TikTok APIs · CloudTalk unchanged0
Total~385–525
Verify first: the current-cost side uses your estimates. Phase 0 includes pulling the actual Gorgias and Yuma invoices so the savings math is exact before we commit.

How the replies get automated

Deterministic before AI, always. Spam dies at the Google layer for zero tokens. Order-status and tracking questions (the biggest CS category) are answered by scripts hitting Shopify and Loop, zero tokens. Only tickets needing judgment reach Claude: Haiku for simple ones, Sonnet for hard ones, routed through your existing Router across the two Max plans, overflowing to an API key during spikes so customers never wait on a cap reset. Every automated topic starts in draft-only mode and earns auto-send with a 95% approval rate. If automation CSAT dips below 90%, it tiers itself back down.

Build order and why

0
Prerequisites (starts now, mostly waiting)
Meta business verification (weeks of calendar, zero build). Yuma spec call with their CEO. Verify invoices. Measure spam share. Pick email infra + pilot mailbox.
1
Email ingestion in shadow mode (~1 week + 14-day soak)
Email is 86% of volume and the highest risk, so it goes first, mirroring live Gorgias with zero customer contact. Gate: 99.9% parity for 14 straight days.
2
Agent workspace (~1–2 weeks)
Inbox, views, macros, tags, search, Shopify sidebar, rules, CSAT. Ross + one agent sign off on a full simulated day before anything cuts over.
3
Outbound email + one-mailbox pilot (~1 week + 2-week soak)
First customer contact, on the lowest-risk mailbox (suggest LuxRave). CloudTalk webhook lands here too. Gorgias keeps everything else.
4
Live chat (~3–5 days)
Only 5% of volume; needs the realtime layer and agents already living in the new workspace.
5
Pam takes the replies (~1–2 weeks + 30-day CSAT gate)
The helpdesk must be boring and stable before automation compounds on it. This phase is where Yuma's job transfers and the second half of the savings unlocks.
6
Social bridge + full migration + cancel Gorgias
Lowest volume, highest external friction (Meta review). Six years of history imported. Gorgias stays alive as the rollback until this phase ends.
Wall clock: roughly 3–4 months to full cutover, dominated by deliberate soak periods and external reviews, not code. The code itself is ~5–7 weeks of orchestrated agent work. Every phase can roll back to Gorgias.

The 8 decisions on your desk

#Decision · recommendation
D1Name it. Working name "EG Helpdesk".
D2Dedicated $200 + $100 Claude plans for CS (recommended) vs sharing the existing fleet accounts. API key backs both as overflow.
D3Yuma connector vs parallel-run until Pam proves out. Recommended: parallel-run; the connector is throwaway work if Pam succeeds.
D4Email infra: Gmail API on existing Workspace (recommended, $0, the Google-level spam control you asked for) vs Postmark.
D5Pilot mailbox. Recommended: LuxRave (lowest volume, seasonal, smallest blast radius).
D6Social: build the Meta/TikTok bridge in Phase 6, or keep social manual forever.
D7Cutover gates: 99.9% 14-day parity, zero-loss 2-week pilot, 30-day CSAT ≥90%. Confirm or adjust.
D8On-call: who gets paged besides your Slack DM, and acceptable time-to-restore.

What happens next

You answer D1–D8 on the Basecamp card. Phase 0 starts immediately after (Meta verification and the Yuma call are pure calendar time, so the sooner they start, the sooner everything else can land). You and Fable stay orchestrator and planner; Opus, Codex, or any capable builder executes each phase from the PRD, and no phase advances without its acceptance evidence on the card.