Skip to main content

How to Prepare Form 990 Data from Nonprofit Accounting Software

Last updated: April 5, 2026

TLDR

Form 990 data lives in your accounting records, but most accounting software doesn't produce it in 990-ready format. The bookkeeper's job at year-end is to translate accounting data into 990 schedule format. How much translation work that requires depends entirely on whether your accounting software maintains 990-relevant data structures throughout the year.

What accounting software does and doesn’t do for Form 990

Accounting software maintains the financial records. Form 990 reports them in a specific format required by the IRS. The two don’t align automatically.

The translation work between them is the 990 data preparation task. How much translation is required depends on whether your accounting software maintains the data structures that Form 990 needs.

When your chart of accounts maps to 990 lines, revenue accounts correspond to Part VIII lines, expense accounts correspond to Part IX rows, and fund accounts correspond to Schedule D. The translation is a report run.

When accounts don’t map natively, you build a mapping worksheet that assigns each account to a 990 schedule line. Build it once, reuse it each year, and update it when accounts change.

When your accounting software doesn’t track functional expense allocation, you build a year-end allocation schedule that distributes each expense category across the program, management, and fundraising columns. This is the most labor-intensive part of 990 preparation for most nonprofit bookkeepers.

The QuickBooks gap for nonprofit 990 preparation

QuickBooks Online is the most widely used accounting platform in the nonprofit sector. It has no native Statement of Functional Expenses report. Form 990 Part IX requires exactly that: every expense category in a matrix showing program services, management and general, and fundraising columns. Bookkeepers using QBO build this schedule manually from raw account data every year.

Industry benchmarks indicate that up to 45% of total Form 990 compliance time is spent on manual export, reformatting, and reclassification when accounting software doesn’t produce 990-aligned reports natively. Given that the IRS estimates 108 hours of total preparation time for a full Form 990, that translates to roughly 40-50 hours spent bridging the gap between what QuickBooks produces and what the IRS requires.

The workflow: run a profit and loss report by class (if you’ve set up classes for functional tracking), export to a spreadsheet, reclassify accounts that don’t map cleanly to Part IX rows, apply allocation percentages to shared costs, and reconcile the totals back to your financial statements. Organizations without QBO class tracking do more work still, allocating each expense category manually based on estimates or policy percentages.

Nonprofit-specific fund accounting software eliminates this step. When functional expense classification is built into the chart of accounts and tracked at transaction entry, the Part IX schedule is a standard report, not a year-end construction project.

The functional expense problem in detail

Part IX is the schedule where accounting software limitations most directly affect bookkeeper time.

The IRS requires a matrix. Each row is an expense category (salaries, employee benefits, professional fees, office expenses, etc.). Each column is a function: program services (Column B), management and general (Column C), fundraising (Column D). Column A is the total.

Ideally, your accounting system tracks this matrix as it happens. When you post a salary expense, you record what function it served. When you process rent, you allocate it according to your cost allocation policy.

If your accounting system doesn’t support this (and QuickBooks doesn’t natively), you reconstruct it at year-end. You take each expense account total and divide it across the three columns. For directly attributable expenses, this is straightforward. For shared costs, you apply your allocation percentages.

The risk in year-end reconstruction is inconsistency. If you apply one set of percentages this year and a different set next year without documentation, auditors may question the methodology. A consistent, documented cost allocation policy applied every period, not only at year-end, is the professional standard.

Making the handoff to your CPA efficient

The 990 is usually filed by a CPA or tax preparer. Your job as bookkeeper is to produce a package that minimizes the CPA’s time and reduces questions.

A clean handoff package includes:

  • Finalized financial statements (Statement of Activities, Statement of Financial Position)
  • Revenue detail mapped to Part VIII lines
  • Functional expense schedule with allocation documentation
  • Restricted fund summary with beginning balances, activity, and ending balances
  • Payroll compensation detail for Part VII
  • List of significant contractors (Part VII, Section B threshold)
  • Descriptions of program services for Part III
  • Any required supplemental disclosures

The more complete and mapped your package, the less billable time your CPA spends reconstructing data you already have. With CPA firms averaging $171-$177 per hour for nonprofit tax work, and 71% charging premiums for disorganized files, a clean bookkeeper package has a direct cost impact on the organization’s total compliance spend.

Like what you're reading?

Try RestrictedBooks free for 30 days — no credit card required.

See plans & pricing

DEFINITION

Functional expense allocation
The process of distributing expenses across the three functions required by Form 990 Part IX: program services, management and general, and fundraising. Most expenses are directly attributable to one function. Shared costs (rent, utilities, executive director time, insurance) must be allocated using a consistent, documented methodology.

DEFINITION

Program service revenue
Earned income from activities that constitute the organization's exempt purpose. Tuition charged by an educational nonprofit, membership fees for a trade association, ticket sales for an arts organization. Reported on Form 990 Part VIII and used in the public support test for public charities.

DEFINITION

Public support test
The calculation on Form 990 Schedule A that confirms an organization qualifies as a public charity (not a private foundation). Organizations typically qualify under the 33.3% support test (public contributions and government grants exceed one-third of total support) or the facts and circumstances test. Bookkeepers tracking government grant revenue separately from private contributions simplify this calculation.

DEFINITION

Schedule D
A supplemental schedule attached to Form 990 covering several financial disclosure areas: restricted endowment funds, land and buildings, trust accounts, and prior-year account receivable positions. For organizations with donor-restricted funds, Part XIII of Schedule D requires year-over-year endowment fund analysis.

DEFINITION

Statement of Functional Expenses
The financial statement required by Form 990 Part IX that reports every expense in a matrix format: rows are expense categories (salaries, benefits, occupancy, professional fees, etc.) and columns are functions (program services, management and general, fundraising). QuickBooks Online has no native Statement of Functional Expenses report, which means nonprofit bookkeepers using QBO must build this schedule manually at year-end.

Q&A

What accounting data does a bookkeeper need to prepare Form 990?

The core data requirements are: (1) Revenue by type and source for Part VIII, including contributions by donor category, program service revenue, and investment income; (2) Expenses by both nature and function for Part IX, with each expense category allocated across program services, management, and fundraising; (3) Beginning and ending net asset balances for the Statement of Financial Position reconciliation; (4) Restricted fund balances by restriction category for Schedule D; (5) Compensation detail for officers and key employees for Part VII. Organizations with 990-mapped charts of accounts and functional expense tracking produce most of this data from standard accounting reports.

Q&A

How does functional expense allocation work for shared costs like rent and the executive director's salary?

Shared costs must be allocated using a documented methodology that reflects how the resources were actually used. Common approaches: time tracking (executive director allocates time by function each period), square footage (office space by program vs. administrative use), direct cost percentage (apply the ratio of direct program costs to total direct costs). The methodology must be applied consistently and documented in an approved cost allocation policy. The allocation percentages appear in the Part IX column totals and must be defensible to auditors and the IRS.

Frequently asked

Common questions before you try it

Who is responsible for Form 990 data: the bookkeeper or the CPA?
The bookkeeper is responsible for maintaining accurate accounting records and extracting the underlying financial data. The CPA (or tax preparer) is responsible for completing the Form 990 correctly and e-filing it. In practice, the line blurs: bookkeepers who maintain 990-relevant data structures throughout the year hand off a clean package; bookkeepers who don't do more work at year-end, or the CPA does it and charges more. Since 71% of CPA firms charge a premium for disorganized files, the cost of poor bookkeeping practices shows up directly in the CPA bill.
What is the difference between program expenses and program service revenue on Form 990?
Program service revenue (Part VIII, line 2) is earned income from program activities: fees charged for services delivered to clients or members. Program expenses (Part IX) are costs incurred to deliver programs. An organization might have neither, one, or both. The distinction matters because 990 Schedule A computes the public support test partly based on the ratio of program revenue and contributions versus total income.
What is the IRS Form 990 due date and what happens if you miss it?
Form 990 is due on the 15th day of the 5th month following the fiscal year-end. For calendar-year organizations, that's May 15. An automatic 6-month extension is available by filing Form 8868 before the due date. The IRS received 762,000+ extension requests in FY2022, so extensions are common practice. There is no penalty for filing an extension request. Failure to file without an extension results in penalties under IRC Section 6652(c)(1): $20 per day for organizations with gross receipts under $1 million (maximum $10,000); $100 per day for receipts between $1 million and $1.274 million (maximum $50,000); $125 per day for receipts above $1.274 million (maximum $63,500). Three consecutive years of failure to file results in automatic revocation of tax-exempt status. Over 440,000 organizations lost their exempt status in a single 18-month period under this rule.

Want to learn more?