Staggered panes of frosted glass edged in blue light.

Most automations fail at the exception, not the rule

The path an automation was built around almost always works on the day it goes live. What breaks it later is the order cancelled an hour after the confirmation went out, or the contact who replies to the second message and then the first, and we list those cases before launch because finding them live costs more than the build did.

Muhammad Hussain, Partner and CEO7 min read

The rule was never the hard part

Every automation gets designed around one story. An enquiry arrives, a record is created, the acknowledgement goes out and the sequence starts counting days. That story is the one the team tests on the morning it goes live, and it works, because it is the story the build was written from. Someone watches the first message leave and the job is called done.

The calls we get afterwards are almost never about that story. They are about the form that submitted twice because the page hung and the sender pressed the button again, or the quote accepted on Thursday and cancelled on Friday morning while the chase sequence was still running against it. Each of those was already happening when the process ran by hand. A person saw the duplicate and deleted it, saw the cancellation and stopped chasing, and neither action was ever written down as a step, because to the person doing it, it wasn't a step.

None of that reached the build. Software does what the ordinary case told it to, at speed, to every record that matches, and a duplicate record matches perfectly. Nothing in the written logic is wrong. The gap is in the decisions a person made without calling them decisions.

Where the exceptions come from

Most of them sit in the gap between what a person does and what the person says they do. The person who logs enquiries sees the same email address twice in a morning and merges the two records without thinking about it. The one chasing quotes knows which customer said they'd be away for a fortnight and leaves that quote alone until they are back. Asked to describe the process, neither mentions any of this. They described the rule, and the automation got written from the description.

The tools produce their own share. A web form fires its webhook twice on a slow connection and two records appear a second apart. A booking tool records a rescheduled call as a cancellation followed by a fresh booking, which reads to a sequence as one person leaving and a stranger arriving. We didn't write either of those and we can't change them, so the automation has to expect them, and the only way to expect them is to have seen them happen.

Contacts do the rest. They reply to the wrong message, reply from an address that isn't the one on the record, book a call and then fill in the form again to be sure, or unsubscribe and write back a week later asking why nobody has been in touch. A sequence built for one tidy contact does something with each of these, and it is usually the wrong thing, sent politely, to a person who was about to buy.

Listing the exceptions before launch

Before anything goes live we sit with the person who does the task by hand and walk the process one step at a time. At each step we ask what has gone wrong there in the last year. The wording matters. A question about what could go wrong produces a list of disasters that have never happened, and a question about the last year produces the ones that did, because each of those cost somebody an afternoon and afternoons are remembered.

The list that comes out is shorter than the team expects and longer than the build allowed for. Every entry sits against the step it happened at, in the words of the person who dealt with it, next to what they did about it. That last part is the useful part. Where the person can say what they do every time, the fix becomes a rule in the automation. Where they say it depends, the record gets handed to a person, and the automation's only job is to hand it over with everything attached.

A few entries get left alone. An exception that happened once and cost nothing goes on the list with the word manual next to it, so that whoever inherits the system knows it was seen and left. That is a different thing from never having looked.

Then the exceptions get tested, because the rule was tested on the day it was written. Two identical submissions thirty seconds apart. A reply to the third message of a sequence that had already stopped. A cancellation on a deal at the stage after the one the sequence watches. An unsubscribe followed by a fresh enquiry from the same address. Each of those runs through the system before a client's contact does, and the one that produces a message nobody would want to receive is the one that gets fixed first.

The default is to stop

The rule that matters most is the one for the record that fits no path on the list. Ours is to stop. The automation leaves the contact alone and writes what it saw to a place a person already looks. A message that did not go out gets sent by a person in the morning. A message that went to a contact who cancelled the day before is a complaint.

Where it writes to gets decided with the team. An error log nobody opens is the same as no log, so the entry goes wherever they already look on a normal morning, which in most teams is the shared inbox or a channel, and occasionally a row on the sheet the person opens first thing. It carries the record and the step the automation stopped at. The person reading it can finish the job by hand without opening the automation at all.

Duplicates get a rule of their own, because they are the most common exception in every system we've been asked to look at. Before a record is created the automation matches on email address and then on phone number, and it creates nothing when either one matches. A contact who changed their email address is still one person. Treating them as two sends the same sequence into the same inbox twice.

The stops get counted. At day thirty we read how many times the automation stopped and at which step, because that count says which exceptions were common enough to deserve a rule and which happened once. A few of the entries on the list move from manual to rule at that point, and one or two rules usually go the other way, because a case the team was sure about turned out to depend on something after all.

What the list will not catch

It will not catch the exception that has not happened yet. A renamed form field, or a new person in the team who types the postcode into the wrong box, produces a case nobody listed because it did not exist when the list was written. The stop rule covers those, and it covers them only for as long as somebody is reading the place the stops land. When that person leaves, the stops pile up unread. The automation then does nothing for a share of the contacts, quietly, which is the failure the list was meant to prevent.

Nor does it rescue a process that is mostly exceptions. When the person walking us through the steps says it depends at more than half of them, the process isn't settled enough to automate, and the list is the thing telling us so. We have stopped builds at that point, and the list is a cheaper way to find it out than a live system with a client's contacts inside it.

The owner stays as well. Every entry on the list becomes a line somebody in the client's team will one day have to change, because the offer changes or the form gets a new field. The handover note carries the exception list next to the steps, in the words the team used in the session, so that a person who didn't build the system can read what it was told to do when it did not know what to do.

More than 10,000 hours of manual marketing work were automated across our engagements in the past year. Those hours only count while the builds behind them keep running. The ones we expect to still be running a year after handover are the ones that were told, before launch, what to do with a record that did not fit.

What we do

Topic:

Automation

About the author

Muhammad Hussain is Partner and CEO of Nuha Consulting and an expert in marketing automation. More about Muhammad

“The rule that matters most is the one for the record that fits no path on the list, and ours is to leave the contact alone and hand the record to a person.”

Muhammad Hussain

More insights

Read more
Why we document every automation we hand over A curved row of glass dominoes with the first one tipping. 7MIN READ Automation Why we document every automation we hand over
A renewal date already sits in most systems, unused A curved row of glass dominoes with the first one tipping. 8MIN READ Automation A renewal date already sits in most systems, unused
Why enquiry and quote follow-up is automated first A curved row of glass dominoes with the first one tipping. 5MIN READ Automation Why enquiry and quote follow-up is automated first
The handoff to sales breaks more often than the automation that feeds it A curved row of glass dominoes with the first one tipping. 7MIN READ Automation The handoff to sales breaks more often than the automation that feeds it

Talk through one of these processes

If a marketing team still does any of these by hand, we go through it on a first call and say how much of it could run on its own.

Schedule a 20-minute call (opens in a new tab)