Troubleshooting
Start with the cross-period void. It causes more stuck ACBs than everything else combined.
Updated 2026-07-16 · TrustRecon research team
In AppFolio reconciliation, the Adjusted Cash Balance (ACB) is a calculated field: it takes transactions recorded in your trust bank register and produces a figure that should match your bank statement's ending balance after accounting for outstanding checks and deposits in transit. When those two numbers diverge, the cause is almost always structural. The offset stays constant or grows until you find the root transaction — it will not resolve on its own.
Work through the causes below in order. Each item is ranked by frequency in real portfolios.
This is the dominant cause. APM Help's own documentation on AppFolio bank reconciliation states it plainly: a receipt voided after the period was already reconciled is the single most common reason an AppFolio adjusted cash balance won't balance.
Here is the mechanism. A tenant pays $1,450 in March. You reconcile March — that receipt is marked cleared, the period closes, everything balances. In April, someone voids that receipt. AppFolio generates the reversal with an April date. The positive entry lives in March's reconciliation window; the negative entry lives in April's. They will never meet in the same reconciliation. March looks fine because it's closed. April's ACB is off by exactly $1,450, and every subsequent month carries that offset forward. The current period will be off by that exact amount until you find and resolve the transaction.
Run the Bank Account Activity report filtered to voided transactions. For each voided receipt, check the original transaction date. If that date falls in a period already reconciled before the void was processed, you have found your cause. The ACB offset should equal the voided amount — or the sum of several voids if this has been happening across multiple months.
The fix is not to re-open the old period. Correct forward: enter the appropriate transaction in the current period so the ACB resolves cleanly without disturbing a closed reconciliation. If you're uncertain how to structure the correcting entry, a proper AppFolio bookkeeping review will map the full entry chain before touching anything.
AppFolio uses a security deposit clearing account as a zero-sum transit account. Funds flow from escrow into clearing, then from clearing to the operating account or back to the tenant. When all steps complete, clearing returns to zero. It should never carry a balance at month end.
When a move-out refund bill is reversed — or when someone voids a bank-to-bank transfer against the wrong GL account — the clearing account gets stuck. AppFolio's own Financial Diagnostics documentation describes the exact scenario: a reversed refund bill leaves $800 stranded in the clearing account rather than flowing into operating. That $800 distorts both the three-way reconciliation and the ACB and will not resolve itself.
Pull a GL account balance report filtered to your security deposit clearing account. Any non-zero month-end balance is a problem. Trace it to reversed move-out bills, voided bank transfers, or refund amounts that were edited after initial posting without a corresponding tenant ledger adjustment.
This occurs when a tenant pays the owner directly and staff use the wrong tool. In AppFolio, a Tenant Credit tells the system the tenant received a discount — the charge disappears from the tenant ledger, but no receipt is recorded and no income appears in the P&L. The tenant ledger shows a zero balance (which looks correct), but there is no cash entry in the trust bank register, so the ACB and bank statement diverge.
The correct workflow when a tenant paid the owner directly: record a Receipt, then immediately record an equal Owner Draw. Trust net is zero, but income and the distribution are both documented. If you see a unit with a zero tenant balance, no rent receipt for the period, and no P&L income, check whether a Tenant Credit was applied to the rent charge. This pattern also corrupts 1099 data at year end. Our three-way reconciliation guide traces how a missing receipt propagates across all three reconciliation legs.
If your AppFolio adjusted cash balance has been off by the same fixed amount every month since go-live, the opening balance entered at migration is the likely cause. Balanced Asset Solutions documented this in an AppFolio case study: inaccurate opening balances combined with journal entries used instead of actual transactions left the client's ACB severely distorted from day one.
AppFolio's ACB formula counts transactions in the bank register. A journal entry updates the GL but creates no clearable transaction. A JE used to set an opening balance makes the GL look right while the ACB ignores it — a permanent split equal to the JE amount.
Open your first-ever AppFolio bank reconciliation. A non-zero difference there has been carried forward ever since. Look for journal entries dated at or near your go-live date against the trust bank account — those should have been actual transactions, not JEs. Correcting this requires careful unwinding; a quick adjustment risks new discrepancies.
When a single complex — same owner, same trust bank account — was configured as multiple separate AppFolio properties at migration (one per building), income, expenses, and distributions are fragmented across multiple owner ledgers. A BiggerPockets thread documented this directly: a 7-building complex split into seven separate AppFolio balance sheets, with transactions showing only building numbers, made reconciliation against the owner's external QuickBooks impossible.
The ACB impact is indirect but persistent. Distributions and expenses are spread across multiple property records sharing one bank account, so sub-ledger totals never align cleanly with the bank register. The correct structure for a single-owner multi-building complex is one AppFolio property with sub-units, not multiple properties pulling from one trust account.
A trust-to-operating transfer executed at the bank but not recorded in AppFolio drops the bank balance without a corresponding register entry — the ACB runs high by exactly that amount. The reverse problem occurs when a Bank Adjustment is used to record a payment instead of a property-level transaction: the register updates, but the GL has no corresponding entry and the two reports diverge.
AppFolio's Bank Adjustment function is intended only for service charges and minor one-time corrections. Using it for vendor payments or management fee transfers creates GL entries invisible to property-level reports and produces an ACB discrepancy that owner ledgers alone cannot explain.
AppFolio's Financial Diagnostics tool runs internal consistency checks — flagging a non-zero clearing account balance, a stranded past-tenant prepayment, or a security deposit recorded against the wrong GL account type. These are genuine catches worth running before any reconciliation session.
What Financial Diagnostics cannot see: anything that exists only on the bank side or in your external QuickBooks records. If a transaction cleared the bank but was never entered in AppFolio, the tool has no way to flag it — it only compares AppFolio records against each other. If your QuickBooks has the trust bank account connected as a normal bank feed (routing rent deposits into income accounts instead of liability accounts), AppFolio diagnostics will show clean while your QBO financials are fundamentally wrong. Cross-system mismatches require a true three-way reconciliation across the bank statement, the AppFolio register, and the QuickBooks GL simultaneously.
| Step | Where to Look | What You're Looking For |
|---|---|---|
| 1 | Bank Account Activity → filter Voided | Voided receipts whose original date falls in a closed reconciliation period |
| 2 | GL report → Security Deposit Clearing account | Non-zero month-end balance; trace to reversed move-out bills or voided transfers |
| 3 | Tenant ledger → units with zero balance but no receipt in a rent period | Tenant Credits applied against rent charges instead of receipts |
| 4 | First-ever reconciliation record | Non-zero opening difference; JEs used as opening balance entries |
| 5 | Owner setup → same trust account, multiple property records | Single-owner complexes fragmented into separate property records at migration |
| 6 | Bank Account Activity by transaction type → Bank Adjustments | Adjustments used for payments rather than for fees/corrections; net adjustment balance significantly non-zero |
Most AppFolio adjusted cash balance problems trace to one of the causes above. They persist because fixing them means touching closed periods, owner ledger balances, or migration data — and a wrong correction compounds the original problem. If you've worked through the lookup sequence and the offset is still unexplained, or if your reconciliation has been off since migration, TrustRecon can map the full entry chain and resolve it cleanly. Start with a free trust account audit.
Stop closing months with an unexplained difference. Each month you carry it forward, the correction grows harder and the regulatory exposure grows larger.
Upload three exports. Within 48 hours you get a discrepancy report with every finding tied to a record ID. Built from the same failure patterns state auditors look for.
For property management companies on Buildium or AppFolio. No call required.