Guides  /  Controller-grade books

Chart of accounts design for QuickBooks: build it for the reports you need

Short version: A chart of accounts is a reporting design, not a filing system. Start from the reports you need to run the business, then build the fewest accounts that produce them. Number the accounts, keep the list flat, put product and job detail in items and classes rather than accounts, and structure cost of goods sold so gross margin means something. A sample construction chart is below.

Most charts of accounts were never designed. They accumulated. Somebody added an account for a one-off expense in 2019, the bookkeeper added "Misc" the year after, and now the P&L runs four pages and tells you nothing. I've rebuilt a lot of these, in both QuickBooks Desktop and Online, and the fix is always the same: decide what you need to see, then build backward from that.

Start from the reports, not the transactions

Before you touch the list, write down the five or six questions the owner asks every month. Usually they're some version of: what's our gross margin, is it holding by product line or job type, what does payroll really cost, which overhead is creeping, and how much cash did we throw off. Every account on the chart should help answer one of those. If it doesn't, it's clutter.

That one habit, reports first, changes everything downstream. You stop creating an account per vendor. You stop splitting "Office supplies" into four sub-accounts nobody looks at. You stop treating the chart of accounts as a place to store detail that belongs somewhere else.

Number the accounts

Turn on account numbers (Desktop: Preferences > Accounting; Online: Settings > Advanced > Chart of accounts). Numbers force a structure, they sort predictably in every report, and they make imports and mapping far less error-prone. The standard ranges work fine:

Standard numbering ranges
RangeTypeNotes
1000–1999AssetsCash first, then receivables, inventory, prepaids, fixed assets, accumulated depreciation.
2000–2999LiabilitiesPayables, credit cards, payroll liabilities, sales tax, then loans by term.
3000–3999EquityKeep it short. Opening Balance Equity should be zero and stay zero.
4000–4999RevenueOne account per revenue stream you'd price or staff differently. Rarely more than six.
5000–5999Cost of goods soldDirect costs only: materials, direct labor and burden, subcontractors, direct equipment, freight-in.
6000–6999Operating expensesOverhead, grouped by function: facilities, people, sales and marketing, admin, insurance, technology.
7000–7999Other income and expenseInterest, gains and losses, one-time items. Keeps operating income clean.

Leave gaps. Number in tens or hundreds so you can insert later without renumbering. And give every sub-account the parent's prefix, so 6100 Facilities has 6110 Rent, 6120 Utilities, 6130 Repairs underneath it.

Keep the list flat

Two levels is the working maximum: a parent for the report line, sub-accounts for the detail. Three levels looks organized and is unreadable on an actual P&L. A small business with a clean chart usually lands between 60 and 120 accounts total. If you're over 200, something is being tracked in accounts that should live in a list.

The two questions I ask about every proposed account:

  • Would it change a decision? If the balance in this account doubled, would anyone do anything differently? If not, fold it into its parent.
  • Is this an account or a dimension? "Rent" is an account. "Rent for the Henderson shop" is rent plus a location. Locations, departments, product lines, and jobs are dimensions, and QuickBooks has tools for those.

Put the detail in items and classes, not accounts

This is where most charts go wrong. People want to see sales by product line, so they create a revenue account per product. Then they want cost by product line, so they create a COGS account per product. Then they add a location, and the chart doubles.

Use the dimensions instead:

  • Items carry what you sold and what it cost. One revenue account, one COGS account, and a hundred items mapped to them will give you sales and margin by item, by item type, and by customer without touching the chart. On job-based work, items are the whole engine; see job costing in QuickBooks.
  • Classes (Desktop and QBO Plus or Advanced) carry the department, division, or location. One rent account, classed by location, gives you rent by location on a P&L by Class. Same for payroll, same for everything.
  • Customer:Job carries the project. Never create an account per job.

The rule of thumb: the chart of accounts answers "what kind of cost is it." Classes answer "which part of the business." Items answer "which product or service." Jobs answer "which project." Keep them in their lanes and every report gets simpler.

Structure COGS so margin means something

Gross margin is the number that tells you whether the business works. It only means something if cost of goods sold contains exactly the costs that scale with revenue, and nothing else. For a product or project business, that's usually:

  • Materials and parts
  • Direct labor, the wages of people producing the work
  • Labor burden on that direct labor: payroll taxes, workers' comp, benefits
  • Subcontractors
  • Direct equipment and small tools used on the work
  • Freight-in and job-specific permits or fees

Everything else, including the owner's salary, the office staff, the shop rent, and the truck insurance, is overhead. If you need a fully loaded job cost, build an overhead rate and apply it in the job reports, not by stuffing overhead into COGS. The moment overhead leaks into COGS, gross margin stops telling you anything about pricing.

The one exception worth making: put payroll for production labor in COGS and payroll for everyone else in operating expenses, even though it's one payroll run. That split is the single most useful thing a service or trades P&L can show, and it only happens if the chart and the payroll mapping are designed for it.

A sample construction chart of accounts

Construction and trades get asked about most, so here's a condensed working chart. It's built for a contractor running job costing with items and using classes for divisions (say, residential and commercial). Scale it down for a smaller shop.

Condensed construction chart (P&L section)
NumberAccountPurpose
4000Contract revenueAll job revenue. Division comes from class; job type from items.
4100Change order revenueTracked separately so you can see how much margin comes from changes.
4200Service and T&M revenueNon-contract work billed by time and materials.
5000MaterialsJob materials, by item.
5100Direct laborField wages, mapped from payroll items.
5150Direct labor burdenField payroll taxes, workers' comp, benefits.
5200Subcontractors1099 subs on jobs.
5300Equipment, jobRentals and allocated equipment cost on jobs.
5400Other direct costsPermits, dump fees, job-specific insurance, freight.
6000–6099Indirect job costsShop supplies, small tools, vehicle costs. Overhead, but allocable.
6100–6199FacilitiesRent, utilities, repairs, property insurance.
6200–6299Office payroll and benefitsOwner, estimating, admin, their burden.
6300–6399Sales and marketingAdvertising, website, bids, entertainment.
6400–6499InsuranceGeneral liability, umbrella, auto, bond premiums.
6500–6599AdministrativeAccounting and legal, software, bank fees, licenses, office.
7000–7099Other income and expenseInterest, gains and losses on equipment sales.

On the balance sheet, a contractor needs two accounts most charts miss: Costs in excess of billings (an asset, underbillings) and Billings in excess of costs (a liability, overbillings). Those are what a percentage-of-completion WIP schedule posts to, and without them a contractor's monthly P&L swings with billing timing instead of actual progress.

Cleaning up a chart that already exists

You rarely get to start from blank. The practical sequence for an existing file:

  1. Map first, change second. Export the current chart to a spreadsheet and map every account to its destination on the new structure. Half the accounts will merge into something else.
  2. Merge, don't delete. In both Desktop and Online, renaming an account to exactly match another account of the same type merges their history. The old transactions move. Deleting (or making inactive) leaves balances stranded.
  3. Reclassify the stragglers. Use the reclassify tool (Accountant Edition in Desktop, Accountant Tools in QBO) to move batches of transactions to the right account without re-entering them.
  4. Make the rest inactive. Anything with no balance and no future use. Inactive accounts keep their history and stop cluttering drop-downs.
  5. Fix the mappings. Items, payroll items, bank rules, and any integration that posts to QuickBooks all point at accounts. Update every one, or the mess rebuilds itself within a month.
  6. Lock it with a closing date and run the new P&L for a prior period to confirm the restructured history reads correctly.

If you're about to convert from Desktop to Online, do this cleanup before the conversion. The converter carries the chart across as-is, and merging accounts is easier in the file you know. The pre-migration cleanup list walks the full sequence.

The design test: hand the P&L to the owner with no explanation. If they can read it in two minutes and ask a good question, the chart is right. If they ask what half the lines mean, it isn't.

Converting to Online? Fix the chart first.

The Pre-Migration Prep Kit walks the whole cleanup, chart of accounts included, so the file you convert is the file you want. If you'd rather hand the redesign to someone who's done it a few dozen times, that's a fractional controller engagement.

Common questions

How many accounts should a small business chart of accounts have?

Most small businesses land between 60 and 120 accounts with a clean design. Over 200 usually means detail that belongs in items, classes, or customer jobs is being tracked as accounts instead.

Should I use account numbers in QuickBooks?

Yes. Account numbers force a structure, sort predictably in every report, and make imports and account mapping far less error-prone. Use the standard ranges (1000s assets through 7000s other income and expense) and leave gaps so you can insert later.

What goes in cost of goods sold vs. operating expenses?

COGS holds only the costs that scale directly with revenue: materials, direct labor and its burden, subcontractors, direct equipment, and freight-in. Everything else, including owner salary, office staff, rent, and general insurance, is operating expense. Mixing overhead into COGS makes gross margin meaningless.

Should I create a separate account for each product line or location?

No. Use items for product and service detail, classes for departments or locations, and customer jobs for projects. One revenue account and one COGS account with well-mapped items and classes produce better reports than dozens of accounts.

How do I merge two accounts in QuickBooks?

Rename one account to exactly match the other account of the same type; QuickBooks asks whether to merge and moves all history to the surviving account. This works in both Desktop and Online. Deleting or deactivating an account instead leaves balances stranded.

General guidance on chart of accounts design, not accounting, tax, or legal advice. Account structures should fit your entity, industry, and reporting needs; confirm tax-sensitive classifications with your preparer.

Free download

Get the next guide when it publishes

Practitioner guides on controller-grade books, the close, and cleaner reporting. One email per guide. Unsubscribe in a click.