Hey everyone,
I’ve been using Beancount for tracking my investment portfolio and personal finances for the past 3 years, and it’s been absolutely transformative for my FIRE journey. But now I’m expanding beyond index funds into real estate investing, and I’m hitting some complexity walls that I’d love the community’s help with.
The Challenge
I just closed on my second rental property (both single-family homes), and I’m realizing my simple account structure won’t scale. Here’s what’s keeping me up at night:
Property-Level Visibility: I need to see P&L for each property individually. Property A might be cash-flow positive while Property B is still underwater due to renovation costs. Right now, everything’s mixed together and I can’t easily tell which property is performing well.
Depreciation Tracking: The IRS lets residential rental properties depreciate over 27.5 years. I know I need to track this for tax purposes AND for when I eventually sell (depreciation recapture is real, folks). But how do you actually model this in Beancount? Do I create manual transactions each month? Use plugins? I’m lost.
Capital Improvements vs Repairs: This is the tax minefield. A new roof is a capital improvement (depreciable over time). Fixing a leaky faucet is a repair (immediately deductible). The distinction matters enormously for taxes, but tracking it correctly in Beancount has me confused. Do I use different account hierarchies? Metadata tags? Both?
1031 Exchange Planning: I’m already thinking about tax-deferred exchanges down the road. When I sell Property A and roll it into Property C, I need immaculate records of the original purchase price, all capital improvements, and accumulated depreciation. How do you structure your accounts so this data is readily available years from now?
Schedule E Alignment: My CPA uses Schedule E (Form 1040) for rental income reporting. It has specific expense categories (advertising, auto/travel, cleaning, insurance, repairs, etc.). Should I mirror these categories in my Beancount account structure? Or maintain my own structure and map it during tax season?
What I’ve Tried
Right now I have a basic structure like:
Assets:RealEstate:PropertyA
Assets:RealEstate:PropertyB
Liabilities:Mortgage:PropertyA
Liabilities:Mortgage:PropertyB
Income:Rental:PropertyA
Income:Rental:PropertyB
Expenses:RealEstate:Maintenance
Expenses:RealEstate:Insurance
Expenses:RealEstate:PropertyTax
But this doesn’t handle:
- Separate expense tracking per property
- Capital improvements vs repairs distinction
- Depreciation schedules
- Property basis tracking for future sale calculations
Questions for the Community
-
Account Structure: What’s your recommended account hierarchy for tracking multiple rental properties? Do you create completely separate trees for each property, or share expense categories?
-
Depreciation: How do you track depreciation in Beancount? Manual monthly/annual transactions? Plugins? Do you track it at all, or just let your tax software handle it?
-
Capital Improvements: How do you distinguish and track capital improvements separately from repairs? Metadata? Account naming? Both?
-
Property-Level Reporting: What Beancount queries or Fava features do you use to generate property-specific P&L statements?
-
Tax Integration: How do you go from Beancount data to Schedule E? Manual extraction? Scripts? Do you have query templates?
I know this is a lot, but I’m committed to getting this right from the start. With the 2026 depreciation changes (thanks to the One Big Beautiful Bill Act restoring 100% bonus depreciation), there’s real money at stake in tracking this correctly.
Any advice, example account structures, or lessons learned from those of you managing rental properties in Beancount would be incredibly valuable!
– Fred