Guide

Tax season and year-end capacity planning: how accounting firms see the crunch coming

Most accounting firms plan tax season and year-end capacity in a spreadsheet: a list of clients, deadlines and owners that a manager updates by hand each week. Typically that manager spends several hours a week keeping it current, and it's still out of date by Wednesday, which is why the crunch feels like a surprise every year.

The crunch isn't really a surprise. The deadlines are known a year ahead. What's missing is a live picture of three things at once: how much work is coming, how much each person can take, and which jobs are stuck waiting for clients. This guide is for accounting and bookkeeping firms of 10-60 people - a people business, meaning a business that sells its people's expertise and time, such as accountants, lawyers, agencies and consultants. It covers what you can do with the practice tool you already have, the signals you've outgrown it, and what a custom build adds.

Why it happens

Capacity planning breaks down because the information it needs sits in different apps, and none of them was built to answer "who has room next week?"

Deadlines and jobs

live in a practice management tool such as Karbon or TaxDome.

Time

is logged in the practice tool, in a separate timesheet app, or not at all.

Budgets and fees

live in a proposal tool such as Ignition, or in the partner's head.

Whether a job can start

depends on documents from the client, which arrive through a portal, Dext, Hubdoc or email.

Holidays and part-time patterns

live in an HR app or a shared calendar.

The ledger

Xero or QuickBooks - tells you which bookkeeping clients are behind.

So the manager who owns the plan copies a bit from each into a spreadsheet. By the time it's finished, it's a snapshot, and by the time the snapshot is shared, two clients have sent their documents and one senior has called in sick.

The fix with what you already have

Most firms can get much better visibility from tools they already have, before spending anything.

  1. 01

    Put every recurring job in the practice tool with a real due date

    Tax returns, year-end accounts, VAT or sales tax returns, payroll year-end. Set the internal due date well ahead of the statutory deadline, and roll the jobs forward automatically. Karbon and TaxDome both support recurring work; set it up once per service.

  2. 02

    Give every job a budget in hours

    Even a rough estimate per job type is enough. Without budgets, no tool can tell you whether next month is full.

  3. 03

    Track the "waiting on client" state separately

    Most practice tools let you add a status for jobs blocked on documents. Use it, and review the list weekly. A job waiting on a client is not capacity you can use, however urgent it looks.

  4. 04

    Spread deadlines where you can

    Many firms let year-ends cluster because that's how clients arrived. When you take on a new limited company, ask whether its accounting reference date can sit in a quieter month. Over a few years, this flattens the curve more than any software.

  5. 05

    Use the workload view

    If your practice tool shows work by person and week, make it the agenda for the Monday meeting instead of the spreadsheet.

  6. 06

    Start the chasing early

    Most crunch comes from late documents. Our guide to chasing clients for documents covers request lists and reminders in detail.

  7. 07

    Measure last season

    Before you plan the next one, count where the hours went. Our free ops audit template gives you a simple structure.

Setting it up, step by step

Here is the order we'd suggest for a firm doing this for the first time. Budget two or three afternoons for a manager, spread over a fortnight, plus an hour with each team lead.

  1. List every service you deliver on a cycle. Personal tax returns, partnership returns, year-end accounts, corporation tax, VAT or sales tax, payroll year-end, management accounts. For each one, write down the statutory deadline and the internal deadline you'd like to hit. A common rule is to aim to finish a month before the statutory date, so a late client still has room.
  2. Build one template per service in your practice tool. In Karbon this is a work template with its checklist of tasks; in TaxDome it's a pipeline with stages and a job template. Keep each template short: the stages a reviewer actually cares about, not every click. Add a budget in hours to each template so every job created from it starts with an estimate.
  3. Set the recurrence. Both tools can create the next job automatically from the template on a schedule. Set the start date early enough to allow for chasing documents - for a personal tax return, that might be the week the tax year closes, not the month before the deadline.
  4. Assign an owner and a reviewer to every client, not every job. When the recurring job is created, it picks up the right people without a manager assigning it by hand.
  5. Add a "waiting on client" stage or status. Put it before the first working stage. A job only moves past it when the documents are in. In TaxDome, client requests and organizers can sit at this stage; in Karbon, a client request on the work item does the same job.
  6. Enter capacity, not just people. Record each person's contracted hours, part-time days and booked holidays where your tool or HR app can see them. If your practice tool can't hold holidays, keep a single shared calendar and make one person responsible for it.
  7. Check the budget against the fee. If you use Ignition, compare the hours budget in each template with the fee for that service. A service priced at four hours of work and budgeted at ten is a pricing conversation, not a capacity problem.
  8. Run the first Monday meeting from the tool. Open the workload view by person and week, then the list of jobs waiting on clients. Note anything the tool couldn't show you; that list is your next set of fixes.

Common mistakes

Using statutory deadlines as due dates.

If the due date is the legal deadline, every job looks fine until it's too late. Use internal due dates and keep the statutory date in a separate field.

Budgets nobody believes.

A budget set once by a partner and never checked against last year's actual hours gets ignored. Revisit budgets after each season using real time data.

Counting blocked jobs as available work.

If a job is waiting on the client, it shouldn't appear in someone's capacity for this week, however close the deadline is.

One giant template.

Fifty-task checklists don't get ticked. People stop updating them, and the workload view goes stale.

Planning at 100%.

Nobody has 37.5 hours of client work in a 37.5-hour week once you allow for meetings, training, queries and admin. Pick a planning figure well below 100% of contracted hours, write it down and stick to it.

Leaving holidays out.

The peak and the school holidays often overlap. A plan that ignores a fortnight of leave is a plan that fails in week two.

What good looks like

You know you've got it right when the Monday meeting takes twenty minutes, not an hour, and starts from the practice tool rather than a spreadsheet. Every recurring job for the next twelve months exists, with an owner, a reviewer, an internal due date and a budget. The "waiting on client" list is short and gets shorter each week, because chasing starts automatically. Each person can see their own next four weeks and say early if they're full. And when a partner asks whether the firm can take on new clients in January, a manager can answer the same day.

When that stops working

These steps work well up to a point. Watch for these signals that you've reached it:

The spreadsheet is still the real plan

, because the practice tool's workload view doesn't account for budgets, holidays or "waiting on client".

Time isn't logged consistently

, so nobody trusts the hours-used figures and the budget comparisons mean nothing.

You find out a job is late after the deadline

, not three weeks before it.

The same few seniors carry the peak

, and nobody can show it in numbers until someone asks to go part-time.

Seasonal or contract staff

need access to a slice of the work, and setting that up takes a manager a day.

Partners ask for a capacity view

before agreeing to take on new clients in Q1, and it takes a week to answer.

Billing lags the work

because nobody can see which finished jobs haven't been invoiced.

What a custom build looks like

A custom capacity build doesn't take the place of your practice tool. It joins it up with your timesheets, documents, holidays and fees, and gives managers one view they trust. It's one of the builds we're most often asked about by accounting firms.

For a typical firm:

  1. A live capacity board. Every person, every week, for the next twelve weeks: hours budgeted on their jobs against hours available after holidays and part-time patterns.
  2. Jobs at risk, flagged early. Any job that can't start because documents are missing, or won't finish because the owner is over capacity, is flagged with weeks to spare, not days.
  3. Time that's easy to log. A simple timesheet that sits where people already work, logs against the right client and job, and nudges at the end of the day. We've built timesheet software for agencies on the same pattern.
  4. Scenario planning. "What if we take on these twenty new clients in January?" answered in minutes, using real budgets.
  5. People decide. The board suggests where work could move; a manager decides, and talks to the person first.

We work in four steps: scope, build, roll out, improve. Roll-out matters most here, because a capacity view is only as good as the time people log, so we train the team and adjust the tool until logging takes seconds.

Typical market rates for a dashboard or internal tool like this run $8,000-30,000 depending on how many apps it joins, plus ongoing support; our guide to automation consultant rates explains how those are priced. Forge's prices are on the pricing page: a two-week ops audit at $2,500 (£2,000), credited to your first month, then a monthly plan at $2,000, $3,500 or $7,500 a month (£1,600, £2,800 or £6,000), with your first build included. The software runs on your own accounts, so you own it and pay those tool costs directly; we keep it monitored and fixed, including through the peak.

Who gets time back, and what they do with it

Capacity planning usually lands on a manager or practice manager, and the cost of getting it wrong lands on the seniors who absorb the peak.

When the board keeps itself current, your manager stops rebuilding the spreadsheet every Monday and spends the time on reviews and coaching - for example, sitting with a junior on their first year-end file instead of reviewing it at 9pm the night before the deadline. Your seniors see the peak coming and can say early that they're full, rather than finding out the hard way. Your partners can say yes to new clients with confidence, or say "after April" and mean it.

Tax season will always be busy. The point is that your people get to plan for it, rather than survive it.

For example: a season at a 20-person firm

For example, picture a 20-person firm with three partners, four managers, eight seniors and juniors, three bookkeepers and two people in admin. It has around 600 personal tax returns, 250 limited companies and a payroll book.

Before, one manager rebuilt a capacity spreadsheet every Monday from Karbon, the holiday calendar and a list of who'd sent their documents. By January, two seniors were carrying most of the complex returns, and the firm found out about late jobs when clients rang to ask.

After setting up templates, budgets and a "waiting on client" stage, the firm can see in October that about a third of personal returns are still waiting on documents. The admin team starts a second round of chasing in November, not January. The manager spots that one senior is planned at 130% for the last three weeks of January and moves twenty straightforward returns to a junior, with the senior reviewing them. The partners decide to take on new limited company clients only with year-ends from May to September, and the January peak is a little lower the following year.

Nothing here needs new software. It needs the jobs, budgets and blocked work in one place, and a manager who decides what to do with what they see.

Rolling it out and training the team

Capacity planning only works if people log their time and move their jobs through the stages. That's a habit, and habits need a plan.

Start three months before the peak.

Changing templates during January is asking people to learn a new system when they have the least time to do it.

Pilot with one team.

Pick one manager and their team, run the new setup for a month, and fix what annoys them before rolling it out to everyone.

Show people what they get.

A senior who can see their own next four weeks, and can point to them when asked to take on more, logs time more willingly than one who's told to.

Train in short sessions.

Thirty minutes on how to move a job, mark it as waiting on client and log time against it. Record it for new joiners and seasonal staff.

Make one person the owner.

Someone needs to keep templates, budgets and holidays current. Give them the time to do it, and make it part of their role, not a favour.

Agree the Monday routine.

Same time, same views, same order. People trust a plan they see used.

How to know it worked

Measure a few things before you start and again after the season. Compare like with like: the same months, the same services.

Jobs finished after the internal due date

, as a share of all jobs. This should fall.

Jobs finished after the statutory deadline.

Ideally none, and you should know about any risk weeks ahead.

Hours logged against budget, by service.

This tells you which budgets need changing and which services are underpriced.

Weeks where anyone was planned above 100%.

Count them per person. If it's always the same names, that's a staffing conversation.

Time the manager spends on the plan each week.

If it hasn't dropped, the tool isn't doing the work yet.

Days from documents arriving to job finished.

This shows whether work is flowing or piling up.

How people felt.

A short survey after the season - did you see the peak coming, did you feel able to say you were full - tells you more than any chart.

FAQ

Questions, answered plainly

How do accounting firms plan capacity for tax season?

Put every recurring job in the practice tool with an internal due date and an hours budget, track jobs waiting on client documents separately, and review a workload view by person and week every Monday. Spreading year-ends across quieter months helps over time.

What's the best way to spread year-end work?

Set internal deadlines well before statutory ones, start document requests early, and, where it's allowed and sensible for the client, agree year-end dates that fall in quieter months when you take on new companies.

Can Karbon or TaxDome show team capacity?

Both support recurring work, due dates and assigning work to people, which is the basis of a workload view. How well they handle budgets, holidays and blocked jobs varies, so test with a real busy month before relying on it.

Why don't our capacity plans match reality?

Usually because time isn't logged consistently, jobs waiting on clients are counted as workable, or holidays and part-time patterns aren't included. Fix those three before changing tools.

How much does a custom capacity planning build cost?

On the open market, typically $8,000-30,000 depending on how many apps it joins, plus ongoing support. With Forge, a two-week ops audit is $2,500 (£2,000), credited to your first month, then $2,000, $3,500 or $7,500 a month (£1,600, £2,800 or £6,000) with your first build included.

Start with a 2-week ops audit - $2,500, credited to your first month.