← All resources

Nonprofit Chart of Accounts and Classes Setup [Sample COA Included]

If your reports feel confusing, the problem is usually not you. It's the setup underneath.

Most messy nonprofit books come down to two things: a chart of accounts that tries to do too much, and classes that were never set up (or were set up for everything). Get these two right and your reports start making sense: to you, your board, your funders and whoever prepares your 990.

Two tools, two jobs

QuickBooks gives you two ways to label every dollar. They do different jobs, and they work best when you keep them apart.

Your chart of accounts answers "what is it?" Rent. Salaries. Supplies. Grant income. These are natural categories, the plain nature of the income or expense.

Your classes answer "what was it for?" Did that cost support your programs, run the organization, or raise money? That's the function.

Every transaction gets both. A $500 supplies purchase might be Supplies (account) for Programs (class). Same receipt, two clear answers.

Keep your chart of accounts lean

The most common thing I see is a chart of accounts with hundreds of lines: "Supplies – Spring Program," "Supplies – Summer Program," "Supplies – Office"...

You don't need that. When the program lives in the account name, you end up with a long list that's hard to use and even harder to report on.

A good nonprofit chart of accounts is:

  • Short. Enough detail to be useful, not so much that people guess.
  • Natural. Each account describes what the money is, not who or what it was for.
  • Numbered. Numbers keep things in a logical order and make the list easy to scan.

Here's the basic numbering structure:

RangeSectionExamples
1000sAssetsOperating checking, savings, grants receivable
2000sLiabilitiesAccounts payable, credit cards, payroll liabilities
3000sNet assetsWithout donor restrictions, with donor restrictions
4000sRevenueIndividual contributions, grants, program fees, in-kind
5000sPersonnelSalaries, payroll taxes, benefits
6000sOperatingRent, supplies, insurance, professional fees
7000sOther expensesBank fees, merchant processing fees

The full sample (with account numbers and names, ready to use) is in the download below.

Set up three classes

For most small nonprofits and schools, three classes cover it:

Sample class list

  • Programs. The work of your mission: classes, services, events for the people you serve.
  • Admin (management & general). Running the organization: accounting, insurance, office, board.
  • Fundraising & Marketing. Raising money and telling your story: appeals, donor events, campaigns.

These three line up with how the full Form 990 asks you to show your expenses: program services, management and general, and fundraising. Set them up now and that part of your tax return is mostly done all year long.

When to add more (and when not to)

If you run more than one distinct program, you can add a sub-class for each one under Programs. For example:

  • Programs
    • Tutoring
    • Summer Camp
    • Women's Learning Series

Here's the key: a program that repeats shares one class. Don't create "Summer Camp 2025" and "Summer Camp 2026," or a new class for every session or semester. Use the date range on your reports to compare years. A class for every session turns a three-line report into thirty lines, and nobody reads those.

A few habits that keep it clean

  • Add accounts slowly. Before creating a new one, ask: is this a new kind of money, or just a new program? If it's a program, it's a class.
  • Tag every transaction with a class. Including income. Untagged items quietly pile up and blur your picture.
  • Split shared costs. If one person's salary covers both program and admin work, split it on the transaction so each class gets its share.
  • Review once a month. A quick look at your profit and loss by class catches mistakes while they're still small.

Get the sample chart of accounts

Get the sample chart of accounts

A ready-to-use nonprofit chart of accounts with numbered accounts, plus the sample class list, so you can set up QuickBooks the right way from day one.

Setting up from scratch or cleaning up an older file? I'm happy to take a look.