惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
Cisco Talos Blog
Cisco Talos Blog
Y
Y Combinator Blog
罗磊的独立博客
Stack Overflow Blog
Stack Overflow Blog
MongoDB | Blog
MongoDB | Blog
GbyAI
GbyAI
The GitHub Blog
The GitHub Blog
S
SegmentFault 最新的问题
J
Java Code Geeks
C
CXSECURITY Database RSS Feed - CXSecurity.com
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
博客园 - 聂微东
B
Blog RSS Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
P
Privacy & Cybersecurity Law Blog
L
LangChain Blog
L
LINUX DO - 热门话题
Hugging Face - Blog
Hugging Face - Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
P
Privacy International News Feed
F
Full Disclosure
S
Schneier on Security
T
Tenable Blog
量子位
NISL@THU
NISL@THU
Latest news
Latest news
V
Visual Studio Blog
C
Check Point Blog
aimingoo的专栏
aimingoo的专栏
博客园_首页
K
Kaspersky official blog
L
Lohrmann on Cybersecurity
美团技术团队
P
Proofpoint News Feed
P
Palo Alto Networks Blog
Spread Privacy
Spread Privacy
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Vercel News
Vercel News
人人都是产品经理
人人都是产品经理
The Hacker News
The Hacker News
AWS News Blog
AWS News Blog
S
Securelist
The Register - Security
The Register - Security
G
GRAHAM CLULEY
Project Zero
Project Zero
T
The Blog of Author Tim Ferriss
Recent Announcements
Recent Announcements
Engineering at Meta
Engineering at Meta
C
Cisco Blogs

Buttondown's blog

Email could have been X.400 times better The physicists who convinced Fermilab to send Brazil's emails Better in-app previews Analytics 3.0 Subscriber ID variables Comments! Send latest premium action Automation filtering Free API subscribers Surveys in automations Reply to replies Labels for RSS feeds How Jeremy Singer-Vine curates curious datasets for readers 2023 (and what's next) Email vs web content Sort by engagement Better gift subscriptions How Andy Dehnart built a career reviewing television New email template Email-based automations Opt-in reply tracking Automatic alt text More social network integrations Sort by metadata Overlarge image warnings Automation tag actions Pause emails mid-flight Search tags and automations Gift via automations Subscriber-driving emails Programmatic webhooks Email page views Tag statistics Discord webhook formatting Automatic subscriber cleanup RSS subscriber count Weekly subscriber reports More list columns Customizable list views How Max Voltar turned a side gig into a trusted keyboard resource How Nick Disabato runs two newsletters from one design consultancy Made-for-you share images Automation improvements End-of-email surveys Filter by date Survey-triggered automations More automation functionality New webhooks How France Insider built a news service with paid subscribers Email as primary key How John Willshire unites two businesses in one newsletter Confirmation reminders Email churned subscribers Email-to-draft Subscriber metadata columns ChatGPT integration Faster web archives Referral program Better search results TikTok embeds Subscriber timeline Spotify embeds Improved RSS-to-email Subscribe page OG image New analytics page Google Tag Manager Even more subscriber types Integrating Duda with Buttondown Linktree integration guide Advanced and enterprise plans Framer integration guide API requests page Team collaboration In-email surveys Better CSS settings Better RSS automation fetching! Editor toolbar improvements Smart filters Faster emails page RSS automations Faster email analytics Zapier error codes Image accessibility checks Tags vs newsletters OG image picker Image editor improvements API bulk actions Improved OpenAPI spec Mastodon support Better subscriber filtering Better subscriber validation Hotkey support! Programmatic access to analytics Stronger bulk actions Faster archive page Custom canonical URLs Email slug and metadata Improved writing interface Generating a Typescript router in Django Filter emails by source
2025
Justin Duke · 2025-12-25 · via Buttondown's blog

What we shipped in 2025

It's become a tradition to look back on the previous year and reflect on what we shipped, what we didn't, and what's next. Let's start with all the stuff we built to make your lives easier, however slightly:

FeatureDescription
CAPTCHAAdvanced CAPTCHA to protect signup and forms from automated spam and abuse.
CLIA dedicated command-line interface with bidirectional sync for emails, automations, and images.
Configurable firewallComprehensive spam and abuse protection with tunable aggressiveness, CAPTCHA support, and smart detection.
Dark modeFull dark mode support for the app and public pages. (complete)
Gift subscriptionsSubscribers can purchase paid subscriptions as gifts directly from the subscribe page.
InboxIntegrated test inbox for previewing emails before real subscribers receive them.
LocalizationApp and subscriber-facing pages support multiple languages, with per-newsletter overrides.
Managed DNSProvide a single domain; Buttondown automatically configures both sending and hosting, including Google Postmaster and tracked replies.
PlaygroundDedicated sandbox for experimenting with automations and templates without affecting live data.
PortalSelf-service subscriber portal for managing email, referrals, preferences, and unsubscriptions.
Revamped archivesMultiple archive themes and point-and-click controls for custom design, no CSS needed.
Rewritten search experienceMuch faster and more complete search for authors and subscribers. (complete)
Test modeSafely test automations, campaigns, and subscription flows without contacting real subscribers.

We did this while scaling up our support and infrastructure, reducing technical debt, and keeping our bug count low (as of this essay, the count is at 12.) There are some thing we didn't get to by the end of the year — faster exports, custom fonts + design tokens, and a bookmarklet — but we'll get to them in 2026, for real this time.


By the numbers

By the numbers, 2025 was a great year for Buttondown. The three most important metrics we look at are consistent usage, outgoing emails, and revenue (how many people use us; how many people are we sending to; how much money are we making). Here's how things shook out:

Metric% Change
Active authors (sent in last 30 days)+45%
Unique subscribers emailed+72%
Revenue+61%

Notable in the above is the fact that authors actually grew faster than we did. This is terrific!

If you're a dork, here are some really inside baseball metrics on the operational side:

Metric20252024% Change
Codebase commits6,5144,487+45%
Support tickets answered5,2473,906+34%
Median first response time5 hours7 hours-29%
Support ticket word countOver 2.2M1.7M+29%

Numbers and features are fun for us, but they mean nothing on their own unless done in concordance with our core values. If you're reading this, you likely don't particularly care about our growth — nor may you particularly care about our new features, as the plurality of users (including, perhaps, you!) do not need any of them and merely want Buttondown to do the main thing really well: send emails quickly and reliably, manage subscribers without giving you a migraine. To that end:

Principle2025 Update
Data protection and privacyOur stance on data protection and privacy is not just as strong as ever; it’s stronger, thanks to our insourcing of third-party data services (details) and our evolved stance on AI (our approach).
Financial sustainabilityWe remain cash-flow profitable, meaning we don’t need to chase a big fundraising round or pivot to video advertising or social networking.
Open sourceWe've deepened our open source commitment by releasing additional parts of our core platform and extending our broader open source pledge.
Customer serviceOur customer support team has grown stronger and more responsive, aiming to provide even better experiences for authors and subscribers.
Stability and change managementFrankly, we had too many incidents and breaking changes in 2025. While some were necessary, we're prioritizing stability moving forward by instituting better processes around backwards compatibility and proactively engaging authors whenever major changes—like to CSS or API behaviors—are on the horizon.

2026 roadmap

Our plans for the coming year are, as ever, a little boring and entirely devoid of plot twists:

ProjectDescription
Paid subscriptions 2.0An embedded checkout experience that doesn't rely on Stripe, plus improved support for esoteric options like per-email/PWYW pricing.
Archives 2.0Our archives feel as good as our core app to use (and customize). We offer multiple themes to fit our various segments; non-technical authors can customize them without dropping down to CSS. Subscribers have a cohesive experience across all parts of their web experience (reading, subscribing, surveys, comments, paid subs.)
Unified importsA smoother one-step import experience for all data types, including subscribers, emails, and exogenous data.
Data 2.0Speeding up our three largest data-shaped operations: event-level aggregation for analytics, fuzzy search within a newsletter, and exporting large datasets.
Self-hosted SMTPEmail sending is our single biggest unit cost and has also been a supply chain risk given incidents and reputational damage from all of our downstream MTAs; by insourcing this, we can improve performance, reliability, and cost.
Automations 2.0The automations UI is rebuilt and integrated more deeply into the core app with an eye towards the most common use cases: sync, drip sequences, etc.
DNS 2.0Rather than a separate hosting and sending domain, we let users just provide a single domain to us, which we manage and spin up both hosting and sending for. In addition, we spin up auxiliary services like Google Postmaster Tools and tracked replies without them having to do anything.

Okay, we're done with tables now, I promise. It is time to get a little earnest.

The industry in which we build is a unique one: authors have extremely high levels of portability and agency. Every single one of you, if so you wish, could export all of their data and migrate it to one of myriad other options over the course of an afternoon. (In fact, we invest a lot in making that true because you deserve to own your data end to end.)

Every passing day in which you don't do that — in which you continue to invest in us — is a tacit acknowledgement that you find Buttondown valuable enough to keep paying for, and that is not something we take for granted.

Nor do we take for granted the fact that while our competitors have the resources to buy Super Bowl ads and spend millions of dollars luring individuals onto their platforms, we rely simply and merely on word of mouth, on the hope that you find us useful enough to tell a friend or colleague about.

And you do. A lot.

Our growth this year is owed entirely to you: not just because you find us useful, but because you like us enough to tell a friend or colleague about us. This grants us both the luxury and the responsibility of building exactly what you want us to build.

Our work is grounded in a single conviction: that our most important job is to provide continuity and reliability for you and your readers, not just for years but for decades to come.

Speaking personally: when I started Buttondown years ago, I had no idea it would grow in size or scope the way it has. I am flattered and honored that I get to work on it every single day alongside a group of people who care just as much about writing and reading as I do; I am equally flattered and honored that you collectively vote with your hearts and wallets to let us keep doing it.

On behalf of the team — thank you.

(And, as always, if you have anything you wish to tell me, I'm at justin@buttondown.email.)

signature