Export not just an email's aggregate numbers, but every individual event and timestamp behind them.
Buttondown's blog
Buttondown's blog — guides, tutorials, and more
- Public lists
- davewiner/blogroll
- Fetched
Email should be the universal interface for software
Email is the second-oldest software interface, after the Terminal.
Dashboard and Archives downtime
Our public postmortem for the incident on September 1st, 2026.
Ask a Nerd: Can you use web fonts in email?
Yes. But you really shouldn’t.
Newsletters should be the director’s commentary of every creator
Convert the cruft of your creations into the content your biggest fans treasure most.
One source of truth for analytics
We consolidated two overlapping analytics pipelines into a single, well-documented events log.
Ask a Nerd: Can emails include dark and light mode themes?
You can ensure that your emails show up dark. You can’t completely control how.
Private email is fine, actually
Hide your email, hide your lists
Introducing forms
Standalone pages dedicated to growing your newsletter.
What I love about Django
The best parts of Django are the ones you stop noticing — a tour of the abstractions that have given Buttondown the most leverage over the years.
Introducing segments
Build a set of filters once, name it, and reuse it as a one-click audience on every future email.
Introducing segments
Build a set of filters once, name it, and reuse it as a one-click audience on every future email.
Send your RSS digest on any day of the month
Monthly RSS-to-email sends can now land on any day of the month, not just the first, last, or a given weekday.
Filtered blocks
Show a section of your email to just one type of audience (email, web, subscribers, or paid)
Public postmortem: email sending & other tasks delayed
Our public postmortem for the incident on July 30st, 2026.
We built our own dig
Why Buttondown spends so much time reading DNS records — and why we ended up building our own free dig tool to do it.
How we localize Buttondown
Our homegrown localization is one open-sourced JSON file, a template tag, and a wrapper component — nothing fancy, and kept honest by a bunch of weird tests.
Enhanced link cards on Bluesky
Your newsletter's archive links can now share as rich, branded cards on Bluesky.
Turning our OpenAPI schema into a bug finder
How Buttondown uses Schemathesis fuzz tests to turn its OpenAPI contract into a practical API robustness check.
Public postmortem: custom tracking links broken
Our public postmortem for the incident on July 24th, 2026.
Mermaid diagram rendering
Author flowcharts and diagrams in Mermaid, and Buttondown renders them in the archives and your emails.
Public postmortem: api.buttondown.email inaccessible
Our public postmortem for the incident on July 23rd, 2026.
Email ads in the 80s were weird and wonderful lies
Few could define electronic mail, or how to set it up, but everyone agreed it was awesome.
Public postmortem: intermittent issues logging into the app
Our public postmortem for the incident on July 17th, 2026.
How to back up your emails and newsletters locally
Save them daily or quarterly. Just don’t let someone else control what happens to them.
How we increased conversion rate by 42% by making one small change to our pricing page
It's a starting point with a few early guideposts.
Ask a nerd: Can I use SVG images in emails?
Scalable Vector Graphics or Suspiciously Versatile Glyphs?
Better drilldown into opens and clicks
Email analytics drilldowns now nest right in the page — no more slow modals.
Reply to comments via email
Answer a comment notification straight from your inbox, and it lands as a threaded comment.
How I send and grow my newsletter without open and click tracking
Buttondown has plenty of analytics features. But you can grow your audience without them.