Skip to content
Guides/Industry-Specific
Guide 21

Law Firm Chart of Accounts: The Accounts Behind a Trust Ledger That Reconciles to the Penny

A client's retainer is never the firm's revenue until it's earned, unbilled hours are a real asset the day they're logged, and the trust account has to match its liability to the penny or it reads as commingling. Here are the accounts a law firm's chart needs to keep all three straight, with the entries that fill them and the statement lines they create.

Read 14 min readUpdated Sections 7Format Open access
1 · StructureWhich accounts exist
2 · RecordingHow a transaction resolves
3 · ReportingHow accounts become statements
4 · InsightWhich questions you can answer

A bar examiner opens a law firm's books for a routine trust account review and asks for one number: does the IOLTA Trust Account's balance match the Client Trust Liability account, to the penny, on every day in the sample period. The firm's bookkeeper has one QuickBooks account called "Trust Account" and no liability account at all — client retainers have been posted straight to income since the day the firm opened. There is no gap to explain, because there was never a place for a gap to show up. The two months the examiner picked are the two months a $4,000 retainer got counted twice: once as revenue on arrival, again when the invoice against it went out.

The fix is not a better reconciliation habit. It is the chart of accounts. A trust account review is a comparison of two accounts, and if both exist and are posted to correctly every time cash moves, the comparison is a report a bookkeeper runs in minutes, not an investigation an examiner has to run for them. This guide covers those accounts, the accounts that let unbilled hours show up as earned before an invoice exists, and the three entries that fill all of them.

Accounts in template
56
Ready to import into QuickBooks Online
Trust liability accounts
2
Client Trust Liability and Unearned Retainer Revenue — money held versus money owed
Revenue accounts by practice area
6
Litigation, family law, corporate, estate planning, contingency, flat fee
Template
legal-gaap
Import in about 60 seconds
Section 01

Why a generic chart breaks down for a law firm

Under GAAP (Generally Accepted Accounting Principles), money a firm holds on a client's behalf is a liability, not revenue, until the firm earns it by doing the work the client engaged it for. A default QuickBooks chart has no account built for that distinction — one bank account, one income account — so a retainer deposit and a paid invoice look identical the moment either clears. Every state bar's trust rules draw on the same obligation the American Bar Association's Model Rule on safekeeping property sets out: keep client funds in their own account, keep records that prove it, and never let that account's balance drift from what the firm owes.

Work in process is the harder gap, because nothing about it looks wrong on a bank statement — just hours that happened and were never written down anywhere the books could see. An associate who logs forty billable hours in the last week of the month, invoiced out only on the third of the next, has by any accrual measure earned that revenue in the month worked. A chart with no account for unbilled work has nowhere to put that fact, so month-end numbers understate what the firm earned, and a partner reading the P&L before invoices go out sees a worse month than the one that happened.

Retainers add a third wrinkle, because not every retainer sits in trust. Some engagement letters, under a narrow flat-fee exception a number of state bars allow, let a firm deposit the retainer straight into its own operating account — the fee is still unearned the day it lands, but the cash was never client money in a segregated account. A chart with only one "unearned" liability account, built for money in trust, has nowhere to also track money the firm can already spend but has not finished earning.

Section 02

How a dollar moves from retainer to revenue

Every retainer dollar, and every hour logged, moves through these accounts in this order. Revenue lands on the income statement on the way through; the balance sheet holds whatever has not settled yet.

1020 / 2200Retainer received into trustTrust cash and the trust liability move together, off the income statement
2200 → 4000Fees earned against the retainerThe liability releases, revenue is recognized, cash follows from trust to operating
1210Work in process at month-endRevenue recognized on hours worked, before an invoice exists
1100Invoice sentWork in process converts to a receivable; no revenue is booked twice
Section 03

The accounts that do the work

These are the accounts from the law firm template that a generic chart does not give you. Account numbers, names and types below are exactly as they import.

RowAccountNumberTypePurpose
01IOLTA Trust Account1020BankClient funds held in trust, separate from firm operating cash
02Accounts Receivable - Fees1100Accounts ReceivableBilled but uncollected legal fees
03Client Cost Advances1200Other Current AssetsCourt filing fees, expert witness costs, and deposition expenses advanced to clients
04Unbilled Work in Progress1210Other Current AssetsTime and services rendered but not yet billed
05Client Trust Liability2200Other Current LiabilitiesOffsetting liability for IOLTA trust funds held for clients
06Unearned Retainer Revenue2210Other Current LiabilitiesRetainer fees collected outright but not yet earned
07Legal Fee Revenue - Litigation4000IncomeFees earned from litigation practice
08Legal Fee Revenue - Family Law4010IncomeFees earned from family law practice
09Contingency Fee Revenue4100IncomeRevenue from contingency fee arrangements
10Reimbursed Client Costs4200IncomeClient cost advances recovered
11Malpractice Insurance6300ExpensesProfessional liability insurance

The 1020 and 2200 pair is what makes the trust review possible: one holds the cash, the other holds what the firm owes for it, and the two should never show a different number. Unbilled Work in Progress at 1210 is a different asset from Accounts Receivable - Fees at 1100 — one is revenue earned but not yet billed, the other is revenue billed but not yet collected — and confusing the two hides exactly the gap a realization rate is built to measure. Client Trust Liability and Unearned Retainer Revenue both hold money the firm has not yet earned, but only one is client money in a segregated account; the other is cash the firm can already spend. Malpractice Insurance keeps its own line at 6300 rather than folding into general insurance, since it is usually the firm's largest insurance premium and worth seeing on its own.

Section 04

How a retainer actually gets booked

Follow one family law matter and one litigation matter through three entries: the retainer arrives, fees get earned against it, and a second matter's hours get recognized before an invoice exists. Figures are illustrative throughout.

A client retains the firm for a custody matter and wires a $10,000 retainer. The firm deposits it into the IOLTA Trust Account. Not one dollar of this is revenue yet.

Entry 1 · Client retainer received into the trust account
AccountDebitCredit
1020IOLTA Trust Account10,000
2200Client Trust Liability10,000
Totals10,00010,000

No revenue account is touched. The retainer sits as a liability the firm owes the client until it is earned, one invoice at a time — never recognized as income on the way in.

Over the following weeks, an attorney logs eight hours at a $350 rate. The firm invoices the client and applies the fee against the retainer already in trust. Two things happen at once: the fee is earned, and the cash backing it has to move out of a trust account it can no longer sit in.

Entry 2 · Fees earned against the retainer; cash moves from trust to the firm
AccountDebitCredit
2200Client Trust Liability2,800
4010Legal Fee Revenue - Family Law2,800
1000Operating Account2,800
1020IOLTA Trust Account2,800
Totals5,6005,600

Two linked postings, not one transaction: the liability releases and revenue is recognized on the top two lines; the cash funding it transfers out of trust on the bottom two. The transfer happens fee by fee as work is billed, never as a lump sum pulled whenever the firm's own cash runs thin.

A different matter has no retainer on file. A litigation associate logs six hours at a $400 rate in the last week of the month; the invoice will not go out until next month. Under accrual accounting, the firm has already earned that fee.

Entry 3 · Month-end work in process recognized for hours worked but not yet invoiced
AccountDebitCredit
1210Unbilled Work in Progress2,400
4000Legal Fee Revenue - Litigation2,400
Totals2,4002,400

Revenue is recognized the month the work happened, not the month the invoice is cut. When the invoice goes out, this reverses into Accounts Receivable - Fees rather than hitting revenue twice — the fee was already earned here.

Section 05

What this looks like on the statements

The same three entries, seen from the reports. The highlighted lines exist only because the accounts above exist.

Income statement, excerpt · one month, all matters
Legal Fee Revenue - Litigation38,400
Legal Fee Revenue - Family Law24,800
Contingency Fee Revenue6,500
Reimbursed Client Costs2,100
Total revenue71,800
Operating expenses
Attorney Salaries26,500
Staff Salaries11,200
Office Rent6,800
Malpractice Insurance1,450
Legal Research620
Total operating expenses46,570
Net income25,230

Example figures.

Total revenue of $71,800 includes fees earned against retainers and fees recognized as work in process, not only the fees that happened to get invoiced before the month closed. A firm tracking revenue by invoice date alone would show a smaller number this month and a larger one next, for no reason connected to how much work actually got done.

Balance sheet, excerpt · month-end, all matters
Current assets
IOLTA Trust Account46,500
Accounts Receivable - Fees28,300
Unbilled Work in Progress15,900
Client Cost Advances4,200
Current liabilities
Client Trust Liability46,500
Unearned Retainer Revenue5,000

Example figures.

The $46,500 in the IOLTA Trust Account matches the $46,500 in Client Trust Liability exactly — the first thing a bar examiner checks, and the reason those two accounts post together every time, never one without the other. This month the firm logged roughly $61,300 in billable time; about $53,400 was actually invoiced, for a realization rate near 87 percent. The rest is not lost revenue. It is the $15,900 sitting in Unbilled Work in Progress, carried forward until the invoices catch up, a number that exists only because the account exists to hold it.

Without these accounts you cannot answer
  1. 01Is the trust account actually clean? Without Client Trust Liability posted every time cash moves through the IOLTA account, a shortfall can sit for months, and it reads to an examiner as commingling, not a bookkeeping lag.
  2. 02How much have we actually earned this month? Without Unbilled Work in Progress, revenue only shows up once someone remembers to invoice, so a slow biller looks like a slow month even when the associates billed just as many hours as always.
  3. 03Is this retainer client money or firm money? A balance in Unearned Retainer Revenue and one in Client Trust Liability look identical on a bank statement, but only one of them is allowed to fund next week's payroll.
Section 06

What the template changes

The diff, in the grammar the product uses everywhere else.

Generic chart → law firm chart
  • Trust Accountone bank account, no offsetting liability
  • 1020IOLTA Trust Accountasset
  • 2200Client Trust Liabilityliability
  • Legal Fee Revenueone blended line, no unbilled work
  • 1210Unbilled Work in Progressasset
  • 4000Legal Fee Revenue - Litigationincome
  • 4010Legal Fee Revenue - Family Lawincome
  • 2210Unearned Retainer Revenueliability
  • 1200Client Cost Advancesasset
  • 6300Malpractice Insurancestays its own visible expense line
−2 removed+7 added
Sources
Section 07

Get started

The law firm chart of accounts template includes every account on this page, pre-numbered and ready to import into QuickBooks. It takes about 60 seconds to optimize and gives a firm the trust reconciliation and the work-in-process tracking an examiner or a managing partner expects to see, instead of a spreadsheet rebuilt from memory the week before an audit.

If you already have a chart, the optimizer reads it and shows the diff above against your own accounts, so you can see which trust and work-in-process accounts are missing before you change anything. Post the retainer entry the day it clears, recognize work in process every month-end, and transfer trust cash fee by fee as it's earned, and the next trust review reads from the trial balance instead of a promise to look into it.

Start the free trial →

Questions

Frequently asked questions.

Why can't a law firm just use one bank account for client retainers and operating funds?

Commingling trust funds with operating cash is a bar-association compliance violation in every state, not a bookkeeping shortcut. The IOLTA Trust Account has to hold only client money, and the Client Trust Liability account has to match its balance exactly, so an examiner can confirm in minutes that no client's funds ever covered the firm's own bills.

Is unbilled time really an asset before it's invoiced?

Yes. Under accrual accounting, revenue is recognized as the work is performed, not when the invoice goes out. Unbilled Work in Progress carries that earned value until it converts to a receivable at billing, so the firm's financials show what its attorneys actually earned each month, not just what someone remembered to invoice.

What is a realization rate, and why does it need its own accounts?

A realization rate is the share of hours worked that a firm actually bills, and it can only be measured if hours worked and hours billed live in separate accounts — Unbilled Work in Progress for one, revenue and receivables for the other. Blended into one balance, a falling realization rate looks identical to a slow month.

Apply this to a real chart

The principles are easy. Applying them is the work.

This guide is the theory. The free trial helps you review a real QuickBooks Online chart with a score, structural diff, and prioritized cleanup plan.

  • +Score the chart across the health dimensions
  • +Compare structure against a reference pattern
  • +Prioritize cleanup work before changing books
  • +Review recommendations before anything is applied