A chart of accounts (COA) is the master list of every category your nonprofit uses to record money — every asset, liability, net asset balance, source of revenue, and type of expense. It is the spine of your bookkeeping: get it right and your financial statements, board reports, grant reports, and IRS Form 990 all fall out of the same clean data. Get it wrong and you will fight your books every month.
A nonprofit COA has five sections, each with its own number range: assets (1000s), liabilities (2000s), net assets (3000s), revenue (4000s), and expenses (5000s–6000s). What makes it nonprofit rather than for-profit is two things: net assets are split by donor restriction (FASB), and expenses must be reportable by function — program, management and general, and fundraising — to satisfy Form 990. The single biggest design decision is to keep the account list lean and push program/grant detail into classes or funds (a separate dimension) rather than cloning expense accounts for every program.
The one rule that saves you
Don't create a separate expense account for every program. Create one set of expense accounts (salaries, rent, supplies) and tag each transaction with a class or fund for the program or grant it belongs to. One COA, many programs — that's what keeps your books readable for years.
Why your chart of accounts is worth getting right
Every report you will ever produce is just a re-slicing of the transactions in your books — and the slices are defined by your chart of accounts. A well-built COA means your monthly financials, your budget-to-actuals, your grant reports, and your Form 990 all pull from the same accounts with no manual re-keying. A messy COA means year-end becomes an archaeology project.
Three forces should shape the design from day one:
- The IRS Form 990 asks for revenue by source (Part VIII) and expenses by function (Part IX). If your accounts already map to those lines, the 990 nearly writes itself.
- FASB / GAAP (ASC 958) requires net assets to be reported by donor restriction and expenses to be shown by both nature and function.
- Your own decisions. The board and ED need to see how each program and grant is performing — which means the COA has to support program-level and grant-level reporting cleanly.
A common mistake is to design the COA only for the tax return, or only for internal use, and then bolt on the other later. Design for all three at once. As of 2026, the structure below satisfies all three for the vast majority of small and mid-size nonprofits — verify the specific 990 line mapping with your accountant for your situation.
Lean beats elaborate
A small nonprofit rarely needs more than 60–120 accounts. If your COA has hundreds of accounts, you almost certainly have program or grant detail buried in the account list that belongs in a class or fund dimension instead. More accounts means more places to miscode and reconcile.
The five sections and how numbering works
A chart of accounts is organized into five top-level types, and the standard nonprofit convention assigns each a block of numbers. The first digit tells you the type at a glance, and the digits after it let you nest subcategories. As of 2026 the widely used ranges are:
| Range | Account type | Appears on |
|---|---|---|
| 1000–1999 | Assets (cash, receivables, prepaids, fixed assets) | Statement of Financial Position |
| 2000–2999 | Liabilities (payables, accrued, loans, deferred revenue) | Statement of Financial Position |
| 3000–3999 | Net assets (with / without donor restrictions) | Statement of Financial Position |
| 4000–4999 | Revenue & support (contributions, grants, program fees) | Statement of Activities |
| 5000–6999 | Expenses (salaries, occupancy, supplies, services) | Statement of Activities |
Ranges as of 2026 — these are conventions, not law; some software or templates shift the blocks (e.g. expenses starting at 6000). Verify against the template you adopt and keep it consistent.
Within each block you leave gaps so you can insert accounts later without renumbering. The first one or two digits group related accounts: for example, in the assets block you might reserve 1000–1099 for cash accounts, 1100–1199 for receivables, and 1500–1599 for fixed assets. A four-digit scheme is plenty for most organizations; some use five digits to leave room for sub-accounts.
- Assets and liabilities are your balance-sheet accounts — what you own and owe at a point in time.
- Net assets are the nonprofit version of "equity": assets minus liabilities, split by restriction (next section).
- Revenue and expenses are your activity accounts — they reset each fiscal year and feed the change in net assets.
Resist the urge to encode everything into the account number. The account number should answer "what kind of money is this?" The program, grant, or location it relates to is a separate question best answered by a class or fund tag (covered below).
Net assets and donor restrictions (the nonprofit difference)
The biggest structural difference from a for-profit COA lives in the 3000s. Under FASB ASU 2016-14 (ASC 958), effective for fiscal years beginning after December 15, 2017, nonprofits report net assets in just two classes (as of 2026 — verify the current standard with your accountant):
- Net assets without donor restrictions — money you can spend at the board's discretion, including board-designated reserves. (Formerly called "unrestricted.")
- Net assets with donor restrictions — money a donor restricted by purpose or time, including permanent endowments. (This collapses the old "temporarily restricted" and "permanently restricted" into one external class.)
On your external statements you present only those two classes. But internally you almost always want more detail — which grant, which purpose, when the restriction releases. The clean way to handle this is not to create dozens of net-asset accounts, but to track restricted balances by fund or class and roll them up to the two required classes for reporting. This is the heart of fund accounting.
Why this matters for funders
Restricted grant money can only be spent on what the grant specified — it can't fill a gap or build a reserve. That's why operating reserves have to come from net assets without donor restrictions. Your COA has to make that distinction visible, or you risk over-spending restricted funds and under-funding the flexible money that keeps the lights on.
The same idea applies to revenue: separate contributions with donor restrictions from contributions without restrictions in the 4000s so the release of restrictions each year is easy to calculate.
The UCOA standard and mapping to Form 990
You don't have to invent a numbering scheme from scratch. The Unified Chart of Accounts (UCOA) is a free, standardized nonprofit COA developed by the National Center for Charitable Statistics (NCCS, at the Urban Institute) together with the California Association of Nonprofits and several CPA groups. Its key feature: every account code is cross-referenced to IRS Form 990 line items, so a COA built on UCOA translates almost directly onto the return.
A few realities to keep in mind, as of 2026 — verify before adopting wholesale:
- The UCOA is an older, comprehensive reference (it predates the 2016 FASB net-asset change, so you'll modernize the net-asset section to the two-class model). Treat it as a starting framework, not gospel.
- It is exhaustive — far more accounts than a small org needs. Adopt the structure and the 990 mapping, then delete what you won't use.
- Most accounting software ships a nonprofit COA template that already reflects current FASB rules; the UCOA is useful mainly for its explicit 990 cross-references.
The mapping you most want to preserve is the functional expense structure that Form 990 Part IX requires. Every expense must ultimately land in one of three functions:
- Program services — the cost of delivering your mission.
- Management and general — administration, governance, finance.
- Fundraising — the cost of raising contributions.
Crucially, you do not create three copies of every expense account ("Salaries – Program," "Salaries – Admin," "Salaries – Fundraising"). You keep one "Salaries" account and split it across functions using classes or an allocation method. Form 990 Part VIII similarly wants revenue by source, which your 4000-series accounts should already provide. For the full picture of how these accounts feed each statement, see fund accounting & financial statements.
Classes, funds, and dimensions: tracking programs and grants
Here is the concept that keeps a chart of accounts sane. Think of every transaction as having two questions to answer:
- What kind of money is it? → answered by the account (e.g. 5010 Salaries).
- What is it for? → answered by a separate dimension — a class, fund, program, grant, or location tag.
Keeping these two questions on different axes is what lets you run both a clean Statement of Activities (by account) and a per-program or per-grant report (by class) from the exact same data. Different software calls the second axis different names:
| Software | What the second dimension is called |
|---|---|
| QuickBooks Online | Classes (and Locations) |
| Aplos | Funds and Tags |
| Sage Intacct | Dimensions |
| Xero | Tracking categories |
Feature names and capabilities as of 2026 — verify on the vendor's current plan, since available dimensions vary by tier.
A practical setup for a small nonprofit:
- Use funds/classes for your major programs (e.g. "Youth Mentoring," "Food Pantry") plus one for Management & General and one for Fundraising. This drives both your functional-expense report and your program P&Ls.
- Use a second tag or sub-class for individual restricted grants when you need grant-by-grant reporting — for example reporting actuals back to a funder per the grant budget.
- Keep the account list itself program-agnostic. "Salaries," not "Youth Program Salaries."
This single discipline is the difference between a COA that scales gracefully as you add programs and grants, and one that balloons into hundreds of near-duplicate accounts nobody can reconcile.
A sample chart of accounts excerpt
Below is a worked excerpt for a fictional small nonprofit, Riverside Community Center, showing how the five sections, numbering, net-asset split, and functional expenses fit together. This is illustrative, not a template to copy line-for-line — your accountant should tailor it and confirm the Form 990 mapping (as of 2026 — verify).
| Account # | Account name | Type |
|---|---|---|
| 1010 | Cash – Operating checking | Asset |
| 1020 | Cash – Reserve savings | Asset |
| 1100 | Grants & pledges receivable | Asset |
| 1500 | Equipment (net of depreciation) | Asset |
| 2010 | Accounts payable | Liability |
| 2100 | Accrued payroll | Liability |
| 2400 | Deferred revenue | Liability |
| 3010 | Net assets without donor restrictions | Net assets |
| 3020 | Net assets without donor restrictions – board-designated reserve | Net assets |
| 3100 | Net assets with donor restrictions | Net assets |
| 4010 | Contributions – without donor restrictions | Revenue |
| 4020 | Contributions – with donor restrictions | Revenue |
| 4100 | Foundation & government grants | Revenue |
| 4300 | Program service fees | Revenue |
| 4500 | Special events revenue | Revenue |
| 5010 | Salaries & wages | Expense |
| 5020 | Payroll taxes & benefits | Expense |
| 5200 | Occupancy (rent, utilities) | Expense |
| 5300 | Program supplies | Expense |
| 5400 | Professional fees (audit, legal, bookkeeping) | Expense |
| 5600 | Insurance | Expense |
| 5900 | Depreciation | Expense |
Notice what is not in the list: there is no "Youth Program Salaries" or "Grant XYZ Supplies." Those are handled by the class/fund dimension. Here's how the same "Salaries & wages" account (5010) splits by class for a single month:
| Class / fund | Function | Salaries (5010) |
|---|---|---|
| Youth Mentoring | Program | $6,200 |
| Food Pantry | Program | $4,800 |
| Management & General | Admin | $2,500 |
| Fundraising | Fundraising | $1,500 |
| Total | $15,000 |
One account, four classes — and from this the org can produce a Statement of Activities by nature (account), a Statement of Functional Expenses (by class/function for Form 990 Part IX), and a Youth Mentoring program report, all without a single duplicate account.
Chart of accounts setup checklist
- Five sections numbered in blocks (1000s assets through 5000s/6000s expenses), with gaps for future accounts
- Net assets split into with and without donor restrictions (FASB two-class model)
- Revenue separated by source and by restriction
- One lean set of expense accounts — no program or grant names in the account list
- Classes / funds / dimensions set up for programs, the three functions, and restricted grants
- Account structure mapped to Form 990 Parts VIII (revenue) and IX (functional expense)
- A short written guide so everyone codes transactions the same way
Building a new COA or cleaning up an old one
If you're starting fresh, begin with the nonprofit COA template built into your accounting software or the UCOA framework, then prune it down to the accounts you'll actually use. If you're cleaning up an inherited mess, the work is usually consolidation: merging near-duplicate accounts and moving program/grant detail out of the account list into classes.
- List what you need to report. Start from your outputs — board reports, grant reports, Form 990, the audit — and work backward to the accounts and classes that produce them.
- Map to Form 990. Tag each revenue account to a Part VIII source and confirm every expense can be assigned to a function (program / M&G / fundraising) for Part IX.
- Move program & grant detail to classes. Every time you're tempted to add an account with a program or grant name in it, add a class instead.
- Document it. Write a one-page "how to code transactions" guide. The COA only stays clean if everyone uses it the same way.
- Get a professional review for the setup. This is the one place where paying a bookkeeper or accountant to set it up correctly the first time pays for itself many times over — a clean COA makes your annual audit and 990 dramatically cheaper.
A few caveats. Renumbering an existing live COA mid-year can break historical comparisons and integrations — plan such changes for a fiscal-year boundary and keep a crosswalk from old to new codes. And remember that the account ranges and software features described here reflect common practice as of 2026; confirm current FASB standards and your specific Form 990 line mapping with a qualified accountant before you finalize. For the broader context this COA feeds into, see financial management basics, cash vs. accrual accounting, and your annual budget.
A 3010 account that actually grows.
Your chart of accounts will have a line for "contributions without donor restrictions" — the flexible money that builds reserves and covers what grants won't. The hard part is filling it. Good Circles is built to feed exactly that line: supporters pick your cause once, then a share of their everyday local spending funds you automatically — about $72 per active supporter per year (≈ $36,000/year from 500 supporters), recurring and unrestricted, free to join. It's an estimate, but it's the kind of durable, flexible revenue that lands cleanly in the 3000s.
Claim a Founding Nonprofit spot →Sources & tools
Free first
- Unified Chart of Accounts (UCOA) — The standardized nonprofit chart of accounts from NCCS (Urban Institute) and the California Association of Nonprofits, with codes cross-referenced to IRS Form 990 line items.
- Propel Nonprofits — accounting & finance tools — Plain-language guides and templates on nonprofit accounting structure, cost allocation, and defining programs and indirect costs.
- IRS Form 990 — The annual return your COA should map to — Part VIII (revenue by source) and Part IX (expenses by function) define the categories your accounts and classes need to produce.
Paid — optional labor-savers
- A nonprofit bookkeeper or accountant — A professional to design (or clean up) your chart of accounts, map it to Form 990, and set up your fund/class structure correctly. Worth it when Worth it for the initial setup or a cleanup — a clean COA built right the first time makes every future month, audit, and 990 cheaper and faster.
- Aplos (nonprofit accounting software) — Fund-accounting software built for nonprofits, with funds/tags to track programs and grants and a nonprofit COA template out of the box. Worth it when Worth it when spreadsheets or generic for-profit software no longer give you clean restricted-fund and functional-expense reporting.
Last verified 2026-06-16. Figures and rules change — verify at the source before you act.
FAQ
What account number ranges should a nonprofit chart of accounts use?
The common convention (as of 2026 — verify against your template) is 1000–1999 for assets, 2000–2999 for liabilities, 3000–3999 for net assets, 4000–4999 for revenue and support, and 5000–6999 for expenses. Leave gaps within each block so you can add accounts later without renumbering. These are conventions, not legal requirements, so consistency matters more than the exact boundaries.
How many net asset categories do nonprofits report?
Under FASB ASU 2016-14 (ASC 958), nonprofits report two external net-asset classes: net assets without donor restrictions and net assets with donor restrictions. This replaced the older three-class model. You can track more detail internally — by grant or purpose — using funds or classes, then roll those up to the two required classes for your external statements.
Should I create separate expense accounts for each program?
No. Keep one set of expense accounts (salaries, rent, supplies) and tag each transaction with a class, fund, or dimension for the program or grant it belongs to. This keeps the account list lean while still letting you produce per-program and per-grant reports, plus the functional-expense split (program, management and general, fundraising) that Form 990 Part IX requires.
What is the UCOA and do I have to use it?
The Unified Chart of Accounts (UCOA), developed by NCCS at the Urban Institute with the California Association of Nonprofits, is a free standardized nonprofit COA whose codes cross-reference IRS Form 990 line items. You don't have to use it, but its 990 mapping is valuable. As of 2026 it's an older reference that predates the 2016 FASB net-asset change, so treat it as a starting framework and modernize the net-asset section — verify with your accountant.