QuickBooks Classes vs Customers for Grant Tracking
Deciding between Classes and Customers for grant tracking in QuickBooks Online? This guide compares both approaches to help you choose the right one.
Bring this workflow into GrantLink to keep grant accounting tidy.
QuickBooks Classes vs Customers for Grant Tracking
One of the first decisions nonprofits face when setting up QuickBooks Online for grant tracking: should you use Classes or Customers (with Projects)?
Both can work. Neither is perfect. This guide helps you choose the right approach for your organization.
Quick Comparison
| Feature | Classes | Customers/Projects |
|---|---|---|
| Track income by grant | Yes | Yes |
| Track expenses by grant | Yes | Yes |
| Budget tracking | No | Limited (estimates) |
| Multiple donors per grant | Yes | No (major limitation) |
| Hierarchy/grouping | Sub-classes | Customer > Project |
| Time tracking | No | Yes |
| Profitability reports | Class reports | Project reports |
| Invoicing | N/A | Yes |
| Complexity | Simpler | More complex |
When to Use Classes
Classes are better when:
- You have multi-donor restricted funds (multiple donors contributing to the same purpose)
- You want simplicity over features
- You don't need to invoice funders through QuickBooks
- You're tracking 10+ grants (Classes scale better)
- You want to use Departments for programs separately
How Classes work for grants:
- Create a Class for each grant (e.g., "Ford Foundation 2024")
- Apply the Class to revenue when funds are received
- Apply the Class to expenses when you spend
- Run Class reports to see income/expenses per grant
Class hierarchy example:
Foundation Grants (parent)
├── Ford Foundation 2024
├── Kellogg Foundation 2024
└── Gates Foundation 2025
Government Grants (parent)
├── HHS Youth Services
└── DOE Education Grant
Limitations of Classes:
- No budget vs. actual (Classes don't have budgets)
- No remaining balance calculation
- Manual report compilation for funders
- No enforcement—easy to forget the Class
When to Use Customers/Projects
Customers are better when:
- You invoice funders for reimbursement (cost-reimbursable grants)
- You need time tracking against grants
- You want QBO's Project Profitability reports
- Each grant has a single funder (no multi-donor situations)
- You have fewer grants to manage
How Customers/Projects work for grants:
- Create a Customer for each funder
- Create a Project under the Customer for each grant
- Apply the Customer:Project to income and expenses
- Use Project reports for profitability
Customer/Project structure:
Ford Foundation (Customer)
├── Youth Programs 2024 (Project)
└── Education Initiative 2025 (Project)
Gates Foundation (Customer)
└── Health Access Grant (Project)
Limitations of Customers/Projects:
- One customer per project — Can't have multiple donors on one restricted fund
- Workarounds required for multi-donor grants (Sales Receipts + JEs)
- Projects don't have budget tracking
- More setup complexity
The Multi-Donor Problem
This is often the deciding factor.
Scenario: Three donors each give $10,000 toward your new building fund. In QuickBooks:
With Classes:
- Create one Class: "Building Fund"
- Record three deposits, each tagged with the Building Fund class
- Expenses tagged to Building Fund
- Works fine ✓
With Customers/Projects:
- Create a Project called "Building Fund"
- But under which Customer? Projects require exactly one Customer
- You'd need to create a fake "Building Fund" customer, or
- Use complex workarounds with Sales Receipts and Journal Entries
- Gets messy quickly ✗
If you regularly have grants with multiple donors, Classes are usually the better choice.
Hybrid Approach
Some organizations use both:
- Classes = Grants (funding sources)
- Customers = Actual customers/funders (for invoicing and receivables)
- Departments = Programs (organizational units)
This gives maximum flexibility but adds complexity. Every transaction potentially needs three tags.
Example transaction:
- Expense: $500 office supplies
- Class: Ford Foundation Grant (which grant pays)
- Customer: Ford Foundation (for A/R if needed)
- Department: Youth Services (which program benefits)
Our Recommendation
For most nonprofits, we recommend Classes because:
- Simpler to set up and maintain
- Handles multi-donor grants without workarounds
- Scales better with many grants
- Leaves Customers available for actual customers/funders
- Works well with Departments for program tracking
Use Customers/Projects if:
- You invoice funders through QuickBooks
- You need time tracking against grants
- Every grant has exactly one funder
- You have a small number of grants
Beyond Classes and Customers
Regardless of which you choose, QuickBooks Online still lacks:
- Budget vs. actual tracking per grant
- Remaining balance calculations
- Restriction status tracking
- Funder report generation
- Compliance monitoring
If you need these capabilities, consider a grant management tool that integrates with QuickBooks, adding the grant-specific features while keeping your accounting in QBO.
Making the Switch
Already using one approach and want to switch?
Classes to Customers:
- Create new Customer/Project structure
- Going forward, use new structure
- Historical data stays in Classes (for reference)
- Reports will need to combine both for full picture
Customers to Classes:
- Create Class structure
- Create a class for each existing Project
- Going forward, use Classes
- Consider mapping customers to "Funders" in your records
Switching mid-stream is painful. If possible, make the decision before you have significant historical data.
Need more than Classes or Customers can offer? GrantLink adds grant intelligence to QuickBooks Online—budget tracking, allocation management, and AI-powered funder reports. See how it works.
Put this knowledge to work in GrantLink
Track grants, automate reporting, and stay audit-ready in one place.