Skip to content
Sendoff
Esc
↑↓navigate↵open⌘Jpreview
09:00 NO.24

Say “send it.” Sendoff handles the rest.

Newsletters and announcements for your list, sent from your own Cloudflare and AWS accounts and run from Claude or Codex.

Read the docs
  1. You:

    Draft issue 24 from my last three posts.

  2. Claude:

    “Shipping in public” is drafted, 612 words. The preview is ready.

    news.example.com/preview/x7Kp2Q

  3. You:

    Send me a test.

  4. Claude:

    Sent to hello@example.com. Preflight passed: send it to 6,042 subscribers?

  5. You:

    Looks good. Send it.

  6. Claude:

    Issue 24 is going out to 6,042 subscribers.

Your agent writes it. React Email makes it look good.

Connect Sendoff to Claude or Codex and describe the issue you want. Your agent writes and edits it, and Sendoff renders it with React Email into a polished layout, with buttons, callouts, images and dark mode taken care of.

Your agent sends a link when it’s ready.

Open it on your phone or laptop and see the issue the way subscribers will, before anything goes out.

Every view
Desktop and mobile, light and dark, and the plain-text version.
Live
Edits show up within a couple of seconds, so you can read along as you ask for changes.
Problems flagged
Anything that won’t render is listed by line, so your agent can fix it before you send.

news.example.com/preview/x7Kp2Q

Shipping in public

Shipping in public

S

The Sendoff Quarterly <hello@example.com>

to you

09:00

The Sendoff Quarterly

Shipping in public

Three months of building in the open, and what I’d do differently next time.

Read the full post

The short version

Ship small, write it down and reply to everyone.

  • Why I post unfinished work
  • The tools I use every week

You’re receiving this because you subscribed to The Sendoff Quarterly. Unsubscribe

Host it yourself. Skip the subscription.

Sendoff runs in your own Cloudflare account and sends through your own Amazon SES, so you pay them directly and nobody else. Pick the service you’re on now and move the sliders to see how the bills compare.

Migrate from

Start from

10,000
Weekly

Resend

Per month

  • Pro marketing$80

    Up to 10,000 contacts, billed monthly

  • SendingIncluded

    Unlimited emails to your contacts

Total

$80

$960 a year

Sendoff

Per month

  • Sendoff$0

    Self-hosted, no subscription

  • Cloudflare$5

    Workers Paid, with D1 and Queues included

  • Amazon SES$4

    40,000 emails at $0.10 per 1,000

Total

$9

$108 a year

Sendoff costs $852 less a year.

Estimates, not quotes, checked October 31, 2026. Resend is priced on its marketing email plans (Free, then Pro marketing), which are billed monthly by contact count with unlimited sends, and quoted individually above 150,000 contacts. Sendoff is priced on Cloudflare Workers Paid, whose included usage covers its database and queue at these volumes, and Amazon SES at $0.10 per 1,000 emails, before any AWS free tier. Bounce, complaint and delivery notifications through Amazon SNS add cents at most. A domain costs the same either way. Sources: Resend, Cloudflare, Amazon SES.

Nothing leaves until preflight passes.

Before every send, Sendoff checks your domain, your SES account and your latest test, and won’t go until everything passes.

Authenticated
DKIM, a custom MAIL FROM and DMARC on your own domain, set up for you.
One-click unsubscribe
Every email carries one-click unsubscribe headers and a visible link, plus your postal address if you've set one.
A clean list
Signups confirm by email, and bounces and complaints come off the list on their own.

Ask for the status of any send.

Your agent can tell you how far a send has got, what bounced and who unsubscribed. Bounces and complaints come off the list on their own.

  • SENDING

    Shipping in public · No. 24

    Sent
    2,410 of 6,042
    Bounced
    3
    Unsubscribed
    1
  • Sent

    What I learned building Blume · No. 23

    Sent
    5,918
    Bounced
    12
    Unsubscribed
    9
  • Sent

    Notes on open source · No. 22

    Sent
    5,701
    Bounced
    9
    Unsubscribed
    7
  • Sent

    A year of building · No. 21

    Sent
    5,466
    Bounced
    14
    Unsubscribed
    11

Three steps, then it’s just talking.

  1. 1

    Deploy

    One command clones Sendoff and runs setup. It creates the database, queue and SES identity, writes your DNS records and asks AWS for production access.

    bun create sendoff

    Setup guide
  2. 2

    Connect

    Add one URL as a connector in claude.ai or Claude Desktop, or with the details setup prints for Claude Code and Codex.

    news.example.com/mcp

    Connect your agent
  3. 3

    Send

    Ask for a draft, check the preview and send yourself a test. Nothing goes out until you say so.

    “Send it.”

    How sending works

Give your emails a proper sendoff.

Deploy to your own Cloudflare and AWS accounts, bring your list with you, and send the next issue from the chat.