BlogResources

Tax season as a queueing problem: what automation can and cannot move

January is a fixed deadline with an unmanaged arrival rate. Which parts of that are fixable, which are not, and where messaging actually helps.

Rebecca PearsonRebecca Pearson11 min read

Summarize with AI

Tax season as a queueing problem: what automation can and cannot move
On this page

January in a small practice has a specific shape. Work arrives at a rate nobody controls, it is served at a rate set by how many qualified people you have, and the whole thing terminates at 11.59pm on the 31st whatever state it is in. Everything that makes the month miserable follows from those three facts.

That framing is more useful than the usual advice about working smarter, because it tells you which levers exist. You cannot move the deadline. You can barely move your service rate inside the month. What you can move is when the work arrives, and how much of your capacity is spent on things that are not the work.

What we'll cover

The three numbers that set the month

The arrival curve. When client records actually land, plotted across October to January. In most practices this is dramatically back-loaded, and the shape is remarkably stable year to year, which means last year's curve predicts this year's.

The service rate. How many returns your people can complete per week at a sustainable pace. Known roughly by every partner and written down by almost none, which is why January staffing is guesswork.

The interruption load. The proportion of the working day spent on status queries, document chases and questions that are not the return in front of you. This is the number that quietly determines the other two, because a fragmented day serves fewer returns than a protected one.

Only the third is directly attackable with tooling. The first is attackable with communication. The second is a hiring and training question that cannot be solved in December.

Arrivals are the only real lever

If half your returns arrive in the last three weeks, no amount of efficiency inside those three weeks rescues the month. Moving even a fifth of that volume into November changes January more than any software will.

The mechanisms that move arrivals are unglamorous.

Ask early, specifically, and to a deadline that is yours rather than HMRC's. A request in early November naming the exact documents and a date in early December gets acted on. "Please send your information when you can" does not.

Differentiate by history. A client who filed in November last year needs one message. One who filed on the 30th of January for four consecutive years needs a different one, sent earlier, with a consequence in it.

Remove the reasons for delay you control. Clients wait because they are unsure what is needed, because the last fee was a surprise, or because they are waiting on a third party. None of those is fixed by a reminder.

Reward the early ones visibly. A client who sends in November and hears nothing until February has learned nothing.

Publishing a cutoff, and meaning it

Most practices have an internal date after which they cannot guarantee a January filing. Most do not tell clients, and then absorb the consequences of records arriving on the 28th.

Publishing that date changes behaviour, but only if it is real. A cutoff that is announced and then quietly ignored for everyone who asks nicely trains clients that it does not exist, and next year it will not work.

Three things make a published cutoff hold.

State the consequence accurately. Late filing carries an immediate £100 penalty even where no tax is due, then £10 a day after three months up to £900, with further charges at six and twelve months (HMRC penalties). That is a fact about their position rather than a threat from you, and it lands differently.

Say what happens rather than what might. Records after the cutoff go into a best-efforts queue, without a guarantee. Clients accept that when it is said in November.

Apply it evenly. The exception you grant to the client who rings the partner is visible to everybody else eventually.

Not every return is the same job

Treating a fifteen-minute return and a three-hour one as identical units is what makes January feel unmanageable, because the queue looks uniform and is not.

Sorting the book before the season starts costs an afternoon and pays for itself. Separate the returns that are essentially data entry from those with a complication you know about in advance: a property disposal, a first year of trading, a residence question, a client whose records are always a rebuild. Then schedule the complicated ones early, because they are the ones that cannot be rescued in the last week, and the simple ones fill gaps.

This also tells you which clients to chase hardest in November, and it is usually not the loudest ones.

Building it with CodeWords

CodeWords connects to more than 3,000 integrations, and the connection is made once and reused.

  1. Open CodeWords and start a new automation.
  2. Describe what should happen in plain language to Cody, the automation builder: which clients are contacted when, what each message asks for, what the cutoff is, and what a client can be told about their own progress.
  3. Authorize the connections to your practice management system, wherever the return status lives, and the channel your clients use.
  4. Describe the exceptions: a client who has already sent everything, one with a complication you are handling personally, one you have agreed a different date with, anyone in the middle of a difficult year.
  5. Build it in October and run it through November, since an automation first switched on in January is a January problem.

You describe the outcome; Cody builds it, connects it, and deploys it. The free plan covers light use, with Pro at $39 per month and Business at $100 per month as usage grows; details are on the pricing page.

The status question and why it is expensive

"Where is my return?" costs more than the ninety seconds it takes to answer. It arrives unpredictably, it requires somebody to look something up, and it lands in the middle of work that then has to be resumed. The cost is the resumption, not the answer.

It is also entirely preventable, because the client is asking for information you already hold and have not sent.

A status message when a return moves stage removes most of the traffic. Received. In preparation. Ready for your approval. Submitted. Four messages across six weeks, fired by the status already recorded in your system, and the question largely stops being asked.

The one that matters most is the first. A client who sends records and hears nothing assumes they were lost, and the second thing they do is ring.

What the last fortnight actually needs

By mid-January the levers have mostly been pulled and what remains is triage.

A single visible list. Every outstanding return, its stage, and what it is waiting on. Reconstructing this daily from four places is where mornings go.

A hard split between waiting-on-us and waiting-on-them. These need completely different action and are usually mixed together in one anxious pile.

One person owning approvals. Returns sitting in a client's inbox awaiting signature are the most common cause of a late filing that was otherwise ready, and chasing those is a distinct job from preparing returns.

Protected preparation time. Whoever is doing the returns should not also be answering the phone. This is a staffing decision made in December, not a tooling one.

What should never be automated in January

Telling a client their return will be late. That is a phone call, from a person, before it happens.

Anything touching a penalty or an appeal. Consequences and reasonable excuse are advice, and advice goes on the file.

Fee conversations. A surprise invoice sent automatically during the most stressful month of the client's year is a good way to lose them.

Complaints and anxious messages. Some January messages are from people genuinely frightened about what they owe. An automated reply to that reads as indifference.

The review nobody does in February

The most valuable hour of the whole cycle is in early February and almost nobody spends it.

Plot the arrival dates. Count how many returns were completed in the final week. List the clients who caused disproportionate trouble and why. Note which messages produced responses and which were ignored. Write down what the cutoff should be next year.

Done in February, this is evidence. Done in October, it is memory, and memory has conveniently forgotten the worst of it.

Making it survive

Build and test it outside the season, because January is the wrong month to discover a broken integration.

Check the record before every send, so nobody who has already filed is asked for documents.

Stop everything on a reply and get it to a person.

Keep the cutoff and any exceptions written down, visibly, so the whole practice answers the same way.

Measure arrival dates year on year. That curve moving left is the only evidence that any of this worked.

Limits worth knowing about

The deadline does not move, and neither does the arithmetic of how many returns your people can complete.

Automation does not add capacity. It reduces interruption and moves arrivals, which is worth a great deal and is not the same thing.

Some clients will always be late, and after two or three years that is a commercial decision rather than a communication one.

A sequence cannot fix a resourcing gap. A practice short a qualified preparer in January is short a preparer.

Messaging channels have their own rules, including a limit on how long after a client's last message you can send freely, so a January plan that depends on unlimited outbound contact needs checking first.

What to build first

The status message at receipt. One message, fired when a client's records are logged, confirming what arrived and what happens next. It is the smallest useful thing here and it removes the largest single category of inbound query, because most "where is my return?" messages are really "did you get it?".

Two habits make the difference. Move arrivals in November rather than trying to work faster in January, since the month is decided before it begins. And spend the hour in February writing down what actually happened, because by the time you next need it you will have forgotten everything except that it was bad.

Frequently asked questions

What actually causes the January crunch?

An arrival rate nobody controls meeting a service rate that cannot flex, against a deadline that does not move. Most of the pressure is set by when records arrive, which is decided in the autumn.

How do I get clients to send information earlier?

Ask in early November, name the exact documents, and give a date of your own rather than HMRC's. Segment by last year's behaviour, because habitual late filers need a different message sent sooner.

Should I publish a cutoff date?

Yes, if you will hold it. A cutoff that bends for anyone who asks teaches clients it is not real, and it will not work the following year.

What is the penalty for filing late?

An immediate £100 even where no tax is due, then £10 a day after three months up to £900, with further charges at six and twelve months, plus separate penalties and interest on late payment.

What should never go out automatically during the season?

Telling somebody their return will be late, anything about penalties or appeals, fee changes, and replies to anxious or complaining messages.

How should returns be prioritised?

Separate the straightforward from the complicated before the season starts, and schedule the complicated ones early. They are the ones that cannot be rescued in the final week.

What does the last fortnight need most?

One visible list of every outstanding return split by whether it is waiting on you or on the client, and somebody whose only job is chasing approvals.

When should this be built?

October, tested through November. An automation switched on in January becomes part of the January problem.

What is worth measuring?

The arrival curve, year on year. If records are landing earlier than last season the changes worked, and no other metric tells you that.

Get started today

Your first workflow is free to build.

Describe what you need. Cody handles the build, the connections, and the deployment.