The 7 Accounts Every Airbnb Host Needs in Their Chart of Accounts

Most accounting software ships with a generic chart of accounts designed for a retail store or a service agency. If you drop your short-term rental operation into that template without modification, you will end up with rental income lumped in the wrong place, cleaning fees buried in a catch-all revenue line, and occupancy taxes sitting in an expense account when they should be a liability. That is not a minor cosmetic issue - it creates real problems when you try to file taxes, pay owners accurately, or understand whether your properties are actually profitable.
This guide is for Airbnb hosts and short-term rental operators managing anywhere from one property to a few dozen. It assumes you are using something like QuickBooks Online or Xero and that you want your books to reflect how your business actually works - not how a generic template guesses it might work.
For a broader look at how STR bookkeeping fits together, the complete guide to STR property management accounting is worth reading alongside this article.
What a Chart of Accounts Actually Does
Your chart of accounts (COA) is simply a numbered list of every bucket where money can land in your accounting system. Every transaction you record maps to one of those buckets. Get the buckets right and your reports are meaningful. Get them wrong and your P&L becomes a fiction.
For short-term rental businesses, the key is building a COA that reflects three realities generic templates miss:
Revenue comes in gross from OTAs, but you never see the full gross amount - the platform fee is deducted before the payout hits you
Some collected funds (occupancy taxes, security deposits) are not your money to keep
If you manage properties for owners, a portion of every booking belongs to someone else
With that framing, here are the seven accounts you need.
Account 1: Gross Rental Income (Revenue)
Account type: Income | Suggested number range: 4000
This account captures the full nightly rate on every confirmed booking before any platform fees are deducted. Even though Airbnb sends you a payout already reduced by their host fee, your books should record the gross booking value here.
Why gross? Because if you only record what hits your account, you understate revenue and misrepresent your expense ratio. A booking worth $400 that Airbnb pays out as $363 after a 3% host fee should show as $400 income and $37 platform fee expense - not $363 income with nothing else.
If you manage multiple properties, consider sub-accounts under 4000: 4001 for Property A, 4002 for Property B, and so on. This lets you run a P&L by property without separate company files.
Account 2: Cleaning Fee Income (Revenue)
Account type: Income | Suggested number range: 4100
Cleaning fees collected from guests deserve their own income line, separate from nightly rental revenue. The reason is practical: your cleaning cost is also its own expense line, and you want to see at a glance whether you are breaking even on turnovers or subsidizing them.
Example: If you collect $120 in cleaning fees per booking and pay your cleaner $95 per turnover, your cleaning margin is $25. If cleaning fees are buried in a generic "Rental Income" line, you will never see that margin - or notice when rising labor costs flip it negative.
Account 3: OTA Platform Fees (Expense)
Account type: Cost of Goods Sold or Operating Expense | Suggested number range: 5000
Airbnb's host service fee, VRBO's listing fee, Booking.com's commission - these all belong in a dedicated platform fee expense account. Do not let them disappear into a "Miscellaneous" bucket.
This matters at tax time because platform fees are fully deductible against rental income (see IRS Publication 527 for rental property expense guidance). It also matters operationally: if your commission expense is rising because you shifted more bookings to higher-fee channels, you want to see that in your books.
If you use multiple OTAs, create sub-accounts: 5001 Airbnb Fees, 5002 VRBO Fees, 5003 Direct Booking Processing Fees. The visibility is worth the extra two minutes of setup.
Account 4: Cleaning and Turnover Costs (Expense)
Account type: Operating Expense | Suggested number range: 5100
This is the expense side of your cleaning operation - what you pay cleaners, laundry services, or a cleaning company per turnover. Keep it separate from general maintenance (Account 5 below) because the cost behavior is different: cleaning scales directly with occupancy, while maintenance is more random.
Paired with Account 2 (Cleaning Fee Income), this account lets you answer a question that matters: "Are guests paying enough to cover my cleaning costs?"
Account 5: Repairs and Maintenance (Expense)
Account type: Operating Expense | Suggested number range: 5200
This account catches the unpredictable costs of keeping a property guest-ready: fixing a broken garbage disposal, replacing a mattress, repainting after a scuffed wall, replacing a broken blind. Under IRS rules, repairs that restore an item to working condition are generally deductible in the year incurred. Improvements that add value or extend useful life typically must be capitalized and depreciated - check IRS Publication 527 and consult your CPA on the line between repair and improvement.
Separate this from cleaning costs. A repair is "the dishwasher stopped working and I paid $180 for a service call." A cleaning cost is "I paid $90 for a post-checkout turnover." Mixing them obscures your true cost structure.
Account 6: Occupancy Tax Payable (Liability)
Account type: Current Liability | Suggested number range: 2000
This is the account most new STR hosts set up wrong - or skip entirely.
When a guest pays you (or Airbnb collects on your behalf) for lodging tax, transient occupancy tax, or short-term rental tax, that money belongs to the taxing authority. It is not your income. It is not an expense. It is a liability you hold temporarily until you remit it.
If Airbnb collects and remits the tax automatically in your jurisdiction, you still need to understand how much is flowing through. If you collect it directly (common with direct bookings or in jurisdictions where Airbnb does not auto-collect), you need this liability account to track what you owe.
A simple example: You collect $1,200 in nightly rates and $84 in occupancy tax (at a 7% rate) from a guest. The $1,200 goes to Account 1 (Gross Rental Income). The $84 goes to Account 6 (Occupancy Tax Payable) as a liability. When you remit it to the state, you debit Account 6 and credit cash. The $84 never touches your income statement.
Misclassifying this as income is one of the most common STR bookkeeping errors we find when auditing operator statements. For more on how trust accounting and liability tracking interact, see our guide to owner trust accounting.
Account 7: Owner Distributions Payable (Liability)
Account type: Current Liability | Suggested number range: 2100
This account applies specifically to property managers who collect revenue on behalf of property owners. Every dollar of gross booking revenue that belongs to an owner - after your management fee and allowable expenses - is a liability on your books until you pay it out.
Skipping this account (or running owner funds through an expense account) is a serious error. If you record the owner's share as an expense, you understate your own revenue and overstate your deductions. If you commingle it with your operating funds, you risk regulatory and legal exposure depending on your state's property management licensing rules.
The mechanics: When a booking comes in, credit Gross Rental Income (Account 1) for the full amount. As you calculate the owner's share, debit that same revenue line and credit Account 7 (Owner Distributions Payable). When you cut the owner's check, debit Account 7. The owner's money flows through your books as a liability, never as your income or expense.
A Worked Example
Here is how a single $500 booking would flow through these accounts:
Guest pays $500 nightly rate + $120 cleaning fee + $43.40 occupancy tax (7% on $620) = $663.40 total
Airbnb deducts a 3% host fee ($15) and remits $648.40 to you
You pay your cleaner $90 for the turnover
Account | Debit | Credit |
|---|---|---|
Gross Rental Income (4000) | - | $500.00 |
Cleaning Fee Income (4100) | - | $120.00 |
Occupancy Tax Payable (2000) | - | $43.40 |
OTA Platform Fees (5000) | $15.00 | - |
Cleaning & Turnover Costs (5100) | $90.00 | - |
Net rental income on this booking: $515.00. Cleaning margin: $30.00. Tax liability owed: $43.40. All visible, all correctly categorized.
If you want to see how PX Accounting audits your existing owner statements and booking data for exactly these kinds of miscategorizations, explore what the audit covers.
Frequently Asked Questions
Should I track cleaning fees as income or just net them against my cleaning expenses?
Track them as income in their own account (Account 2 above), then record your cleaner payments as a separate expense. Netting the two together hides whether you are breaking even on turnovers, and it understates your gross revenue, which can matter for certain tax calculations and loan applications.
What account type is occupancy tax payable, and why does it matter?
Occupancy tax payable is a current liability, not income and not an expense. It matters because money that belongs to a government authority is not your revenue. Recording it as income overstates your taxable earnings; recording it as an expense gets the timing wrong and inflates your deductions artificially.
Do I need separate chart of accounts entries for each property I manage?
Not necessarily separate top-level accounts, but sub-accounts or class tracking in QuickBooks Online or Xero will let you run property-level P&Ls without multiplying your account list. Most operators use class or location tracking for per-property reporting and keep the main COA structure consistent across properties.
How do I handle security deposits in my chart of accounts?
Security deposits you collect and may have to return belong in a separate current liability account, similar to occupancy tax payable. Do not record them as income when collected. If you determine a portion is non-refundable after a stay (for damages, for example), move only that amount to income at that point. Check with your CPA on the timing rules for your situation.
Next Steps
If you already have a chart of accounts set up, compare it against the seven accounts above and look for gaps - especially around occupancy tax payable and owner distributions if you manage for multiple owners. If your books have been running on a generic template for a while, there is a good chance some transactions are sitting in the wrong buckets.
PX Accounting audits existing STR owner statements and accounting data to surface exactly these kinds of errors - miscoded revenue, missing tax liabilities, payout mismatches. If you want a clear picture of where your current setup stands, start with a free 60-day audit.
By Jessica Hudson, CPA - specializing in short-term rental tax, bookkeeping, and financial operations for vacation rental hosts.