Ask a firm where their time goes in January and the answer is rarely "preparing returns". It is following up. Emails asking for the same document a third time, phone calls to people who did not open the first two, and the maintenance of a mental list of who owes what that lives in one person's head and nowhere else.
Why manual chasing does not scale, in one calculation
Say a firm serves 220 clients and 60% of them are late with something at some point in the season. Each late client takes an average of 2.5 follow-up touches, and each touch — deciding who to chase, checking whether they have since sent it, writing the message, recording that you sent it — costs six minutes.
That is 132 clients × 2.5 × 6 minutes = 33 hours. Not for one person; across the firm. But it is 33 hours of your most senior operational time, spent in five-minute fragments during the weeks when uninterrupted attention is most valuable.
And the fragmentation is the real cost. Thirty-three contiguous hours is a week of work. Thirty-three hours in five-minute pieces scattered across ten weeks is considerably more than a week of work, because each fragment costs a context switch on both sides.
The three things that make it expensive
1. Deciding who to chase
Before any message is written, someone has to work out who is outstanding. If the answer lives in a mailbox, that means reading a mailbox. If it lives in a spreadsheet, it means the spreadsheet is current, which means someone has been maintaining it, which is the same problem one step removed.
2. Not knowing whether it already arrived
The most damaging failure mode is chasing a client who sent the document last Tuesday. It costs the client's confidence in you, and it teaches them that your reminders are unreliable — which means the next one gets less attention, which means you send more of them.
3. Writing the message
Individually the cheapest part, in aggregate not: someone is composing a variant of the same paragraph a hundred and thirty times.
What an escalating cadence looks like
The design principle is that urgency should increase over time and the sequence should stop the moment it is satisfied. A workable shape for a tax organizer:
- Day 0 — the request. Specific list of what is needed, a link, a deadline. Not "please send your documents".
- Day 10 — a soft reminder. Friendly, restates what is outstanding, notes anything already received so it is visibly accurate.
- Day 20 — a consequence. Still polite, but names the effect: this is the date past which we cannot guarantee filing by the deadline.
- Day 30 — a human. The sequence ends and flags a staff member to call. Some clients need a person, and pretending otherwise just wastes another cycle.
Four touches, three of them automatic. The 33 hours becomes a handful of phone calls to the clients who genuinely need one.
The rule that makes it work
The sequence must stop automatically when the client does what was asked. Not when a staff member notices and switches it off — automatically, on receipt. A reminder sequence that keeps running after the document arrives does more damage than no sequence at all, because it destroys the credibility of every message you send afterwards.
Targeting, and the preview that prevents disasters
Most reminders are not for one client. They are for "every active client enrolled in Sales Tax", or "every business client on Monthly Bookkeeping". That is what makes automation worth setting up — and also what makes it dangerous, because a rule with a slightly wrong filter emails a hundred and forty people something that does not apply to them.
The safeguard is a preview that resolves the recipient list using exactly the same logic the sending worker will use, and shows you the names before you commit. Not an estimate, not a count — the actual list. If the preview and the send can disagree, the preview is decorative.
The other half: make it easy to comply
A perfect reminder cadence pointed at a bad upload experience produces well-timed frustration. If your reminders are working and documents still are not arriving, the problem has moved downstream — the client is trying and failing.
Which usually means: the link goes to a login page rather than to the thing they were asked for; the upload requires choosing a category they do not understand; the file is a phone photo and gets rejected on size or type with an unhelpful message; or they cannot tell whether the upload worked.
What to measure
- Time from request to receipt, median rather than mean — one client who takes eleven weeks should not hide the fact that most take four days.
- Touches per completed request. If it is above two, your day-0 message is not doing enough work.
- Requests closed with zero human involvement. This is the number that tells you whether the automation is real.
- Reminders sent to clients who had already complied. Should be zero. If it is not, find out why before doing anything else on this list.
How Kveldo handles it
Client reminders in Kveldo are rules rather than tasks. A rule targets either a single client or every active client enrolled in a service — Payroll, Sales Tax, Monthly Bookkeeping, Business Taxes, Personal Taxes — and can be narrowed further to business-only or personal-only. A Preview Recipients button resolves the list using the same resolver the sending worker uses, so what you see is what will send.
The escalation stops automatically the moment the client uploads what was asked for, because the document request and the reminder rule are the same record rather than two systems that have to be kept in sync. And every outbound message is written to an email send log with recipient, subject, template, status and timestamp — so "they never got it" has an answer rather than a shrug.
See secure messaging and reminders →
Read next: why clients don't use your portal →