Free fifteen-minute call. With a CPA, no payment until after.
Client login786-952-6621

Medical Practice Bookkeeping: Chart of Accounts, Patient Revenue Recognition, and Insurance Adjustments

Written by Yarik Yarosh, CPA (US & Canada) September 4, 2026 · FL CPA license AC61704 · CPA Ontario

A medical practice’s books don’t work like a typical service business’s books, because what gets billed is never what gets paid. A practice charges $200 for an office visit, an insurer’s fee schedule allows $120, the insurer pays $96 after the patient’s coinsurance, and the remaining $104 between the original charge and the allowed amount isn’t bad debt or a discount, it’s a contractual adjustment the practice was never entitled to collect in the first place. A chart of accounts and a monthly close process that doesn’t separate gross charges, contractual adjustments, and actual net collections into distinct accounts produces financial statements that misstate revenue by a wide margin and makes it nearly impossible to tell whether the practice is actually profitable or just busy.

Key takeaway

Medical practice revenue should be tracked through three distinct layers: gross charges (what’s billed at the practice’s full fee schedule), contractual adjustments (the difference between gross charges and the payer’s allowed amount, which is never real revenue and never real bad debt), and net patient revenue (what the practice is actually entitled to collect). Bad debt and true charity care or uncompensated care are separate categories again, distinct from contractual adjustments, and mixing the two understates the practice’s real collection rate. Cost of goods sold for a medical practice covers medical supplies, pharmaceuticals, and outside lab costs tied directly to patient encounters, kept separate from general overhead. Revenue is fundamentally coding-driven: the CPT and E/M code assigned to an encounter determines the fee schedule amount, which means the chart of accounts should be built to reconcile against the practice management system’s charge and payment detail, not just bank deposits.

Why don’t gross charges equal revenue?

Every payer a practice bills, Medicare, Medicaid, commercial insurers, and self-pay patients, pays according to its own fee schedule or negotiated rate, which is almost always lower than the practice’s standard billed charge. The gap between the two is built into the system by design, not a sign of underperformance, and it has to be accounted for as a contra-revenue item, not ignored or blended into the top line.

  • Gross charges are the amount the practice bills at its standard fee schedule for each CPT or E/M code, regardless of what any specific payer will actually pay.
  • Contractual adjustments are the reduction from gross charges down to the specific payer’s contracted or fee-schedule-allowed amount. A practice with a $200 standard charge for a level-4 office visit might have a Medicare allowed amount of $110 and a commercial-payer-A allowed amount of $140; both differences ($90 and $60 respectively) are contractual adjustments, recorded as a contra-revenue account, the moment the claim is adjudicated.
  • Net patient revenue is gross charges minus contractual adjustments, the amount the practice is actually entitled to collect between the payer’s payment and the patient’s own responsibility (copay, coinsurance, deductible).
  • Recording only net revenue (skipping the gross-and-adjustment detail) loses the information needed to evaluate payer mix and negotiate contracts. Recording only gross charges as revenue (without a contractual adjustment account) wildly overstates revenue and, if flowed through to a cash-basis tax return without correction, can overstate taxable income in a way that doesn’t match actual economics.

How should the chart of accounts separate revenue by payer?

A practice management system (the billing software) tracks charges and payments at the individual claim and CPT-code level; the general ledger chart of accounts doesn’t need that granularity, but it does need enough payer-class detail to make the P&L useful for actual decision-making.

  • A workable structure breaks patient service revenue into payer-class sub-accounts: Medicare, Medicaid, commercial insurance (often broken out further by major payer if concentration is high), workers’ compensation if applicable, and self-pay/patient responsibility. Each of those revenue sub-accounts pairs with its own contractual adjustment contra-account.
  • Ancillary revenue, in-house lab work, imaging, procedures billed separately from the office visit, durable medical equipment sales, should sit in its own revenue category distinct from E/M office-visit revenue, since the margin profile and payer mix on ancillary services is often very different from the core visit revenue.
  • A monthly revenue reconciliation should tie the general ledger’s net patient revenue figure back to the practice management system’s payment detail report for the same period. When the two don’t match, the gap is almost always a timing issue (charges entered in one period, adjudicated and adjusted in the next) or a posting error, and catching it monthly instead of at year-end keeps the gap from compounding into a real problem.

How is bad debt different from a contractual adjustment?

Bad debt is a patient-responsibility amount (a copay, deductible, or coinsurance) that the practice was legitimately entitled to collect but never does, because the patient doesn’t pay. A contractual adjustment is an amount the practice was never entitled to collect in the first place, because the payer contract or fee schedule capped it below the billed charge. Confusing the two produces two different kinds of bad information.

  • If bad debt gets buried inside contractual adjustments, the practice underestimates its real collection risk on patient-responsibility balances and doesn’t see a deteriorating self-pay or high-deductible-plan collection problem building.
  • If contractual adjustments get treated as bad debt (recorded as an expense rather than a contra-revenue reduction), the practice’s revenue is overstated and its expense side is inflated by an amount that was never a real write-off decision, it was a predetermined fee-schedule limit.
  • True charity care or financial-hardship write-offs (amounts the practice affirmatively decides not to pursue for a qualifying patient, as distinct from failed collection attempts on an amount the practice did try to collect) belong in a third category again, uncompensated care, tracked separately for both internal decision-making and, for practices affiliated with a nonprofit hospital system, community-benefit reporting purposes.
  • For tax purposes, a cash-basis practice (most physician practices under the gross-receipts threshold for the accrual method requirement) never actually deducts patient bad debt as a bad debt expense under IRC 166, because a cash-basis taxpayer never included the uncollected amount in income in the first place; there’s nothing to write off. The bad debt concept matters for internal financial reporting and cash flow management, but the tax mechanics are simpler on the cash method: unpaid patient balances just never become taxable income at all. Which accounting method is even available to the practice in the first place traces back to the entity structure it operates under.

What counts as cost of goods sold for a medical practice?

Most service businesses don’t have a COGS line at all, but a medical practice does, because certain costs are directly tied to delivering a specific patient encounter rather than being general overhead.

  • Medical and surgical supplies consumed directly in patient care (injectables, dressings, in-office procedure supplies) are a direct cost of the encounters that use them and should be tracked separately from general office supplies.
  • Pharmaceuticals the practice buys and administers or dispenses (in specialties like oncology, rheumatology, or allergy that administer high-cost infused or injected drugs) are frequently the largest single COGS line in the practice and need their own account given the dollar volume and the margin sensitivity to how the payer reimburses the drug relative to acquisition cost.
  • Outside lab and pathology costs the practice pays a reference lab for tests it orders, when the practice bills for the test itself (rather than the reference lab billing the payer directly), are a direct cost tied to specific encounters.
  • Keeping these as a distinct COGS section above the general operating-expense section lets the practice calculate a real gross margin by service line, essential for understanding whether a given specialty service (say, in-house infusion) is actually profitable once drug acquisition cost and payer reimbursement are both accounted for, versus a referral-out model. The equipment and supply purchases feeding this section carry their own first-year expensing rules, covered in our physician tax deductions guide.

Why is revenue fundamentally coding-driven?

Every dollar of patient revenue traces back to a specific CPT or E/M code assigned to an encounter, and the code determines both the fee schedule amount and the compliance risk profile of the charge. This is different from most small businesses, where revenue is simply price times quantity with no external classification system determining the price.

  • Undercoding (billing a lower-level E/M code than the documented visit supports) silently suppresses revenue without showing up as an obvious error anywhere in the books; it just looks like a slightly lower collection rate than expected. Overcoding creates compliance exposure that’s a much bigger problem than a bookkeeping issue, since it can trigger payer audits, refund demands, and in serious cases False Claims Act exposure.
  • A practice’s bookkeeping should reconcile monthly not just to total dollars but to coding mix (the distribution of E/M levels billed, procedure code volume), because a shift in coding mix month over month is often the earliest signal of either a documentation problem or a change in patient acuity that’s worth understanding before it shows up as a revenue variance three months later. This is the same coding data that drives RVU-based physician compensation, so a slipping coding mix is also a compensation problem, not just a bookkeeping one.
  • This is also why a medical practice’s monthly close realistically depends on data from the practice management or EHR system, not just the bank feed. A bookkeeper working from bank deposits alone has no way to separate gross charges, contractual adjustments, and patient responsibility, and ends up recording revenue on a pure cash-received basis that tells the practice nothing about its actual fee schedule performance or payer mix trends.

How should the monthly close actually run?

Pull the payer-class detail report from the practice management system before starting the close, not after; it’s the source document the general ledger entries should map to, not an afterthought reconciliation. Post gross charges, contractual adjustments, and net collections to their own accounts every month rather than net collections alone, so the practice can see payer mix and adjustment trends over time. And review coding-mix and denial-rate trends alongside the P&L each month, since a revenue-cycle problem (rising denials, slipping coding levels, growing self-pay bad debt) shows up in that operational detail well before it becomes obvious in a quarterly financial statement.

Related guides:

Not sure your practice's real collection rate?

The Practice Bookkeeping Assessment is a fixed $250. You get a written, CPA-reviewed read on your chart of accounts, your payer-mix revenue trends, and where the books and the practice management system don't reconcile.

Book a free call →
Get the next cross-border guide by email

One or two plain-English guides a week on US-Canada tax. No spam, unsubscribe anytime.

Cite this page

Yarik Yarosh, CPA. "Medical Practice Bookkeeping: Chart of Accounts, Patient Revenue Recognition, and Insurance Adjustments." Blue Cloud CPA, September 4, 2026. https://bluecloudcpa.com/guides/medical-practice-bookkeeping-chart-of-accounts-billing

This guide is general information, not tax advice for your specific situation. Which points apply, and how, depends on your facts.