One fewer setting to deal with! (Maybe)
Buttondown's blog
Buttondown's blog — guides, tutorials, and more
- Public lists
- davewiner/blogroll
- Fetched
Subscription wall
Gate your archive content behind a subscription — no paid plan required.
Inboxes were overwhelming before we'd even named them
Gather round while an old man yells at cloud (email)
The US government tried really hard to screw up email
While other projects floundered in red tape, email thrived in it.
Public postmortem: database connection exhaustion
Our public postmortem for the incident on March 31st, 2026.
Ask a nerd: what is the best way to unsubscribe from newsletters?
The email feature that got added because people kept marking email newsletters as junk.
Bookshop.org embeds
Share book recommendations with rich embeds from Bookshop.org
Email was into agents before they were cool
It turns out you’ve been using agents since way before the AI variety started deleting everything in their owners’ inboxes.
Passwordless login
Skip the password entirely and sign in with just your passkey.
Rename metadata keys in bulk
"First name" and "first_name", together at last
A spring cleaning for our legal docs
Updated DPA, privacy policy, sub-processor list, and cookie policy.
Ask a nerd: what happens when you click the spam button?
Honestly, it’s more conceptually complicated than technically complex.
Passkey support for two-factor authentication
Use your fingerprint, face, or security key as a second factor when signing in.
How Buttondown's API versioning works
A deep dive into our date-based API versioning system, inspired by Stripe, and how it lets us ship breaking changes without breaking your integrations.
How to send email to space
The first email was sent from space three days after the first webpage was published.
Safer defaults for the email creation API
A new API version that defaults to draft instead of sending, with a one-time confirmation header for immediate sends.
How we enabled Content Security Policy for everyone
Invisibly making your newsletter safer
Recovery codes for two-factor authentication
If you lose your authenticator device, recovery codes let you get back into your account.
Filter sent emails by engagement rate
Quickly find your best (and worst) performing emails by filtering on open rate, click rate, and delivery rate.
How we migrated to TypeIDs without breaking clients
Making every ID in our API self-describing, one endpoint at a time
How we check every link in your email
The machinery behind Buttondown's link checker is more involved than you might expect.
Should we bring back email exploders?
Mailing lists died out to make way for newsletters. But there are a lot of reasons to bring back group discussions over email.
Use newsletter metadata in your emails
Your newsletter's metadata is now available in email templates, giving you global variables you can reference across every email you send.
Sort and filter by open and click rates
Find your most (and least) engaged subscribers by sorting and filtering by open and click rates.
Custom click tracking domains
Your click tracking links now use your own sending domain instead of a shared proxy.
More newsletter settings in the API
The /v1/newsletters endpoint now exposes locale, templates, socials, transactional emails, and more.
Revamped replies
Reply tracking is now automatic for sending domains, and always on for everyone.
Custom email templates for everyone
Full HTML control over your email design is now available to all Professional plan users.
Simplified cancellation
No more choosing between "pause" and "cancel" — there's just one option now.
Ask a Nerd: Does email length affect deliverability?
You’d have to send fairly lengthy newsletters to run into issues. And even then, only a subset of subscribers would suffer.