One in seven last names was not a last name
Salutation logic breaks on company names, titles and empty fields, and it stays invisible until the letters are already out. What to capture at the form, what to flag in the data you already have, and the two minute check before any bulk send.
One in seven last names was not a last name
We checked a wholesaler's CRM last spring: 4,100 contacts, one column called last name. In 611 records that column held something else. Company names, mostly, plus initials, job titles, one email address, and about forty rows where a legal form had ended up in the middle of a person's name.
Nobody had noticed, because none of those records look broken in the CRM. They become visible at the moment an automation builds a salutation out of them.
For this client that moment was a price update mailed to 340 customers. Nineteen letters opened with "Dear Mr Berger Medical Supplies Ltd", seven opened with a comma and nothing in front of it. Sales found out when a customer posted one back with corrections in red pen.
Where the bad data comes from
Almost always from a form with a single field on it. The website contact form asked for "Contact person", one text input, and people filled it the way people do:
- Miller
- Anna Miller
- Dr A. Miller
- Miller Family Practice
- Miller (purchasing)
- Berger Medical Supplies Ltd
- purchasing@berger-med.co.uk
The import split that field at the first space. Everything before it went into first name, everything after into last name. The rule works for the second line and fails for the other six, and the resulting record still looks complete, which is why it survives for two years.
The cases that break salutation logic
Compound surnames lose their particle. "van der Berg" comes out as a first name of "van", and anything with a space in the surname breaks the same way. Titles end up in the first name field and then appear in the wrong slot in the greeting, which readers in healthcare notice immediately, because a title there is part of how you address someone.
Purchasing teams type the company name into the person field, since they want the paperwork addressed to the company. The mail merge then turns a supplier into a Mr.
And the most common case is the empty one. No first name, no salutation, and the template writes its comma regardless, so the letter opens on punctuation.
Guessing gender from a first name
Plenty of platforms ship this feature and plenty of teams switch it on, because it fills a gap in the data at no visible cost. It matches the first name against a list.
The list is right often enough to feel reliable and wrong often enough to matter. Andrea reads female in Germany and male in Italy. Kim, Toni, Robin and Sam are undecidable. So is a large share of names that are not Western European, which for anyone shipping internationally means a wrong guess on roughly every twentieth contact.
A wrong guess costs more than a missing salutation. "Hello Anna Miller" reads as neutral. "Dear Mr Anna Miller" reads as a company that has no idea who it is writing to.
What we build instead
Capture the salutation at the point where a human enters the contact. One field, values Mr, Ms and none. No downstream step that reads a first name and decides.
Treat the neutral greeting as a first class option. "Hello Anna Miller" is a complete salutation, and once a team accepts that, the pressure to categorise every contact disappears. Several of our clients now use it for their whole list.
Detect companies by pattern. A short list of legal forms and sector words in the name field, Ltd, GmbH, LLC, Practice, Clinic, Pharmacy, routes the record into the company branch with "Dear Sir or Madam". The list stays under twenty entries and catches most of what turns up.
Ask for separate fields on the form and skip the parsing later. Salutation as a select, first and last name apart, title optional. One extra input at capture time costs less than cleaning 4,000 records two years on.
For records you already have: flag them, do not fix them. A pass over the database marks anything suspicious, a legal form in the surname, a first name that is a single letter and a dot, more than two words where one belongs, an empty salutation next to a filled name. Automatic correction of these cases produces new errors that read as plausible, and plausible errors never get reported.
A two minute check before any bulk send
Export the finished greeting lines into one column, sorted by character length. Read the top twenty rows and the bottom twenty.
Errors cluster at both ends. Short rows are the empty and truncated ones, long rows are the company names and the stacked titles. On a list of 340, that surfaces every outlier in the time it takes to make coffee.
Where the wholesaler ended up
Salutations are now built from the salutation field alone. 380 contacts had nothing in it and get the neutral greeting. The 611 records with a company in the surname field went onto a review list and were corrected by the account owners rather than by a script.
The work took a day and a half, most of it spent reading through the existing data rather than building anything. The automation itself grew by two branches and a validation list. That is cheap next to a customer mailing a letter back in red pen.