The automation is rarely the problem
A sequence goes live and fires for a fraction of the contacts it was built for. The workflow gets opened, every branch gets read twice, and nothing in it is wrong, so the next theory is that the tool is unreliable, and the theory after that is that automation doesn't suit this business. We have sat in that meeting often enough to know where to look first, and it isn't the workflow. It is the filter that decides who enters it, and more exactly the CRM field that filter reads.
A segment is a filter over fields. Contacts in the construction trade who enquired in the last ninety days is a plain enough sentence, and in the CRM it becomes two conditions on two fields, industry and enquiry date. If either field is blank on a record, the record fails the condition, and it fails quietly. The filter doesn't report who it left out. It reports who it found, and the list looks reasonable because every record on it does match.
The automation that looks broken is doing exactly what it was told, to the part of the database it can see. The rest of the database is invisible to it, and invisible in a way that no error log records, because an empty field is not an error. It is the normal state of a good share of the fields in the CRMs we open, and it has usually been that way since before anyone in the current team arrived.
How a field ends up empty
Fields go empty for ordinary reasons. The form on the website never asked the question, so every contact who came in that way has nothing in it. The field was added after most of the database was already in, and nobody went back to fill the old records. An import from a spreadsheet mapped the column to a different field with a similar name, and both now exist, each partly filled. Sales fills it on a call for the deals they care about and leaves it on the rest.
None of this is visible from the screens people use every day. A contact record with an empty industry field looks like a contact record. A list view filtered to construction shows the contacts that have the value and says nothing about the ones that have none, so the person running the list sees a shorter list than they expected and concludes the market is small. The blanks only show when somebody asks the CRM for them directly, and that is not a question most teams have had a reason to ask.
The fields that matter most to an automation tend to be the ones filled least, because nobody needed them until the automation arrived. A team that runs its marketing by hand doesn't need lifecycle stage set on every record, because the person sending the email already knows who the customers are. The moment a workflow needs the same knowledge, it has to come from a field, and the field was never where the team kept it.
Which fields gate the segments worth the most
A CRM can hold a few hundred fields and most of them don't matter. We don't audit the database column by column, because a fill-rate report on every field is a document that gets admired in a meeting and never opened again. We start from the other end, with the list of automations the client runs or wants to run, ranked by what each one is worth, so the sequence that books meetings from old enquiries sits above the one that sends the newsletter.
For each automation on that list, we write out the segment it reads in plain words, and next to it the fields the filter actually touches in the CRM. The two versions rarely match on the first pass. A segment described as past customers turns out to be a filter on a deal stage that a good share of the closed deals were never moved to, and one described as active enquiries reads a date field that only the web form populates and the phone never does. Putting the plain words beside the field names is where most of the surprises come out.
Then we count. For every field on that list, we run a report inside the client's CRM of the records where the field is blank, and we run it with the client watching. The count goes on one page beside the field's name, the segment it gates, the automation that depends on it and the date the count was taken. What comes out is usually a short list. Segments in a business are built from the same few facts about a contact, where they came from, what they wanted, when they last did anything and whether they are a customer yet, so a handful of fields gates most of the segments that matter.
The count is what changes the conversation. A field that is blank on a large part of the database is a number the client produced in their own system, and it explains the short list the sequence has been sending to without anyone having to defend the workflow. It also sets the order of the work, because the field with the most blanks on the segment worth the most is where the first afternoon goes.
Filling them in the right order
Whatever a rule can fill goes first. Source can be set from the form a record arrived through, or from the inbox or phone system that created it. Last activity can be read off the email and call logs the CRM already keeps. Lifecycle stage can be derived from whether a deal exists and what stage it reached, and owner can follow the territory or whoever logged the first call. A rule like that runs over the whole database in an afternoon and then keeps running on every new record, so it fills the past and the future in the same step.
Industry is a different kind of field, and nothing already in the CRM can produce it. If the segment depends on it and the form never asked, the form asks from now on, as a short list to pick from and never as a free text box, because free text produces a dozen spellings of the same trade and the filter matches one of them. That fills the field going forward and does nothing for the records already in. For those, an enrichment tool fills a share of the blanks from the company's domain, and whatever it can't reach stays blank until something else fills it.
The expensive part is anything that has to come from a person. We keep the ask to one field, and we put it only to the people who already know the answer, for the records that feed the segment worth the most. A salesperson asked to set the deal stage on their own open deals will do it in an hour. The same salesperson asked to complete twelve fields on every contact they have ever touched will not do it, and the automation waits on them indefinitely.
When a field cannot be filled at any reasonable cost, the segment gets rewritten around one that is full, and the client is told, because a segment that quietly changed its definition is a worse problem than the blank field was. A segment of contacts by industry becomes a segment of contacts by the service they enquired about, since the enquiry form has always asked that and every record has it. The new segment is a little less precise than the one the client wanted. It reaches the whole database, and the old one never did.


