What Broadcast 2.0 Actually Changed
A major version number is mostly marketing. What makes 2.0 worth writing about a year on is that it was the release where Broadcast stopped being “software that sends email reliably” and started being a platform with opinions about who is doing the sending — you, an AI drafting for you, or an agent working on your behalf.
Two of those were bets. Both look more obvious now than they did in March 2026.
Bet one: AI writes the draft, never the send
Autopilot shipped in 2.0. Point it at sources you already produce — a GitHub repo, RSS feeds, web pages — and it generates a newsletter draft from them, in a voice you train with samples of your own past writing.

The important design decision was the one about where it stops. A run fetches, analyses, generates — and then waits for you. It produces drafts and hands them over. You pick one, edit it, and you schedule or send it.
That line was drawn deliberately and has not moved since. An AI that emails your subscribers without a human reading the words first is not a feature I want to own, and every subsequent Autopilot release has kept the review step. The generation is automated; the judgment is not.
The other decision that aged well: bring your own key. Autopilot runs on OpenRouter with your own API key, billed to you at cost, no markup and no AI tier on top of your license. The full story is in the Autopilot post.
Bet two: an agent is a real user
The second bet was stranger at the time. 2.0 added an agent-native surface — discovery endpoints, a CLI, setup links, and structured API access designed for something that isn’t a human clicking a dashboard.

The premise: if your assistant can read your codebase and run your deploys, it should be able to draft and schedule your newsletter too — and the blocker is never intelligence, it’s that email platforms expose a UI and an API that assumes a person already knows the way around. So Broadcast added a way for an agent to discover what it can do, onboard with a time-limited setup link, and work through the same API a human integration uses.
That’s covered properly in Email Marketing Software Your AI Agent Can Actually Drive. What matters for this retrospective is that it landed in 2.0, well before it was a category anyone was naming.
The unglamorous half
Big releases get remembered for the headline features and used for the small ones.
The editor got usable. Font size control, image insertion, and a template picker in the WYSIWYG composer. Unremarkable individually; collectively the difference between composing in Broadcast and composing elsewhere and pasting.
Unsubscribe links became per-broadcast. A toggle on each broadcast and sequence. Not everything you send is marketing — a transactional-shaped announcement to your own customers doesn’t always want a marketing unsubscribe footer nailed to the bottom of it.
Liquid rendering in email headers. Personalisation stopped being a body-only feature, so a subject line can carry a first name or a merge field like everything else.
One-off emails from the subscriber page. Someone replies with a question; you answer them from their record, and the send is logged where you’d look for it later, instead of vanishing into your personal mail client where the rest of the platform can’t see it.
Opt-in form customisation and better widget embedding. Input field styling, plus a pile of fixes to widget caching, CORS and iframe sizing — all the unglamorous work of making an embed behave on someone else’s website.
A custom domain step in the channel creation wizard, so getting your sending domain right happens at the point where you’re already thinking about it.
API rate limiting via rack-attack, which is one of those features whose entire value is that you never notice it. On a self-hosted install, that limit was later raised and made configurable, because rate limits that make sense for a shared platform don’t make sense on your own hardware.
Underneath
Ruby moved to 4.0.1. Error pages (404, 422, 500) became dynamic rather than static files, so a self-hosted install shows something coherent when something goes wrong instead of an unstyled default. Safari’s unsubscribe modal positioning, sidebar scroll behaviour, tooltip visibility, pagination on empty link-tracking results — a long tail of fixes that mattered a lot to whoever hit each one.
Looking back from here
The through-line from 2.0 to everything since is the same principle stated three ways: the software should do the tedious part and leave the judgment to you. Autopilot drafts and stops. Agents get access to everything you have access to, and nothing more. The editor does the formatting so you can think about the words.
And all of it arrived in a version you own outright. Everything shipped in the 2.x line since — Ask AI, DNS health monitoring, off-server backups, CSV export — has been free to 2.0 license holders. That was the other bet, and it’s the one I’d defend hardest.
Read why we sell a one-time license in a subscription world, or how Broadcast is built to run on your own server.