Tracking Channel Mix (Airbnb vs VRBO vs Direct) in Your Books

Tracking Channel Mix (Airbnb vs VRBO vs Direct) in Your Books

Why channel mix belongs in your chart of accounts

This article is for STR property managers and hosts running two or more properties across multiple booking platforms. If you're managing owner accounts, it's also directly relevant to how you report revenue to owners each month.

Most operators know which channel generates the most bookings. Far fewer have that same answer available in their accounting software. Instead, all guest revenue lands in a single "Rental Income" account, and any channel-level insight lives in a separate spreadsheet - or nowhere at all.

That's a problem for three reasons.

First, each channel has a different fee structure, which means gross revenue and net payout diverge by different amounts depending on the platform. Second, each channel handles taxes differently, which affects your liability exposure. Third, if you're producing owner statements, you need to show gross rental income correctly - and the source of that income matters for how you record it.

Setting up your books to track channel mix doesn't require a complex system. It requires a deliberate chart of accounts and consistent coding habits.

How each major channel is structurally different

Airbnb

Airbnb collects the full nightly rate plus a guest service fee directly from the guest. You receive a payout that is already net of Airbnb's host service fee (typically 3% for hosts using split-fee structure). Airbnb also collects and remits occupancy taxes in most jurisdictions where they have a tax collection agreement.

What this means for your books: the payout you receive is not gross revenue. Gross revenue is the nightly rate plus any cleaning fees the guest paid. The host fee is a platform expense. And the occupancy taxes Airbnb remits on your behalf may not appear in your payout at all - which can create a gap if you're tracking tax liability manually.

VRBO

VRBO typically charges guests a traveler service fee (paid by the guest on top of your rate) and charges you a host fee (either subscription or per-booking). Depending on your setup, VRBO may or may not collect and remit local occupancy taxes.

The payout structure is similar to Airbnb in broad strokes, but the fee percentages differ, and the tax handling varies more by market. You cannot assume the same tax treatment applies across both platforms.

Direct bookings

Direct bookings present a different accounting challenge. You collect the full gross amount from the guest - nightly rate, cleaning fee, any add-ons - and you are responsible for collecting and remitting all applicable taxes yourself. There's no platform fee, but there's no platform handling taxes either.

If you're using a booking tool like OwnerRez or Hostfully to manage direct reservations, those platforms can generate the charge and collect payment, but the tax remittance obligation stays with you.

Setting up your chart of accounts for channel tracking

The cleanest approach is to create sub-accounts under your main rental income account - one per channel. Here's a simple structure:

Revenue accounts:

  • 4000 Rental Income

    • 4010 Rental Income - Airbnb

    • 4020 Rental Income - VRBO

    • 4030 Rental Income - Direct Bookings

    • 4040 Rental Income - Other OTAs

Expense accounts:

  • 6100 Platform Fees

    • 6110 Airbnb Host Fees

    • 6120 VRBO Host Fees

Liability accounts:

  • 2200 Occupancy Tax Payable

    • 2210 Occupancy Tax - Platform Remitted

    • 2220 Occupancy Tax - Self-Remitted

This setup works in QuickBooks Online, Xero, and most other small business accounting platforms. The key discipline is coding each booking to the correct sub-account when you record the income - not just letting it fall into the parent account.

For property managers tracking revenue across multiple owner accounts, this integrates directly with how you structure owner trust accounting, where each owner's revenue needs to be attributed accurately before you produce their monthly statement.

Worked example: three bookings, three different accounting entries

Take a single property with these three bookings in one month:

Booking 1 - Airbnb

  • Guest pays: $1,200 (nightly) + $150 (cleaning fee) = $1,350

  • Airbnb host fee (3%): -$36

  • Payout received: $1,314

  • Occupancy tax: collected and remitted by Airbnb

You record: Revenue $1,350 to 4010, Platform Fee $36 to 6110. The tax is noted but not your remittance obligation.

Booking 2 - VRBO

  • Guest pays: $1,100 (nightly) + $150 (cleaning fee) = $1,250

  • VRBO host fee (8%): -$100

  • Payout received: $1,150

  • Occupancy tax: not remitted by VRBO in this market

You record: Revenue $1,250 to 4020, Platform Fee $100 to 6120, Occupancy Tax Payable $X to 2220 (calculate based on local rate).

Booking 3 - Direct

  • Guest pays: $1,000 (nightly) + $150 (cleaning fee) + $90 (occupancy tax) = $1,240

  • No platform fee

  • You collected the full amount

You record: Revenue $1,150 to 4030, Occupancy Tax Payable $90 to 2220. You are responsible for remitting that $90.

At month end, your revenue report shows $3,600 gross across three channels. Without sub-accounts, all you'd see is $3,600 in "Rental Income." With sub-accounts, you can see that Airbnb produced 37.5% of gross revenue, VRBO 34.7%, and direct 31.9% - and that your effective platform cost varied significantly between the two OTAs.

The tax liability trap most operators miss

Channel mix tracking isn't just a revenue analysis tool. It directly affects your occupancy tax liability.

If you're in a market where Airbnb remits occupancy taxes but VRBO does not, and you're not tracking which revenue came from which channel, you have no systematic way to know how much tax you owe versus how much has already been remitted on your behalf.

This is one of the more common errors uncovered when reviewing owner statements and accounting records. A property generates $50,000 in annual revenue split across two platforms. The operator assumes taxes are being handled because they know Airbnb collects them - without realizing VRBO bookings created a separate, unremitted liability. That liability compounds monthly.

For more on how these gaps arise in multi-property operations, see the full guide to STR property management accounting.

Common coding errors that distort channel data

Even with sub-accounts in place, the data is only as good as the coding discipline behind it.

Recording net payouts as gross revenue. If you record the payout amount ($1,314 from the Airbnb example above) instead of the gross rental amount ($1,350), you're understating revenue and losing visibility into platform costs. Over a full year across 10 properties, this distortion adds up significantly.

Lumping cleaning fees into a separate non-revenue account. Cleaning fees paid by guests are revenue. They should be tracked in your income accounts (though in a sub-account like "Cleaning Fee Income" if you want to separate them), not netted against your cleaning expense.

Treating platform fees as a deduction from revenue rather than an expense. This understates both gross revenue and total expenses - which matters if you're doing owner reporting or trying to understand true platform economics.

Inconsistent coding across months. One month VRBO income goes to 4020, the next month someone codes it to 4000 by default. The sub-account data becomes meaningless for trend analysis.

PX Accounting's audit process specifically looks for these coding inconsistencies across your owner statements and accounting records - flagging where channel revenue has been miscoded or where payout amounts don't match expected gross figures.

Making channel data useful in practice

Once your books are coded correctly by channel, you can run a simple P&L by sub-account for any period and answer questions like:

  • Which channel has the highest effective net revenue per booking after fees?

  • Is my direct booking share growing or shrinking as a percentage of total revenue?

  • How much occupancy tax liability am I self-remitting vs. platform-remitted?

  • Are cleaning fee revenues from direct bookings covering actual cleaning costs?

None of these questions require a separate analytics tool if your chart of accounts is structured correctly. The answers come from your existing accounting software, provided the underlying data was coded to the right accounts in the first place.

If you manage properties for multiple owners, this channel-level visibility also makes your owner statements more transparent and easier to defend if an owner questions their revenue numbers.

For operators who want to understand more about what PX checks and surfaces across your accounting data, the features overview breaks down the audit categories in detail.

Frequently Asked Questions

Should I track channel mix at the property level or just overall?

Ideally both. Start with overall channel sub-accounts to get the data flowing correctly, then consider adding class or location tracking in your accounting software to break it down by property. Most property managers find the channel-level view more immediately useful for fee analysis, and the property-level view more useful for owner reporting.

Do I need a separate bank account for direct bookings?

PX does not address bank account setup, but from a bookkeeping standpoint you don't need separate accounts to track channel mix. Consistent income sub-account coding in your accounting software is sufficient to separate the revenue streams.

How do I handle a booking that originates on Airbnb but involves a damage claim or refund?

Refunds and adjustments should be coded back to the same sub-account as the original booking. If Airbnb reimburses a damage claim, that's typically separate income - code it to a damage reimbursement account rather than mixing it into rental revenue, so your channel revenue figures stay clean.

What if my property management software doesn't export channel data cleanly?

Many PMS tools like OwnerRez, Guesty, and Hostfully do include channel identifiers in their reports. Check your export settings or reporting templates before assuming the data isn't there. If the channel field isn't populated, you can often identify the source by cross-referencing the payout source or confirmation number format during your monthly coding review.

How often should I review channel mix in my books?

Monthly is the right cadence for most operators. During your month-end close, pull a revenue summary by sub-account and verify the totals look proportionate to your actual booking activity. If one channel suddenly shows zero or unusually high revenue, that's a signal that a coding error occurred that month.

Next steps

Start by reviewing your current chart of accounts and identifying whether you have channel-level sub-accounts in place. If not, adding them takes less than 30 minutes in most accounting platforms - the harder part is cleaning up prior-period data.

If you're not sure whether your existing owner statements and revenue coding are accurate, a structured review can surface the gaps quickly. PX Accounting offers a way to identify errors in your owner statement records across a 60-day window at no cost - a practical starting point before you commit to restructuring your chart of accounts.

By Jessica Hudson, CPA - specializing in short-term rental tax, bookkeeping, and financial operations for vacation rental hosts and property managers.