# Ghost vs Substack: Which Can You Vibe Code?

**Verdict: Substack is the easier vibe code** — 65/100 (Solid side project) vs 38/100.

| | Ghost | Substack |
|---|---|---|
| Vibecodeability | 38/100 | 65/100 |
| Tier | Serious undertaking | Solid side project |
| Estimated effort | 4-6 weeks of intensive development | 2-3 weekends of work |
| SaaS bill replaced | $29/mo (Publisher plan) | Free take-rate (10% of creator revenue) |
| Category | Publishing & Newsletter SaaS | Publishing & Newsletter SaaS |

## The case on Ghost

Build a simplified self-hosted blogging subset with local SQLite and basic auth, but keep paying for Ghost if you need reliable bulk email deliverability and Stripe billing.

Hardest parts:

- Email deliverability infrastructure: managing bulk sending, SPF/DKIM/DMARC alignment, and reputation monitoring without burning sender domains
- Theme sandboxing and rendering: executing custom Handlebars templates safely against the Content API without allowing server exploits
- Billing sync: reconciling complex Stripe recurring webhooks with local member states, upgrades, cancellations, and trials
- ActivityPub federation: implementing decentralized follow/inbox/outbox protocols to sync posts across Mastodon and Threads

Full report: https://vibeityourself.com/app/ghost (markdown: /app/ghost.md)

## The case on Substack

Build a personal publishing and email newsletter clone with a Next.js monolith, but email deliverability hurdles and webhook edge cases will test your patience.

Hardest parts:

- Achieving high email deliverability at scale without hitting spam filters
- Managing complex webhook states and async delivery failures for thousands of emails
- Handling global recurring payment states, dunning, and failed charges via Stripe
- Maintaining rich-text editor edge cases, image handling, and custom domain mapping

Full report: https://vibeityourself.com/app/substack (markdown: /app/substack.md)