Sign up

Buttondown's blog

Not verified No WebSub updates No webmention support Not yet validated

Buttondown's blog — guides, tutorials, and more

Public lists
davewiner/blogroll
Fetched

Buttondown's blog
Text

Simplified email address settings

One fewer setting to deal with! (Maybe)

Buttondown's blog
Text

Subscription wall

Gate your archive content behind a subscription — no paid plan required.

Buttondown's blog
Text

Inboxes were overwhelming before we'd even named them

Gather round while an old man yells at cloud (email)

Buttondown's blog
Text

The US government tried really hard to screw up email

While other projects floundered in red tape, email thrived in it.

Buttondown's blog
Text

Public postmortem: database connection exhaustion

Our public postmortem for the incident on March 31st, 2026.

Buttondown's blog
Text

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.

Buttondown's blog
Text

Bookshop.org embeds

Share book recommendations with rich embeds from Bookshop.org

Buttondown's blog
Text

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.

Buttondown's blog
Text

Passwordless login

Skip the password entirely and sign in with just your passkey.

Buttondown's blog
Text

Rename metadata keys in bulk

"First name" and "first_name", together at last

Buttondown's blog
Text

A spring cleaning for our legal docs

Updated DPA, privacy policy, sub-processor list, and cookie policy.

Buttondown's blog
Text

Ask a nerd: what happens when you click the spam button?

Honestly, it’s more conceptually complicated than technically complex.

Buttondown's blog
Text

Passkey support for two-factor authentication

Use your fingerprint, face, or security key as a second factor when signing in.

Buttondown's blog
Text

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.

Buttondown's blog
Text

How to send email to space

The first email was sent from space three days after the first webpage was published.

Buttondown's blog
Text

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.

Buttondown's blog
Text

How we enabled Content Security Policy for everyone

Invisibly making your newsletter safer

Buttondown's blog
Text

Recovery codes for two-factor authentication

If you lose your authenticator device, recovery codes let you get back into your account.

Buttondown's blog
Text

Filter sent emails by engagement rate

Quickly find your best (and worst) performing emails by filtering on open rate, click rate, and delivery rate.

Buttondown's blog
Text

How we migrated to TypeIDs without breaking clients

Making every ID in our API self-describing, one endpoint at a time

Buttondown's blog
Text

How we check every link in your email

The machinery behind Buttondown's link checker is more involved than you might expect.

Buttondown's blog
Text

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.

Buttondown's blog
Text

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.

Buttondown's blog
Text

Sort and filter by open and click rates

Find your most (and least) engaged subscribers by sorting and filtering by open and click rates.

Buttondown's blog
Text

Custom click tracking domains

Your click tracking links now use your own sending domain instead of a shared proxy.

Buttondown's blog
Text

More newsletter settings in the API

The /v1/newsletters endpoint now exposes locale, templates, socials, transactional emails, and more.

Buttondown's blog
Text

Revamped replies

Reply tracking is now automatic for sending domains, and always on for everyone.

Buttondown's blog
Text

Custom email templates for everyone

Full HTML control over your email design is now available to all Professional plan users.

Buttondown's blog
Text

Simplified cancellation

No more choosing between "pause" and "cancel" — there's just one option now.

Buttondown's blog
Text

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.