Five accounts on your balance sheet that are probably wrong
When a company doing $4M in annual revenue comes to us with messy books, the bank reconciliation is almost always clean, tied out every month with no discrepancy. The bookkeeper is doing that part correctly. The errors are all underneath it.
That's the pattern at a company this size. The bank account is right, the P&L looks plausible, but no one has really reviewed the balance sheet in two years. So the mistakes collect in five or six GL accounts that no one is responsible for, and they sit there until a lender asks for your financials or your CPA books the same adjusting entry for the fourth March in a row.
1. Undeposited Funds
AKA "Payments to deposit.” Either way, it should be close to zero on the last day of the month, or equal to the deposits that hadn't cleared yet at cutoff.
What we usually find is a balance that only goes up. $40,000, then $80,000, then $140,000.
It happens when someone records a customer payment against the invoice, and then the deposit shows up in the bank feed a few days later and gets added instead of matched. The invoice closes, the bank reconciles, and the payment gets stranded in Undeposited Funds permanently. If you’re on cash basis, this could also have the unintended effect of booking the same income twice.
You could be paying tax on duplicated revenue, and carrying an asset that doesn't exist.
2. Accounts Payable that doesn't tie to the unpaid bills
Run the A/P Aging Detail and compare the total to the A/P line on your balance sheet. Those two numbers have to agree exactly. When they don't, something is posting to A/P outside the bill workflow.
Then read the aging itself and look for vendors you know you paid. That's the more common problem: a bill gets entered, then the payment comes through the bank feed and gets coded straight to an expense account instead of applied against the bill. The expense hits twice and the bill stays open forever.
For a contractor, those doubled expenses are usually job costs, so the margin on the job reads worse than it was. If you priced the next bid off that job's history, you priced it off a number that was incorrect.
3. The payroll clearing account no one has reviewed since you set up Gusto
Payroll integrations post a summary journal entry. The actual cash leaving your bank gets recorded separately. When those two don't line up to the penny, the difference lands in a clearing account or a payroll liability, and stays there until someone fixes it.
Pull your payroll liability balances and compare them to what your provider says you currently owe. They should match. If there's a balance sitting in a clearing account that grows every pay period, nobody has reconciled payroll since the integration was turned on.
Beyond the wrong liability, this is where wage allocation goes sideways. If payroll isn't landing correctly by job or by department, you don't have labor cost by job, which means you don't have gross margin by job.
4. Loans, equipment, and anything involving a lender
Three things go wrong here, and we see all of them:
Loan proceeds get coded to income. Funds from a $180,000 equipment note are deposited to the operating account, the bank feed suggests a revenue account (it is a deposit, after all!), and someone goes with the suggestion. Now you have $180,000 of revenue that is actually a liability.
Payments against that note then go entirely to interest expense, or entirely to principal. Neither is right, and the correct split changes every month as the loan amortizes.
Meanwhile, the fixed asset accounts don't tie to any depreciation schedule. Your CPA keeps one, your books say something different, and nobody has taken the time to compare them.
If you're borrowing, this is the section that matters most. Your covenant ratios get calculated off these accounts, and so does your EBITDA when a buyer or a bonding agent asks for it.
5. Inventory or WIP, frozen in time
Manufacturers: check the date your inventory balance last changed. If it's the number from whenever QBO was set up, your cost of goods sold has been an estimate ever since, and so has every margin you've looked at.
Contractors: if there's no work-in-progress entry at all, your gross margin swings fifteen or twenty points month to month depending on when you happened to bill. The swing comes from costs and revenue landing in different months.
Without a WIP adjustment you also have no over/under billings, which means the financials you hand your bank and your bonding agent are missing the schedule they care about most.
Check yours in twenty minutes
You don't need us to do this part. Open your balance sheet as of the last day of the last closed month and:
Confirm Undeposited Funds is zero or matches deposits in transit
Run the A/P Aging Detail and tie the total to the balance sheet
Run the A/R Aging Detail and look at everything over 90 days, then decide whether each one is retainage, a collection problem, or an error
Compare payroll liabilities to what your payroll provider says you owe today (often zero, if your payroll service pulls payroll taxes along with wages each pay period — if this is the case, your payroll liabilities accounts should typically not have balances at all).
Check that Opening Balance Equity is zero. A balance there could mean whoever set up or converted the file never finished, and it's been sitting as a plug ever since
Ask what supports each remaining account, one sentence each
That last one is the real test. If you can't say what's in an account and why, then nothing supports it. A balance sheet where every line has a schedule behind it is the difference between financials you can hand a lender and financials that need explanation.
What a cleanup involves at this size
At $300,000, a cleanup is mostly recategorizing transactions. At $5M it's almost none of that.
A cleanup at your size means rebuilding the support: reconciling every balance sheet account rather than just the bank, tying subledgers to the general ledger, correcting the loan and fixed asset treatment against real amortization and depreciation schedules, correcting the payroll allocation so labor lands where it belongs, and posting the accruals and WIP entries that make each month reflect that month.
Owners often assume this is the bookkeeper's fault, but it rarely is. Every error above comes from the same gap: someone was assigned the transaction coding and the bank reconciliation, and no one was assigned the balance sheet.
If you ran the twenty-minute check and found something you can't explain, that's what our cleanup engagements are for. Or book a call and we'll go through your balance sheet with you and flag what looks wrong before you decide whether to do anything about it.