Every one of the three below was invisible on the face of the financial statements. The balance sheet balanced. The reports tied. The board had no reason to ask a question, and nobody was doing anything careless.
Each one surfaced only when somebody tied the restricted funds back to the documents behind them. That is the uncomfortable part, and it is the reason this post is worth your twenty minutes.
First, who makes these errors
Competent people do.
Every pattern below was made by a bookkeeper who understood double entry, kept the bank reconciled, closed the month on time, and produced reports the board found useful. None of them involved sloppiness and none of them involved anything close to bad faith.
What they involved was nonprofit accounting, which is a specialty. A bookkeeper trained on small business books has no particular reason to know how a transfer to a community foundation is treated, or why a contribution cannot be credited straight to a net asset account, or what goes wrong when a chart of accounts and a Class structure both try to carry functional expense. You pick these up by being taught them, and most people in these seats never were.
So read what follows as a description of three traps. The figures below are invented round numbers. The mechanics are real.
One terminology note. Current GAAP uses two net asset classes, net assets with donor restrictions and net assets without donor restrictions. You will still hear the older three-class language of unrestricted, temporarily restricted and permanently restricted, and plenty of internal tracking is still built on it. That is fine for internal purposes. The financial statements use the two-class presentation.
The endowment transfer that made $500,000 disappear
What it looks like in the books. The organization moves $500,000 to a community foundation, which will hold and invest it and send back an annual distribution. The bookkeeper records:
Debit net assets with donor restrictions, $500,000
Credit cash, $500,000
Cash goes down. Net assets go down. The entry balances, the bank reconciles, and the fund agreement goes in a drawer.
Why it is wrong. The money is not gone. The organization transferred its own assets to a recipient organization and named itself as the beneficiary. Under the guidance at ASC 958-20, originally FASB Statement 136, that is a reciprocal transfer, not a contribution. The organization gives up custody and gains a beneficial interest in the assets the foundation now holds. A beneficial interest is an asset.
The entry should have been:
Debit beneficial interest in assets held by community foundation, $500,000
Credit cash, $500,000
No net asset reduction at all. The composition of assets changed. Their total did not.
If the transferred funds came from net assets without donor restrictions, there is a second step: the funds are reclassified to net assets with donor restrictions, because the fund agreement limits access to the principal. That reclassification happens between net asset classes. It does not reduce net assets either.
On variance power. Nearly every community foundation agreement grants the foundation variance power, meaning it can redirect the funds under defined circumstances. People sometimes read that clause and conclude the organization no longer has an asset. The guidance that nonprofits and community foundations both apply treats the naming of yourself as beneficiary as the fact that drives recognition, and treats variance power as a disclosure matter: you disclose that it was granted and on what terms. Community foundations themselves carry these agency funds as a liability for exactly this reason. If your agreement has unusual terms, that is a conversation with your auditor, but the default treatment is an asset.
What the auditor does when they find it. They pull the fund agreement, see that the organization is the named beneficiary, and ask why there is no asset on the balance sheet. Then they ask how long it has been that way, and the answer is usually several years, because nobody transfers to an endowment once.
That makes it a prior period error. Correcting it means restating the earliest period presented and every year since, with the cumulative effect carried to opening net assets. On a comparative statement that is two restated columns, a note disclosing the correction and its effect, and a conversation with the board about why last year's audited numbers moved.
There is a second casualty. The net asset roll-forward stops tying, because releases and reclassifications were computed against a balance that was understated the whole time. Every year after the first one compounds the problem.
How to fix it. Reconstruct from the fund statements, which the foundation can produce for every year. Establish the beneficial interest asset at fair value as of the earliest period being restated. Work forward year by year: contributions in, investment return, distributions out, administrative fees charged by the foundation. Then rebuild the net asset roll-forward on the corrected balances.
Going forward, the fund statement is a document you book from every year, the same way you book from a bank statement. The asset moves with the market, and investment return and fees belong on the statement of activities.
The gift that never touched the income statement
What it looks like in the books. A $200,000 restricted gift arrives. The bookkeeper knows it is restricted, so it goes where the restricted money lives:
Debit cash, $200,000
Credit net assets with donor restrictions, $200,000
The logic is easy to follow and it is almost right. The money is restricted, the restricted net asset account is where restricted things belong, and the entry balances. Cash is correct. The balance sheet is correct. Total net assets are correct.
Why it is wrong. A contribution is revenue. It belongs on the statement of activities, in contributions with donor restrictions, and it reaches net assets the way all revenue reaches net assets: by flowing through the change in net assets at the end of the period.
The correct entry is:
Debit cash, $200,000
Credit contributions with donor restrictions, a revenue account, $200,000
The difference never shows up on the balance sheet. It shows up on the statement of activities, where $200,000 of revenue is simply missing.
Why this one is dangerous beyond the financial statements. The first two consequences are bad enough. Your statement of activities understates revenue, so every ratio built on it is wrong, and anyone comparing your reported revenue to your reported program spending sees a nonprofit that spent more than it raised.
The third consequence is the serious one.
Contribution revenue drives the public support test. A 509(a)(1) or 509(a)(2) organization has to demonstrate a sufficient proportion of public support, computed over a five-year period, to keep its public charity classification. The test runs off contributions reported on the Form 990, and the 990 is prepared from the accounting records. A gift that never hit revenue never hit the 990.
The error travels out of the accounting records, into a federal information return, and from there into a calculation that determines tax status. Repeated across several years and several gifts, an organization can report a support percentage materially below its real one. The remedy for failing the test is to be reclassified as a private foundation, which brings excise taxes, distribution requirements, and a set of restrictions most public charities are not built to operate under.
To be clear about the scale: one misposted gift will not put a charity's status at risk. What matters is that this error class reaches that far at all, which is why auditors treat it more seriously than its balance sheet effect would suggest.
What the auditor does when they find it. Contribution revenue testing is standard, and the procedure is to select gifts and trace them from the donor document into the accounting records. A gift that lands in equity rather than revenue fails that trace immediately.
From there they scope the problem. One gift is an adjustment. A pattern is a material weakness in internal control over financial reporting, because it means nothing in the close process catches a contribution that bypassed revenue. The follow-on question is whether Forms 990 for the affected years need to be amended.
How to fix it. Identify every gift posted this way, by period. Reclassify each from the net asset account to the correct revenue line, preserving the restriction. Then rebuild the release of restrictions for those periods, because releases were computed against balances built partly from entries that should never have been there. Recompute the public support test on corrected figures, and talk to your 990 preparer about whether amendment is warranted.
The prevention is a rule that admits no exceptions: no revenue transaction is ever posted directly to a net asset account. Restriction gets tracked on the revenue line and in the net asset class. It is never a reason to skip the income statement.
Two functional expense structures, both half finished
What it looks like in the books. The chart of accounts encodes function in the account numbering. Expense accounts run 6000 for program, 7000 for management and general, 8000 for fundraising. At some point somebody set up QuickBooks Classes to do the same job: Program, Admin, Fundraising.
Both are still in use. Neither is complete. Roughly two thirds of transactions carry a Class. The rest rely on the account number. A meaningful number carry both, and sometimes the two disagree: an expense in a 6000-level program account tagged to the Admin class.
The tell is simple and worth trying on your own books today. Run the statement of functional expenses by account grouping. Run it again by Class. The two reports do not agree, and neither is obviously wrong.
Why it is wrong. Both structures are legitimate on their own. The problem is that the organization has two, so there is no single answer to what it spent on program, and the statement of functional expenses is a required statement that has to come from somewhere.
In practice the number that gets reported is whichever report the preparer happened to run. Which means the program expense ratio in the audited financials, on the Form 990, and in the grant application may be three different numbers, all defensible, none reconciling.
What the auditor does when they find it. They recalculate the functional allocation independently and get a third number. Then they ask which structure is authoritative, and there is no good answer, because the honest one is that it depends on the report.
This usually lands as a deficiency in internal control over financial reporting rather than a misstatement, assuming total expenses are right, which they typically are. What is wrong is the allocation. But it is also the kind of finding that makes an auditor expand testing elsewhere, because an organization that cannot say how it allocates functional expense invites questions about how it allocates anything, including costs charged to federal awards. On a Single Audit that is not a small question.
How to fix it, and which one to keep. Keep the dimension and retire the account numbering. In QuickBooks Online that means Classes survive.
Three reasons:
Function and natural expense are different attributes of the same transaction. A statement of functional expenses is a matrix: natural categories down the side, functions across the top. Encoding function in the account number collapses two dimensions into one, which means you need parallel accounts for every expense type in every function. Salaries appears three times. So does rent, insurance, and software.
Allocation needs splitting, and dimensions split. An executive director's time genuinely spans all three functions. With a dimension, one payroll entry splits across Classes in the right proportions. With account-encoded function, you need three separate postings to three separate salary accounts, and somebody has to remember to do it every pay period.
It keeps the chart of accounts readable. Collapsing from three functional variants of each account to one cuts the chart by roughly two thirds, which makes everything else easier, coding included.
The migration is mechanical:
Confirm the Class list matches the three functions exactly, with no extras. If Classes are also being used for programs or locations, that is a separate job and it needs its own dimension. In QuickBooks Online, Locations or Projects.
Map each function-specific account to its consolidated equivalent. The three salary accounts become one, and so on.
Work backward through the current fiscal year and apply a Class to every transaction that lacks one. Where account and Class disagree, decide which is right from the underlying document, not from the account number.
Merge the redundant accounts once every transaction in them carries a Class. Merging preserves history and keeps prior periods intact, which deleting does not.
Make Class a required field going forward, and reconcile the two reports once more before closing the year.
Do this mid-year rather than at year end, and run the full year on one structure. Switching in month eleven means a statement of functional expenses assembled from two methods, which is the problem you started with.
What the three have in common
None of them made the balance sheet fail to balance.
The endowment transfer balanced. The misposted gift balanced, and left cash and total net assets exactly right. The duplicate functional structures produced total expenses that were correct to the dollar. Every one of these organizations could close the month, reconcile the bank, and hand the board a report that looked fine, because it was fine, as far as it went.
That is the pattern. Restricted fund errors do not announce themselves through the controls most organizations run. A trial balance that balances only confirms that debits equal credits. It cannot detect a mischaracterized transfer to a community foundation, a contribution that skipped the revenue line, or two allocation structures quietly disagreeing with each other.
All three surfaced the same way: somebody took the restricted funds and traced them back to the documents underneath. The fund agreement. The donor letter. The grant award. Then asked whether what the books say matches what the document says.
A monthly close does not do that. It is a separate exercise, and most organizations only get to it when an auditor does it for them, which is the most expensive possible time to find out.
That exercise is the Grant Readiness Review. It is a fixed-fee, two-week assessment starting at $1,500 that tells you what an auditor or a funder would find in your books before they find it. If you want more on how we handle restricted funds and grant tracking generally, that is on the grant compliance page.
Sources
FASB ASC 958-20, Transfers of Assets to a Not-for-Profit Entity or Charitable Trust That Raises or Holds Contributions for Others, originally FASB Statement No. 136. The Codification itself sits behind FASB's login, so the two practitioner guides below are what is linked here.
Council on Foundations, Accounting for Agency Endowment Funds Held at Community Foundations
Central Florida Foundation, Accounting for Nonprofit Endowments FAQ
FASB ASC 958-205, Presentation of Financial Statements, for the two net asset classes introduced by ASU 2016-14, and ASC 958-720 for the statement of functional expenses.
Public support test: IRC 509(a) and the Schedule A instructions to Form 990.
All figures in this post are invented round numbers chosen to illustrate the mechanics. They do not correspond to any organization's actual balances, and no identifying details of any client appear here.