Buttondown logo

Buttondown

Subscribe
Archives
Better API debugging and clearer error messages
August 22, 2025
Hey there! We've shipped some quality-of-life improvements to make debugging API issues a breeze — or, if not a breeze, at least incrementally more pleasant....
A newsletter-shaped-blog, or a blog-shaped-newsletter
August 22, 2025
We've published a new blog post: > Both are words published online, but the method changes the medium Read it here!
The firewall is smarter and stronger
August 21, 2025
We've been thrilled with the response to the Firewall, and we've been working hard to make it smarter and stronger over the last few months. The game of cat...
A new home screen
August 20, 2025
Buttondown's interface has long suffered from a common design pitfall: "shipping your database." This term refers to the tendency of well-meaning but narrow-...
Cleaner email editor
August 16, 2025
We’ve streamlined the editor layout for a cleaner, distraction-free writing experience. The old bottom tray with History, Delete, Saved and Send is gone, and...
Build a DIY email-to-SMS gateway
August 16, 2025
We've published a new blog post: > Carriers are removing their email-to-SMS gateways, but you can build your own instead. Read it here!
Email signatures and the power of defaults
August 10, 2025
We've published a new blog post: > Usenet set the signature rules. Then Hotmail broke them. Read it here!
Updates from July
August 4, 2025
Filtering out all the noise Subscribers contain multitudes. They’re subscribed or unsubscribed, they joined from your website or a signup form or from a...
What the hell is a Webmention?
August 1, 2025
We've published a new blog post: > If you're mentioned on the internet and no one is around to hear it, does it make a sound? Read it here!
How to return from a newsletter hiatus in style
July 29, 2025
We've published a new blog post: > Minimize unsubscribes and get back into a groove with a little technical prowess and transparency. Read it here!
Cleaner subscriber management
July 28, 2025
Hey folks! We've made some behind-the-scenes improvements to how we handle problematic subscribers that should make your life a bit easier. A brief history...
A plaintext subject line is all email has ever needed
July 28, 2025
We've published a new blog post: > Many have tried to diminish or usurp it. All they did was make the humble header more resilient. Read it here!
New API changes for Buttondown
July 28, 2025
We've simplified the SubscriberType enum by removing the following deprecated types: spammy - Now consolidated into undeliverable with a specific...
The subtle art of email forensics
July 27, 2025
We've published a new blog post: > The subtle hints and hardcoded clues to trace the history of every email message Read it here!
PWYW suggestionss
July 20, 2025
Hey folks! We've got a small but mighty update for those of you using pay-what-you-want pricing. You can now set a suggested amount for your pay-what-you-...
Email's fingerprints are everywhere you look
July 17, 2025
We've published a new blog post: > Open any app on your phone and count the buttons, features, and formatting it inherited from the OG communications app....
That's right, even more filtering options
July 15, 2025
I know, I know. You're sick of all of these filtering options. It was not part of a plan to barrage the changelog with these, so much as a happy and...
Filter subscribers by source
July 14, 2025
Hot off the heels of last week's addition of domain-based filtering, you can now filter your subscribers by how they joined your newsletter, including such...
Creating newsletter webhooks for fun and profit
July 14, 2025
We've published a new blog post: > You don't need to have any experience with coding or HTML, or pay for automation platforms, to move data between apps....
New API changes for Buttondown
July 14, 2025
We've added a new source parameter to the /v1/subscribers endpoint that allows you to filter subscribers by their origin source. What's new You can now...
2025-07-04
July 5, 2025
Filter subscribers by domain
The physicists who convinced Fermilab to send Brazil's emails
July 3, 2025
We've published a new blog post: > Neither the first nor the fastest international connection, it was the one that lasted. Read it here!
Updates from June
July 2, 2025
Make all the mistakes you want in Test mode Everyone sends an errant email eventually. Even engineers of email software (it’s Justin, hi). Well now those...
2025-06-23
July 1, 2025
Dormancy
New API changes for Buttondown
June 26, 2025
We've added a product field to the StripeSubscription schema. This field is the name of the product which the subscriber is subscribed to. (You can override...
What you need to know about Orange's new email protections
June 26, 2025
We've published a new blog post: > Orange has updated its sending requirements. Here is what you need to know to avoid having your emails flagged as spam....
2025-06-26
June 26, 2025
Dedicated archive settings page
Gmail's shortcuts come from a 1976 keyboard layout
June 26, 2025
We've published a new blog post: > Keyboard-only email is just as relevant as it was when computers didn't even have mice. Read it here!
2025-06-21
June 22, 2025
Skip old RSS items when setting up feeds
2025-06-20
June 21, 2025
Referrals in the Portal
2025-06-15
June 16, 2025
Subscribers can change their email address
How email tracking works behind the scenes
June 13, 2025
We've published a new blog post: > A brief history of email tracking pixels, how they work, and how to turn them off. Read it here!
Announcing django-rq-cron
June 10, 2025
We've published a new blog post: > A Django app for running cron jobs with RQ Read it here!
2025-06-09
June 9, 2025
Featured emails
rssrssrssrss (that is not a typo)
June 9, 2025
We've published a new blog post: > Sometimes, the only correct response to a feature request is to build an entirely different thing. Read it here!
It's [always] a great time to build an email course
June 6, 2025
We've published a new blog post: > Turn your unique insights into timely lessons that subscribers invite into their inboxes. Read it here!
2025-06-05
June 5, 2025
Safer bulk actions
2025-06-03
June 4, 2025
Test mode
The legendary email client power users wouldn't let die
June 4, 2025
We've published a new blog post: > Anyone who sells anything on the internet could take a page out of Steve Dorner's Eudora playbook. Read it here!
Updates from May
June 3, 2025
Buttondown, but in your own language Cześć! Goedemorgen! Bom dia! Buttondown finally has localization! We have a lot of non-English-speaking users and, after...
The non-scientific, non-scammy way to grow your newsletter
June 2, 2025
We've published a new blog post: > There are no shortcuts to growth, but there are strategies to steadily grow Read it here!
2025-06-01
June 1, 2025
Playground
You should have a can-do attitude about CAN-SPAM
May 30, 2025
We've published a new blog post: > Newsletter platforms take care of most of the law's requirements for you (and the ones they don't require barely any...
New API changes for Buttondown
May 30, 2025
TL;DR requests.post( "https://api.buttondown.email/v1/attachments", files={ "file": open("newsletter-guide.pdf", "rb") }, data={ "name": "Newsletter Guide" }...
2025-05-28
May 28, 2025
CLI
2025-05-27
May 27, 2025
Tracking clicks in archives, too
2025-05-26
May 26, 2025
Customizable exports
A brief history of all the times email was supposed to die
May 26, 2025
We've published a new blog post: > Second only to the year of Linux on the desktop. Read it here!
2025-05-23
May 24, 2025
SimpleAnalytics integration
Best practices on pre-launch emails
May 24, 2025
We've published a new blog post: > The trickiest thing is keeping people's interest in the interim between announcing and launching your product. Read it here!
 
Older archives   
GitHub Bluesky Threads X Facebook LinkedIn
Powered by Buttondown, the easiest way to start and grow your newsletter.