Substack
Publish posts and send email from a self-owned list without recreating discovery or payments
A consolation build is possible, but the paid product's decisive value sits outside a solo rebuild. For Substack, publish posts and send email from a self-owned list without recreating discovery or payments. The hard boundary is reader network, recommendations, app distribution, payments, and brand familiarity, plus deliverability, growth network, and integrations.
Build verification: not recorded. How we judge buildability
What you give up
- reader network, recommendations, app distribution, payments, and brand familiarity
- inbox-placement expertise
- advanced automations
- commerce integrations
- recommendation and ad networks
Why people still pay
People still pay for Substack because newsletter operators pay for inbox placement, growth mechanics, and operational confidence on publication day. The recurring cost buys DNS authentication, reputation, bounces, complaints, unsubscribe compliance, templates, queues, analytics, backups, and support, not just the visible interface.
Your build guide
The stack, security requirements, and agent rules for a focused replacement.
Before you start
- Amazon SES account
- verified sending domain
- PostgreSQL
- public HTTPS deploy target
- DNS access
Use these project rules and optional skill references alongside the prompt. Review each skill before adding it to your agent; the AGENTS.md export includes the same guidance.
Project rule, data: Model subscribers, consent records, campaigns, delivery attempts, and suppression state; keep stable source IDs and timestamps.
Project rule, behavior: Implement subscriber import, double opt-in, unsubscribe, suppression, tags, and consent timestamps.
Project rule, recovery: Queue sends through SES with retries, rate limits, idempotency, and resumable batches.
Implementation plan
Phase 1, architecture and data
Use Next.js 15, TypeScript, PostgreSQL, Drizzle ORM, and Amazon SES. Model subscribers, consent records, campaigns, delivery attempts, and suppression state; keep stable source IDs and timestamps.
Phase 2, implement
Implement subscriber import, double opt-in, unsubscribe, suppression, tags, and consent timestamps.
Phase 3, implement
Create a Markdown campaign editor with HTML and plain-text previews.
Phase 4, review and output
Queue sends through SES with retries, rate limits, idempotency, and resumable batches. Add test sends, seed-list checks, DNS setup guidance, exports, and backups.
Phase 5, recovery and acceptance
Queue sends through SES with retries, rate limits, idempotency, and resumable batches. Verify this invariant with a saved fixture: Unsubscribed or bounced addresses must stay suppressed; retrying an ambiguous provider response cannot silently send twice. State the practical limit: reader network, recommendations, app distribution, payments, and brand familiarity.
Build me a focused email newsletters and creator publishing workflow for the personal core of Substack. Requirements: - Use Next.js 15, TypeScript, PostgreSQL, Drizzle ORM, and Amazon SES. Model subscribers, consent records, campaigns, delivery attempts, and suppression state; keep stable source IDs and timestamps. - Paid product context: Publish posts and send email from a self-owned list without recreating discovery or payments. Build only this DIY scope: Collect subscribers on a self-owned list, compose and send compliant email posts, publish a web archive, and report basic delivery and click events without recreating discovery or payments. - Implement subscriber import, double opt-in, unsubscribe, suppression, tags, and consent timestamps. - Create a Markdown campaign editor with HTML and plain-text previews. - Queue sends through SES with retries, rate limits, idempotency, and resumable batches. Process delivery, bounce, complaint, open, and click webhooks without logging message content. Publish a simple issue archive and subscriber preference page. - Use a local web page with input, progress, review, and export views. Required input or access: Amazon SES account; verified sending domain. Keep credentials in .env. - Recovery: Queue sends through SES with retries, rate limits, idempotency, and resumable batches. - Acceptance: with one labelled sample, show the input, saved intermediate state, and exported result; verify this invariant: Unsubscribed or bounced addresses must stay suppressed; retrying an ambiguous provider response cannot silently send twice. - Out of scope: reader network, recommendations, app distribution, payments, and brand familiarity; inbox-placement expertise. Keep this a personal, inspectable workflow. - Include a README with setup, a sample input, required keys or permissions, data location, and the supported scope.
$ open in your agent (prompt prefilled, you press enter), copy the prompt or copy AGENTS.md · generated from this app's build plan
prompt copied. want to know what dies next week?
new verdicts + top votes, weekly. free. one-click out.
Alternatives to building your own
no votes, no pay-to-list · just what's real
Substack pricing
| plan | monthly | annual (per mo) | what you get |
|---|---|---|---|
| free publishing | $0/workspace | $0/workspace | Unlimited free subscribers/posts/email publishing; fees only when charging readers. |
| paid subscriptions platform fee | — | — | 10% Substack fee on paid subscription revenue plus payment processing.Revenue share, not a monthly subscription. |
free tier$0; unlimited free subscribers, posts and email publishing; fees only when charging readers.
billingno monthly/annual subscription; revenue share on paid subscriptions
hidden costsPaid newsletters pay 10% Substack fee plus Stripe card fees of 2.9% + $0.30 and a 0.7% recurring-billing fee; Stripe/payment-method fees vary by country/method.
pricing sources checked 2026-08-10 · pricing source ↗
Questions about Substack
Can you build your own Substack with AI?
A full replacement is not the recommended project. A consolation build is possible, but the paid product's decisive value sits outside a solo rebuild. For Substack, publish posts and send email from a self-owned list without recreating discovery or payments. The hard boundary is reader network, recommendations, app distribution, payments, and brand familiarity, plus deliverability, growth network, and integrations.
What does the Substack build prompt cover?
The prompt starts with this scope: Collect subscribers on a self-owned list, compose and send compliant email posts, publish a web archive, and report basic delivery and click events without recreating discovery or payments. Full-product capabilities excluded from the comparison include: reader network, recommendations, app distribution, payments, and brand familiarity; inbox-placement expertise; advanced automations. Follow the implementation plan and its prerequisites before expanding the build.
How do I use the prompt, AGENTS.md and agent skills?
Start with the Substack prerequisites and stack, then copy the prompt into your coding agent. Save the project rules as AGENTS.md in the project root. Linked skills are optional packages or source instructions for specific tasks; review their current contents and install only those matching the chosen stack. A skill does not supply API credentials or verify the finished app.
How long will this Substack project take?
The catalogue estimate is closest consolation build: one sitting for the limited scope. Setup, integration approvals, debugging, deployment and ongoing maintenance can add time. This is an estimate, not a delivery guarantee.
What would I give up by replacing Substack?
reader network, recommendations, app distribution, payments, and brand familiarity; inbox-placement expertise; advanced automations; commerce integrations; recommendation and ad networks. People still pay for Substack because newsletter operators pay for inbox placement, growth mechanics, and operational confidence on publication day. The recurring cost buys DNS authentication, reputation, bounces, complaints, unsubscribe compliance, templates, queues, analytics, backups, and support, not just the visible interface.
What can I use instead of building Substack?
Ghost: Posts, newsletters, memberships and payments on your server; Substack's discovery graph does not come in the tarball. Check each option's license, hosting needs and feature limits.