Generate subject lines

Runs on Cloudflare Workers AI. Free: 10 generations an hour, 25 a day per visitor, and a shared daily allowance for everyone. Nothing you enter is stored.

How it works

where subject lines get cut
GMAIL M~40 charactersCUTS FIRST
iOS MAIL~45 charactersCUTS
OUTLOOK~60 charactersROOM
GMAIL D~70 characters, preview text afterROOM
Every line the generator writes is under 45 characters for the first two rows.
01

Say what the email is about

The offer or the hook, and who reads it. The angle of the body matters most — a subject line that promises something the email does not deliver is the fastest way to lose the reply.

02

Three styles

Direct lines say what the email is. Question lines ask about the pain. Personal lines use {{firstName}} or {{company}} where it reads naturally, never as decoration.

03

Constraints applied

Under 45 characters, no Re: or Fwd:, no emojis, no exclamation marks, no “urgent”, no “quick question” cliché unless it really is one.

04

Preview and test

Paste the shortlist into the inbox preview to see the cut on each client, then test two of them with the A/B calculator on a real send.

What a subject line has to do

Get opened without lying about what is inside. That second half is where most advice goes wrong. “Re: your account” gets opened and then reported; “URGENT: response needed” gets opened by people who feel manipulated the moment they read the first line. Open rate is a vanity number — the reply rate is what pays — and the subject lines that produce replies are boring by advertising standards: lower-case, specific, short, and honest about the email being a cold approach. The generator is told all of this, and it is told the character limit that matters, which is Gmail on a phone.

Using the three groups

Direct lines are the safe default and the right choice for a first email to an executive. Question lines outperform when the pain is real and specific to the persona — they fail when the question is generic. Personal lines with merge tags do well on small, well-researched lists and badly on scraped ones, because a wrong {{company}} in a subject line is worse than none. Pick two from different groups, never two from the same group, for a test.

How the generator is tuned

The model behind this page is an open-weight model running on Cloudflare's network, and the instructions it follows are mine — the same rules I apply when I edit a client's sequence: short sentences, no marketing words, open with the reader, one question at the end, keep merge tags intact. Those instructions are edited over time as I see what it gets wrong, so the output improves without the page changing. It is a starting draft, not a finished campaign: read it as you would a junior writer's work, cut what does not fit, and run the result through the readability checker and spam word checker before it goes into a sequence.

Limits and privacy

Each visitor gets ten generations an hour and twenty-five a day, and there is a shared daily allowance across the whole site that resets at 00:00 UTC — when it runs out the tool says so rather than failing silently. Inputs are sent to the model and discarded; nothing is stored, logged with your text, or used to train anything. The generated text is yours.

Frequently asked questions

Why under 45 characters?

Gmail on Android and iPhone shows roughly 40 characters before truncating, and iOS Mail about 45. A line that is cut mid-word reads as spam. Desktop clients show more, but the phone is where cold email is read.

Should I use the recipient's name in the subject?

Only with clean data and only when it reads naturally. A name in a subject line was a strong signal years ago and is now a mild spam signal on its own. The company name usually works better.

Can I ask for a specific style?

Use the “avoid” field to steer — for example “no questions” or “must mention warmup”. The prompt behind the page is adjusted over time as well.

Are the lines stored?

No. The request goes to the model once and nothing is kept.

What are the limits?

Ten generations an hour and twenty-five a day per visitor, plus a shared daily allowance across the site, resetting at 00:00 UTC.

Last reviewed

Related tools

What to run next

The checks that most often follow this one.

AI generators

More in this category

Read more

Guides that go deeper

Services

When the tools tell you something is wrong

The diagnostics here are free and always will be. When the fix is bigger than a DNS record, this is the work I do.

Get in touch

Start with a call

Bring a domain and the symptom. I will tell you what is actually wrong and whether you need me at all — plenty of people leave that call able to fix it themselves.

Thirty minutes, no pitch

We will run the checks together on your actual domains, and you will leave knowing what is broken, what it takes to fix, and what it should cost. If that is a job you can do in-house, I will say so.

Based inRangpur, Bangladesh — all time zones
RepliesWithin one business day
LicensingWorkspace below list price
Back to top