Spot the defaultWhich reply was written with a voice profile?
Two replies to the same email, both written by AI. One had a voice profile and one had none. You have twelve seconds to say which.
Your writing voice is the set of habits that repeat across your email: sentence length and rhythm, how often you hedge, how you open and sign off, the stock phrases you use. Paste two or more emails you have sent and those habits are measured in code, then interpreted with quotes from your own lines. A free tool from Mailient.
What you paste
Real ones, not samples. Two is the minimum because one email shows a mood and two start to show a habit. You can add up to four, and each is read up to 3,000 characters.
Sentence length, rhythm, hedging, greetings and sign-offs are counted in your browser the moment you press the button. There is no network call, so this part cannot fail.
A few seconds later an AI model adds the habits behind those numbers, each with a line from your own email as evidence, and writes an email in your voice.
What you get
The numbers are counted in code first. Only then is a model handed them, and it is told not to contradict them.
| Part | Where it comes from | What it tells you |
|---|---|---|
| Sentence length and rhythm | Counted in code | Average, shortest and longest, and where your sentences land: 1 to 5 words, 6 to 10, 11 to 15 and so on. Rhythm is the most recognisable thing about how someone writes, and an average hides it. |
| Questions and exclamations | Counted in code | How often you ask rather than assert. |
| Hedging | Counted in code | Counts of 20 softeners such as “just”, “maybe”, “I think” and “sort of”. |
| Autopilot phrases | Counted in code | 17 stock phrases such as “circling back” and “per my last email”, listed when you used them. |
| Greeting and sign-off | Counted in code | Whether you greet by name and close with a sign-off: never, sometimes or always. |
| Formality and directness | Counted in code | Two scores out of 100, composed from the measured counts on the page. They describe your writing; they do not grade it. |
| Consistency across emails | Counted in code | Whether you write the same way to everyone, shown email by email. |
| Habits, tells and the sample email | Model judgement | Interpretation of the numbers, with a line from your own writing as evidence for each habit. A reading that comes back generic is rejected instead of shown. |
Reading it
Start with sentence length and rhythm. The average matters less than the spread: a mix of very short and long sentences reads as a person, while every sentence landing in the same band reads as a template.
Hedging and autopilot phrases are counts, not opinions. A high hedge count (“just”, “maybe”, “I think”) makes a request easier to ignore, and any stock phrase listed, such as “circling back”, is one your reader has seen a thousand times.
Formality and directness are descriptions out of 100, not grades. The written reading quotes a line from your own email for every habit it names, so a habit with no quote deserves suspicion. The sample email shows the profile in use and is not meant to be sent.
Background
Take two or more emails you have actually sent, and measure them rather than judging them: average sentence length, how often you hedge, whether you greet by name, how you sign off, and which words repeat. Those patterns are your voice. A single email shows a mood, not a habit, which is why one is never enough.
The tool above does exactly that. It counts first, in code, and only then interprets what the numbers mean and quotes the lines that prove it.
Ask a chatbot to describe your writing and it will tell you that you are clear, professional and friendly. That is true of almost everyone who writes competent email, which makes it useless. It is not a description of you, it is a description of the genre.
It will also give you numbers: average sentence length, reading level, formality score. A language model does not count words, it predicts what a plausible answer looks like, so the figure will be in a believable range and it will not be your figure.
So this works in the other order. Your text is measured in code first, and the model is handed those measurements and told not to contradict them. It is allowed to interpret and to quote you, and nothing else.
Limits
Every tool here is a first pass with edges. These are this one's.
Beyond the sample
Two emails describe two emails. A profile you can rely on needs more of your sent mail, and it only helps if it is used at the moment you write.
Mailient builds a writing-voice profile from a sample of your recent sent mail (up to 40 emails) and uses it when it drafts a reply you ask for on Gmail. It also shows what needs a decision today, and by default sends nothing until you approve it.
Your data
Read off the code that does it, not written from memory.
Read from app/api/voice/route.ts and lib/rate-limit.ts.
Questions
6 answers, grouped. Each one is written against what the tool actually does.
Ones you actually sent, written without help from an AI, to real people. Different recipients help, because the results show whether you write the same way to everyone. Remove anything you would not want to send to a third-party service.
One email tells you about one email. Two is the minimum for separating a habit from a one-off, which is the entire point of a voice profile. Three is better, and the analysis will use up to four if you add them.
It measures your text in code first: average sentence length, how often you ask questions, how much you hedge, whether you greet by name, how you close, and which words you lean on. Only then does a language model interpret those numbers and quote your own lines back to you. That order matters, because a language model cannot count, so anything it tells you about your sentence length without measurement is a guess.
In one specific way. A chat model will happily tell you your average sentence length and be wrong, because it is estimating rather than counting. Every number here is computed from your actual text before the model sees it, and the model is told not to contradict them. A reading that comes back as generic description is rejected before you see it.
No. The measurements happen in your browser. For the written reading, the emails go to our server, which measures them again so the model cannot be fed made-up numbers, and passes them to an AI model to write the interpretation. Nothing is written to a database. We keep a request counter tied to your IP address, limited to ten readings an hour, which holds no content.
Most people use it to notice something they did not know they did, usually the hedging or the autopilot phrases. If you want a voice profile applied rather than just observed, Mailient builds one from a sample of your recent sent mail (up to 40 emails) and uses it when it drafts a reply you ask for on your Gmail. By default it sends nothing until you approve it.
More free tools
Two replies to the same email, both written by AI. One had a voice profile and one had none. You have twelve seconds to say which.
Paste the subject lines in your inbox. Get them sorted into what needs you, what can wait and what a machine sent, with the reason for each.
Paste a meeting transcript. Get every promise made in the room, yours and theirs, with the ones most likely to be forgotten flagged first.
This tool runs on text you paste. Mailient does the same kind of reading on your Gmail: it shows what needs a decision today, drafts in your voice when you ask, and by default sends nothing until you approve it.