Skip to content

Chasing 412 clients by email, from three offices

Sixty staff, three offices and three versions of the same deadline spreadsheet. Records were chased from personal inboxes, so nobody could say what had been asked for.

Client
A three-office accountancy practice
Sector
Professional services
Duration
13 weeks
Year
2025
Filewell
Laptop screen of the practice's deadlines for all three offices: 184 filings with tabs for overdue, the next 14 days, waiting on the client, in review and ready to file, filters for office and owner, and a table grouped by due date. The nine overdue jobs come first, each showing the client, office, filing, due date, status, whether it is waiting on the client or the practice, and who owns it.
The three offices' spreadsheets became one view that partners filter by office, owner or filing. Every job shows whether it is waiting on the practice or on the client.

Overdue jobs

Before
~34
Now
~9

Time spent chasing

Before
~11 hrs / week
Now
~2 hrs / week

Deadline tracking

Before
3 spreadsheets
Now
1 board

Who a job is waiting on

Before
Not recorded
Now
On every job

The problem

The practice ran 412 clients out of three offices with about sixty staff. Statutory dates sat in a spreadsheet, and each office had drifted into keeping its own copy.

Records were chased by email from personal inboxes. If a manager was away, nobody could tell whether a document had been requested, when, or whether the client had already sent it. The practice management system held the client list and the fee, and nothing about the state of the work.

Partners knew roughly how many jobs were late. They could not say which ones were late because of the practice.

What we found

We traced thirty overdue jobs back through the email trail. Nineteen of them were waiting on the client, and had been for weeks.

The practice was absorbing the blame for all thirty, because it had no record to point at.

We also found the same document being requested twice by two different people, which is the kind of thing a client remembers at renewal.

How we got there

Thirteen weeks. The board for the partners was the simple part. The screen for the client took three attempts, and the difficult conversations were about what staff would see of each other's work.

When the official dates disagreed

On the first morning the dates came in from Companies House and HMRC, some of them matched none of the three spreadsheets. Each mismatch went to the manager for that client with both dates side by side. Most were a spreadsheet nobody had updated after a change of year end. Nothing was overwritten until a person had looked at it.

A request belongs to the client

Before anyone asks a client for a document, they see what has already been asked for, who asked, when, and whether it has arrived. That was in the first version, because asking twice was the first thing the practice wanted stopped.

The client screen, three times

The first version showed a client everything the practice held on them, and clients opened it once. The second was a list of what was outstanding and read like a demand. The one in use shows three things at most, in plain words, each with the reason it is needed. We tested it the way a client uses it, by photographing a bank statement with a phone.

Whose late jobs are on the board

Managers were wary of a board where the other two offices could see their overdue jobs. What settled it was the column showing who each job is waiting on. Once most of the late ones showed as waiting on the client, the board stopped looking like a league table and became the record they had been missing.

What we built

Filing dates from Companies House and HMRC

Filing dates pulled from Companies House and HMRC each morning rather than typed in, so a spreadsheet that has fallen behind is no longer possible.

One board, three offices

The three spreadsheets became one view that partners can filter by office, owner or obligation.

Tablet screen of a client's filing dates, from a VAT return in October to the company tax return in March, each marked Companies House or HMRC, with a note that the dates were checked that morning. The annual accounts are open beside the list: due 31 December, 111 days left, waiting on three things from the client, and an upload button.
Phone screen of the client's to do list: the three things the practice needs for the accounts to 31 March, overdue bank statements, two director's loan payments to check and a hire purchase agreement, each with a line on why it is needed, then the dates coming up and a tab bar.

A portal the client will actually open

Three things to do, written plainly, with the reason attached. We spent longer on this screen than on anything else in the build, because a portal nobody opens is worse than an email.

Phone screen of one request opened, bank statements for the account ending 4471: when it was due, what to send and why, the record of who asked for it and when, a note that the manager is away and a colleague can see the request, and an upload button.

Every request on the record

Each ask is logged against the client with who made it and when. A manager on holiday no longer takes the history with them.

Afterwards

The first number to move was not one we were asked about. Clients stopped being asked twice for the same document, and two partners raised it unprompted in the first review.

The overdue figure took longer. It settled at around nine after two quarters, and the partners are candid that most of the remaining nine are the same handful of clients every time.

Built with

  • TypeScript
  • React
  • Next.js
  • PostgreSQL
  • Prisma
  • Auth.js
  • Companies House API
  • HMRC Making Tax Digital API
  • S3 document vault
  • Resend

More case studies

Is this your problem too?

If any of the above sounded familiar, describe your version of it. The first conversation is about whether software is the right answer at all.

From £10,000Most projects land between £15,000 and £55,000.