Everything Lettr shipped in July 2026: 2 new features, 12 improvements and 18 bugfixes.
Published
Pick a badge to see only the entries carrying it.
New features
PlatformDeliverability
Daily DNS Health Checks For Verified Domains
Verified domains are now checked once a day, with an alert when one stops resolving or stops pointing at Lettr.
A domain that verified months ago and broke later used to go unnoticed until sending failed. The check only reads DNS and never changes a domain's status, so it can't turn off a domain that is still sending.
Broken records show on the dashboard and as a badge on the domain, email and campaign lists, with the failing records and how long they have been failing. A newly broken record always sends an alert, a record already reported stays quiet for a while, and a team with several broken domains gets one email for all of them instead of one per domain.
The alert can be turned off in Settings → Alerts, which also sets the minimum time between repeat alerts for a failing record, from 1 to 720 hours.
Every email, campaign, brand kit, sending domain, API key and contact property that Adamko creates or changes now appears in one Activity view, where anything he created can be undone.
Each entry shows the message that led to it, and a bulk action is one row with a count instead of one row per item. Entries stay in the log after the chat history is cleared or the item itself is deleted.
Undo is offered only while it is safe: a campaign must still be an untouched draft, an email must be unedited, a sending domain must not be verified yet, and an API key must still exist. A changed brand kit goes back to how it was before the change. When something can't be undone, the reason is shown, and the entry stays in the log either way.
Adamko Generates Branded Transactional Emails From Premade Bases
Adamko now picks the transactional emails that suit your product and builds each one from a Lettr premade in your brand's colors, fonts and logo.
The premades are already tested in email clients, and one design style is chosen for each team and kept, so its transactional emails and campaign drafts look alike. He can also build a single email from a description, such as an announcement or a newsletter, starting from the closest premade.
The text is now written in your website's language, subject lines included, where it used to be English. If a translation fails, the English version is kept rather than a half-translated one.
Emails are built in the background, and the chat shows a progress bar with a rough time estimate. The chosen emails appear in the Emails list right away with a Finalizing badge and can't be opened until they are finished.
Brand Kit Extraction Reworked For Colors, Fonts And Inline SVG Logos
Reading a brand kit from a website now finds the site's own colors, fonts and logo more reliably, instead of framework defaults, hover colors or fonts the page never uses.
Colors used only for hover, focus or selection now count for less, colors written by name (such as gold) are recognised, a CSS framework's built-in colors no longer outvote the brand, and a single decorative gradient no longer beats a color used across the site.
Fonts are ranked by what the site actually loads, not by every font a site builder lists in its stylesheet. Logos drawn straight into the page as SVG, with no image file behind them, are now found through the link back to the homepage and saved as a separate file.
Adamko Read-Only Account Tools And Advisory Diagnostics
Adamko can now look up your plan and quota, emails, API keys, webhooks, team members, delivery events, API logs, contacts, imports and suppression list, and give advice based on what he finds.
He used to answer many of these questions with “I cannot see that”. API keys are shown as details only, and the key itself is never returned. He can also check whether one particular recipient is on the suppression list.
Asked why an address didn't get an email, he gives one cause (suppressed, complained, hard bounced, blocked by the provider, delayed, rejected at send, still on its way, or delivered) with the evidence and what to do. Asked about failing API requests or webhooks, he lists the problems by severity, such as rejected keys, rate limits or a disabled webhook, with the steps to fix each one.
He checks an email for broken merge tags, a missing unsubscribe link, images without alt text, fixed widths that break on phones, a size Gmail will clip and subject lines likely to look like spam. He also compares recent campaigns, suggests a list or segment for a goal, and plans lifecycle emails or a campaign calendar within the sending quota you have left. Rates with nothing to calculate from show as unknown instead of 0%, and he never claims to have scheduled anything, since none of his tools can.
A CSV file dropped on the Adamko chat now goes straight to the contact import, and the file itself is never sent to the AI.
When columns are left unmapped, “Ask Adamko” on the mapping step lists what is wrong with the file (no email column, invalid addresses, duplicates in the file, contacts you already have, no consent information or unknown statuses), quoting the values it found. “Map them for me” first shows which custom fields will be created and with what type, which existing fields are reused and how the status column will be read. Each field he creates can be undone from the activity log.
After the import, he can suggest segments based on the mapped columns. The mapping step now also offers “Subscription status” as a field, where it used to offer only the email address.
Secret And Personal Data Redaction For Every AI Request
Every AI feature in Lettr now removes secrets and recipient details from a request before it goes to the AI, where this used to depend on the feature.
API keys, bearer tokens, private keys and long secret-looking strings are masked for good, in your messages, the chat history and tool results alike. Recipient details inside email HTML are swapped for placeholders that are put back in the response, so an email edited with AI comes back complete.
Details in ordinary conversation are left as they are, since a question about why mail to a named address bounced needs that address; this is covered in the data processing agreement. Two older AI chat features in the email editor now follow the same access rules, rate limit and monthly spending cap as Adamko.
Proactive Adamko Notices For Five Account Problems
Adamko now shows a notice on the relevant page, without being asked, for a failing domain, a sudden rise in bounces, a stalled setup, a missing API key or a draft he started that was left unfinished.
Each page shows at most one notice. A dismissed notice stays hidden for 3 to 14 days depending on its type, a domain notice dismissed by one teammate is hidden for the whole team, and dismissing three notices in a week hides them all for a while.
Complete DNS Walkthroughs For Sending, Tracking, Inbound And Storage Domains
Adamko's add-domain walkthrough now covers every DNS record and the verification step, where it used to stop after the first record.
It goes through DKIM, CNAME, SPF, DMARC and verification in order, and skips any record a domain type doesn't have instead of stalling on it. Tracking, inbound and storage domains got the same walkthroughs; storage domains had none. A record step now finishes when you copy its value, not only when you click the text, and the API key walkthrough has a new step for choosing a sandbox key.
Section Links, Copy Button And Tables In Adamko Answers
When Adamko names a section of the app in an answer, he now offers a link to it instead of only putting the name in bold.
These links, and the “Guide me” and “Docs” buttons, stay clickable in later messages and after a page reload; they used to disappear with the next message. Every answer has a Copy button, tables show as tables instead of rows of | characters, and the message box grows as you type.
PlatformAI
Adamko Onboarding Cards Persist Across Page Reloads
The cards in Adamko's replies (the brand kit preview, the email picker, the API key and the domain) now stay after a page reload, where they used to be replaced by plain text.
They come back in their finished state: a restored API key card is masked and has no copy button, and the key itself is still never saved. The email picker now says how many of the available emails it will create, for example “Create 4 of 7 emails”, and shows that more options are further down the list.
PlatformAIDeliverability
Per-Source Data Windows For Adamko Sending Health Answers
Adamko's answers about sending health now use the time range each data source actually keeps, instead of claiming 90 days for everything.
Questions reaching past the roughly 10 days of kept message events used to fail with “something went wrong on my side”. Trends still cover the full period, while recent examples cover only what is kept and say so. When the examples can't be loaded, the answer still comes back without them.
TransactionalCampaignsUI/UX
Synced Section Edits Create New Email Versions
Editing a synced header or footer now saves a new version of every email that uses it, instead of overwriting those emails in place.
The editor then offers to publish them all at once, or to keep them as drafts to check first.
CampaignsUI/UX
New Marketing Emails Open Directly In The Editor
Creating a marketing email now opens it straight in the editor, without the detail page in between.
After saving, the newest version is shown instead of an older one, and the folder picker on the emails page offers only folders of the kind being browsed.
Bugfixes
PlatformSecurity
Fixed one-time codes being rejected as invalid or expired for everyone, which blocked password and email changes, two-factor setup and team deletion.
PlatformSecurity
Requesting a new one-time code right after verifying one now sends a working code, instead of reporting success without creating one.
PlatformSecurity
One-time code emails no longer arrive after the code has expired when a lot of other mail is waiting to be sent.
TransactionalCampaignsUI/UX
Deleting a folder no longer deletes the emails inside it; they now move to another folder of the same kind.
CampaignsUI/UX
A marketing email moved into a folder no longer also shows at the top level, where it looked like a duplicate.
CampaignsUI/UX
Fixed duplicating a marketing email always creating a transactional copy, which left the copy missing from the campaigns list.
TransactionalDeliverability
Open rates on the dashboard and in tag stats no longer go above 100%.
PlatformUI/UX
Fixed a double-click on Sign up creating two accounts or showing a server error.
PlatformAIUI/UX
The screen no longer flashes and the Adamko panel no longer jumps each time he takes you to another page.
TransactionalCampaignsUI/UX
The editor's file manager now lists every file in a folder that holds more than 1,000 files, not only the first 1,000.
TransactionalCampaignsUI/UX
Fixed files in the editor's file manager coming back after a delete that was reported as successful.
TransactionalCampaignsUI/UX
Files uploaded from inside a subfolder of the editor's file manager now go into that subfolder, not a new folder at the top level.
PlatformAI
Pasting a link into the Adamko chat no longer returns “please try again in a moment”; he now says he can't open web pages.
PlatformAI
Fixed Adamko mentioning the names of his internal tools, such as get_brand_kit, in his replies.
PlatformAI
Walkthrough replies from Adamko no longer end with the same closing sentence twice.
PlatformAIUI/UX
In replies not written in English, the closing “Guide me” button no longer merges into the paragraph above it.
CampaignsUI/UX
Fixed the campaigns list not scrolling, which left campaigns further down the list out of reach.
CampaignsUI/UX
The email preview no longer shrinks to nothing when the window is too narrow to show it side by side.