Buttondown
Archives
Search...
Log in
Subscribe
Introducing segments
August 8, 2026
We've published a new blog post: > Build a set of filters once, name it, and reuse it as a one-click audience on every future email. Read it here!
New API changes for Buttondown
August 7, 2026
Clearer collision behavior when recreating subscribers with no longer returns a while leaving an subscriber unchanged. Overwrite cannot change terminal types...
Private email is fine, actually
August 7, 2026
We've published a new blog post: > Hide your email, hide your lists Read it here!
How to back up your emails and newsletters locally
August 6, 2026
We've published a new blog post: > Save them daily or quarterly. Just don’t let someone else control what happens to them. Read it here!
Updates from July
August 5, 2026
Granular visibility settings for your archives You can now determine, one-by-one, which emails show up in your public, subscriber-only, and paid-only...
Public postmortem: email sending & other tasks delayed
August 4, 2026
We've published a new blog post: > Our public postmortem for the incident on July 30st, 2026. Read it here!
What I love about Django
August 4, 2026
We've published a new blog post: > The best parts of Django are the ones you stop noticing — a tour of the abstractions that have given Buttondown the most...
Send your RSS digest on any day of the month
August 2, 2026
We've published a new blog post: > Monthly RSS-to-email sends can now land on any day of the month, not just the first, last, or a given weekday. Read it here!
Public postmortem: custom tracking links broken
July 31, 2026
We've published a new blog post: > Our public postmortem for the incident on July 24th, 2026. Read it here!
Filtered blocks
July 31, 2026
We've published a new blog post: > Show a section of your email to just one type of audience (email, web, subscribers, or paid) Read it here!
We built our own dig
July 30, 2026
We've published a new blog post: > Why Buttondown spends so much time reading DNS records — and why we ended up building our own free dig tool to do it. Read...
How we localize Buttondown
July 29, 2026
We've published a new blog post: > Our homegrown localization is one open-sourced JSON file, a template tag, and a wrapper component — nothing fancy, and...
Enhanced link cards on Bluesky
July 28, 2026
We've published a new blog post: > Your newsletter's archive links can now share as rich, branded cards on Bluesky. Read it here!
Turning our OpenAPI schema into a bug finder
July 27, 2026
We've published a new blog post: > How Buttondown uses Schemathesis fuzz tests to turn its OpenAPI contract into a practical API robustness check. Read it here!
Mermaid diagram rendering
July 25, 2026
We've published a new blog post: > Author flowcharts and diagrams in Mermaid, and Buttondown renders them in the archives and your emails. Read it here!
Public postmortem: api.buttondown.email inaccessible
July 24, 2026
We've published a new blog post: > Our public postmortem for the incident on July 23rd, 2026. Read it here!
New API changes for Buttondown
July 24, 2026
We've exposed a newsletter's custom domain verification on the public API, so you can check DNS setup programmatically instead of only in the web app. Two...
Email ads in the 80s were weird and wonderful lies
July 24, 2026
We've published a new blog post: > Few could define electronic mail, or how to set it up, but everyone agreed it was awesome. Read it here!
Public postmortem: intermittent issues logging into the app
July 17, 2026
We've published a new blog post: > Our public postmortem for the incident on July 17th, 2026. Read it here!
How we increased conversion rate by 42% by making one small change to our pricing page
July 16, 2026
We've published a new blog post: > It's a starting point with a few early guideposts. Read it here!
Newer archives
Older archives