Aller au contenu principal

Real Estate Templates and Examples

This guide provides practical Beancount templates and real-world examples for common real estate investment scenarios. Copy and adapt these templates for your own rental property accounting needs.

Explore a live real estate example ledger:

Basic Setup Template

Account Structure Template

; =============================================================================
; REAL ESTATE ACCOUNT SETUP TEMPLATE
; =============================================================================

; Property Asset Accounts
1970-01-01 open Assets:RealEstate:Property
1970-01-01 open Assets:RealEstate:AccumDepreciation
1970-01-01 open Assets:RealEstate:CapitalImprovements

; Bank Accounts
1970-01-01 open Assets:Bank:Checking
1970-01-01 open Assets:Bank:Savings
1970-01-01 open Assets:Bank:EscrowImpound

; Liability Accounts
1970-01-01 open Liabilities:Mortgage
1970-01-01 open Liabilities:SecurityDeposit

; Income Accounts
1970-01-01 open Income:RealEstate:Rent
1970-01-01 open Income:RealEstate:CapitalGains:LongTerm
1970-01-01 open Income:RealEstate:DepreciationRecapture

; Expense Accounts
1970-01-01 open Expenses:RealEstate:MortgageInterest
1970-01-01 open Expenses:RealEstate:LoanOrigination
1970-01-01 open Expenses:RealEstate:PropertyTax
1970-01-01 open Expenses:RealEstate:Insurance
1970-01-01 open Expenses:RealEstate:PropertyManagement
1970-01-01 open Expenses:RealEstate:Repairs
1970-01-01 open Expenses:RealEstate:Maintenance
1970-01-01 open Expenses:RealEstate:Depreciation
1970-01-01 open Expenses:RealEstate:ClosingCosts
1970-01-01 open Expenses:RealEstate:SellingCosts

; Equity
1970-01-01 open Equity:Opening

; Commodity Definition
1970-01-01 commodity PROP123MAIN
name: "123 Main St, Anytown, CA 90210"
asset-class: "real-estate"

1970-01-01 commodity USD

Property Purchase Templates

Down Payment + Mortgage

; Template: Purchase property with mortgage
YYYY-MM-DD * "Escrow" "Down payment — [DOWN_PCT]% of $[PRICE]"
Assets:RealEstate:Property 1 [COMMODITY] {[PRICE] USD, YYYY-MM-DD}
Assets:Bank:Checking -[DOWN_PAYMENT] USD
Liabilities:Mortgage -[LOAN_AMOUNT] USD

; Example: $400,000 property with 20% down
2024-03-15 * "Escrow" "Down payment — 20% of $400,000"
Assets:RealEstate:Property 1 PROP123MAIN {400,000.00 USD, 2024-03-15}
Assets:Bank:Checking -80,000.00 USD
Liabilities:Mortgage -320,000.00 USD

Closing Costs

; Template: Loan origination fee
YYYY-MM-DD * "Lender" "Loan origination fee — [PCT]% of $[LOAN]"
Expenses:RealEstate:LoanOrigination [FEE] USD
Assets:Bank:Checking -[FEE] USD

; Template: Title and escrow fees
YYYY-MM-DD * "Title company" "Title insurance, escrow fees, recording"
Expenses:RealEstate:ClosingCosts [AMOUNT] USD
Assets:Bank:Checking -[AMOUNT] USD

; Template: Property appraisal
YYYY-MM-DD * "Appraiser" "Property appraisal"
Expenses:RealEstate:ClosingCosts [AMOUNT] USD
Assets:Bank:Checking -[AMOUNT] USD

; Example: Closing costs for $320,000 loan
2024-03-15 * "Lender" "Loan origination fee — 1% of $320,000"
Expenses:RealEstate:LoanOrigination 3,200.00 USD
Assets:Bank:Checking -3,200.00 USD

2024-03-15 * "Title company" "Title insurance, escrow fees, recording"
Expenses:RealEstate:ClosingCosts 2,800.00 USD
Assets:Bank:Checking -2,800.00 USD

2024-03-15 * "Appraiser" "Property appraisal"
Expenses:RealEstate:ClosingCosts 450.00 USD
Assets:Bank:Checking -450.00 USD

Initial Escrow Impound

; Template: Initial escrow deposit at closing
YYYY-MM-DD * "Escrow" "Initial escrow impound — property tax ([N] mo) + insurance (1 yr)"
Assets:Bank:EscrowImpound [TAX_IMPOUND] USD
Expenses:RealEstate:Insurance [INSURANCE_PREPAID] USD
Assets:Bank:Checking -[TOTAL] USD

; Example: 3 months property tax + 1 year insurance
2024-03-15 * "Escrow" "Initial escrow impound — property tax (3 mo) + insurance (1 yr)"
Assets:Bank:EscrowImpound 1,250.00 USD
Expenses:RealEstate:Insurance 1,800.00 USD
Assets:Bank:Checking -3,050.00 USD

Mortgage Payment Templates

Monthly P&I + Escrow

; Template: Monthly mortgage payment with escrow
; Total payment = Interest + Principal + Escrow
YYYY-MM-DD * "Bank" "Mortgage payment — [MONTH YEAR]"
Expenses:RealEstate:MortgageInterest [INTEREST] USD
Liabilities:Mortgage [PRINCIPAL] USD
Assets:Bank:EscrowImpound [ESCROW] USD
Assets:Bank:Checking -[TOTAL] USD

; Example: 30-year fixed, $320,000 at 7.0% APR
; Monthly P&I: $2,129.06, Escrow: $566.67, Total: $2,695.73
; Month 1 interest: $320,000 × 0.07 / 12 = $1,866.67
2024-04-01 * "Bank" "Mortgage payment — April 2024"
Expenses:RealEstate:MortgageInterest 1,866.67 USD
Liabilities:Mortgage 262.39 USD
Assets:Bank:EscrowImpound 566.67 USD
Assets:Bank:Checking -2,695.73 USD

; Month 2 interest: ($320,000 - $262.39) × 0.07 / 12 = $1,865.14
2024-05-01 * "Bank" "Mortgage payment — May 2024"
Expenses:RealEstate:MortgageInterest 1,865.14 USD
Liabilities:Mortgage 263.92 USD
Assets:Bank:EscrowImpound 566.67 USD
Assets:Bank:Checking -2,695.73 USD

Escrow Disbursements

; Template: Semi-annual property tax payment from escrow
YYYY-MM-DD * "County tax collector" "Property tax — [INSTALLMENT] installment"
Expenses:RealEstate:PropertyTax [AMOUNT] USD
Assets:Bank:EscrowImpound -[AMOUNT] USD

; Template: Annual insurance payment from escrow
YYYY-MM-DD * "Insurance company" "Homeowner insurance renewal — year [N]"
Expenses:RealEstate:Insurance [AMOUNT] USD
Assets:Bank:EscrowImpound -[AMOUNT] USD

; Example: Property tax ($5,000/yr paid semi-annually)
2024-09-15 * "County tax collector" "Property tax — first installment"
Expenses:RealEstate:PropertyTax 2,500.00 USD
Assets:Bank:EscrowImpound -2,500.00 USD

; Example: Insurance renewal
2025-03-15 * "Insurance company" "Homeowner insurance renewal — year 2"
Expenses:RealEstate:Insurance 1,850.00 USD
Assets:Bank:EscrowImpound -1,850.00 USD

Rental Income Templates

Monthly Rent with Property Management Fee

; Template: Monthly rent with PM fee
YYYY-MM-DD * "Tenant" "[MONTH YEAR] rent"
Assets:Bank:Checking [NET_RENT] USD
Expenses:RealEstate:PropertyManagement [PM_FEE] USD
Income:RealEstate:Rent -[GROSS_RENT] USD

; Example: $2,400/mo rent with 8% PM fee ($192)
2024-04-01 * "Tenant" "April 2024 rent"
Assets:Bank:Checking 2,208.00 USD
Expenses:RealEstate:PropertyManagement 192.00 USD
Income:RealEstate:Rent -2,400.00 USD

Security Deposit Receipt

; Template: Receive security deposit (liability, NOT income)
YYYY-MM-DD * "Tenant" "Security deposit — [N] month rent"
Assets:Bank:Checking [AMOUNT] USD
Liabilities:SecurityDeposit -[AMOUNT] USD

; Example: 1-month security deposit
2024-03-20 * "Tenant" "Security deposit — 1 month rent"
Assets:Bank:Checking 2,400.00 USD
Liabilities:SecurityDeposit -2,400.00 USD

Security Deposit Return

; Template: Return security deposit at lease end
YYYY-MM-DD * "Tenant" "Return security deposit — lease ended"
Liabilities:SecurityDeposit [AMOUNT] USD
Assets:Bank:Checking -[AMOUNT] USD

; Example: Full deposit return
2025-11-01 * "Tenant" "Return security deposit — lease ended"
Liabilities:SecurityDeposit 2,400.00 USD
Assets:Bank:Checking -2,400.00 USD

Operating Expense Templates

Repairs (Current Deduction)

; Template: Repair expense — fully deductible in current year
YYYY-MM-DD * "[VENDOR]" "[DESCRIPTION]"
Expenses:RealEstate:Repairs [AMOUNT] USD
Assets:Bank:Checking -[AMOUNT] USD

; Example: HVAC repair
2024-05-18 * "HVAC Pro" "A/C repair — replaced capacitor"
Expenses:RealEstate:Repairs 285.00 USD
Assets:Bank:Checking -285.00 USD

; Example: Plumbing repair
2024-06-10 * "Joe's Plumbing" "Fix leaking kitchen faucet"
Expenses:RealEstate:Repairs 180.00 USD
Assets:Bank:Checking -180.00 USD

Maintenance (Current Deduction)

; Template: Regular maintenance expense
YYYY-MM-DD * "[VENDOR]" "[DESCRIPTION]"
Expenses:RealEstate:Maintenance [AMOUNT] USD
Assets:Bank:Checking -[AMOUNT] USD

; Example: Quarterly landscaping
2024-06-15 * "Green Lawn Care" "Quarterly landscaping — Q2"
Expenses:RealEstate:Maintenance 360.00 USD
Assets:Bank:Checking -360.00 USD

; Example: Annual pest control
2024-10-20 * "PestShield" "Annual termite inspection & treatment"
Expenses:RealEstate:Maintenance 350.00 USD
Assets:Bank:Checking -350.00 USD

Depreciation Templates

Monthly Straight-Line Depreciation

; Template: Monthly depreciation entry (full month)
; Building cost / 27.5 / 12 = monthly amount
YYYY-MM-DD * "Depreciation" "[MONTH YEAR]"
Expenses:RealEstate:Depreciation [MONTHLY_AMOUNT] USD
Assets:RealEstate:AccumDepreciation -[MONTHLY_AMOUNT] USD

; Example: $320,000 building, monthly = $320,000 / 27.5 / 12 = $969.70
2024-04-30 * "Depreciation" "April 2024"
Expenses:RealEstate:Depreciation 969.70 USD
Assets:RealEstate:AccumDepreciation -969.70 USD

Mid-Month Convention (First Month)

; Template: Half-month depreciation when placed in service
; Used in the month the property is placed in service
YYYY-MM-DD * "Depreciation" "[MONTH YEAR] — half-month (placed in service)"
Expenses:RealEstate:Depreciation [HALF_MONTH] USD
Assets:RealEstate:AccumDepreciation -[HALF_MONTH] USD

; Example: Placed in service March 15
; Half-month = $969.70 / 2 = $484.85
2024-03-31 * "Depreciation" "March 2024 — half-month (placed in service)"
Expenses:RealEstate:Depreciation 484.85 USD
Assets:RealEstate:AccumDepreciation -484.85 USD

Mid-Month Convention (Disposition Month)

; Template: Half-month depreciation when disposed
; Used in the month the property is sold/disposed
YYYY-MM-DD * "Depreciation" "[MONTH YEAR] — half-month (disposed)"
Expenses:RealEstate:Depreciation [HALF_MONTH] USD
Assets:RealEstate:AccumDepreciation -[HALF_MONTH] USD

; Example: Sold November 15
2025-11-15 * "Depreciation" "November 2025 — half-month (disposed)"
Expenses:RealEstate:Depreciation 484.85 USD
Assets:RealEstate:AccumDepreciation -484.85 USD

Capital Improvement Templates

Basis Addition Entries

; Template: Capital improvement — adds to cost basis
; NOT a current expense deduction
YYYY-MM-DD * "[VENDOR]" "[DESCRIPTION]"
Assets:RealEstate:CapitalImprovements [AMOUNT] USD
Assets:Bank:Checking -[AMOUNT] USD

; Example: Replace water heater (extends useful life)
2024-08-12 * "Home Depot" "Replace water heater — 50 gal gas"
Assets:RealEstate:CapitalImprovements 1,800.00 USD
Assets:Bank:Checking -1,800.00 USD

; Example: New kitchen appliances (adds value)
2024-10-05 * "Lowe's" "New kitchen appliances — stove + dishwasher"
Assets:RealEstate:CapitalImprovements 4,200.00 USD
Assets:Bank:Checking -4,200.00 USD

Property Sale Templates

Selling Costs

; Template: Realtor commission
YYYY-MM-DD * "Realtor" "Sales commission — [PCT]% of $[SALE_PRICE]"
Expenses:RealEstate:SellingCosts [COMMISSION] USD
Assets:Bank:Checking -[COMMISSION] USD

; Template: Seller closing costs
YYYY-MM-DD * "Title company" "Seller closing costs — [PCT]% of $[SALE_PRICE]"
Expenses:RealEstate:ClosingCosts [COSTS] USD
Assets:Bank:Checking -[COSTS] USD

; Example: 5% commission + 1% closing costs on $435,000 sale
2025-11-15 * "Realtor" "Sales commission — 5% of $435,000"
Expenses:RealEstate:SellingCosts 21,750.00 USD
Assets:Bank:Checking -21,750.00 USD

2025-11-15 * "Title company" "Seller closing costs — 1% of $435,000"
Expenses:RealEstate:ClosingCosts 4,350.00 USD
Assets:Bank:Checking -4,350.00 USD

Mortgage Payoff

; Template: Mortgage payoff at closing
YYYY-MM-DD * "Bank" "Mortgage payoff at closing"
Liabilities:Mortgage [PAYOFF_AMOUNT] USD
Assets:Bank:Checking -[PAYOFF_AMOUNT] USD

; Example: Payoff remaining mortgage balance
2025-11-15 * "Bank" "Mortgage payoff at closing"
Liabilities:Mortgage 314,744.09 USD
Assets:Bank:Checking -314,744.09 USD

Gain Recognition (Depreciation Recapture + LTCG)

; Template: Dispose property and recognize gain
; Total gain = Net proceeds - Adjusted basis
; Adjusted basis = Original cost + Improvements - Accumulated depreciation
; Split: Depreciation recapture (§1250, max 25%) + LTCG (remainder)
YYYY-MM-DD * "Sale" "Dispose property — recognize gain"
Assets:RealEstate:Property -1 [COMMODITY] {[COST] USD, [PURCHASE_DATE]}
Assets:RealEstate:CapitalImprovements -[IMPROVEMENTS] USD
Assets:RealEstate:AccumDepreciation [ACCUM_DEPRECIATION] USD
Assets:Bank:Checking [NET_PROCEEDS] USD
Income:RealEstate:DepreciationRecapture -[RECAPTURE] USD
Income:RealEstate:CapitalGains:LongTerm -[LTCG] USD

; Example: Sell $400K property for $435K after $19,394 depreciation and $6K improvements
; Adjusted basis: $400,000 + $6,000 - $19,394 = $386,606
; Net proceeds: $435,000 - $26,100 selling costs = $408,900
; Total gain: $408,900 - $386,606 = $22,294
; Recapture: $19,394 (equals accumulated depreciation)
; LTCG: $22,294 - $19,394 = $2,900
2025-11-15 * "Sale" "Dispose property — recognize gain"
Assets:RealEstate:Property -1 PROP123MAIN {400,000.00 USD, 2024-03-15}
Assets:RealEstate:CapitalImprovements -6,000.00 USD
Assets:RealEstate:AccumDepreciation 19,394.00 USD
Assets:Bank:Checking 408,900.00 USD
Income:RealEstate:DepreciationRecapture -19,394.00 USD
Income:RealEstate:CapitalGains:LongTerm -2,900.00 USD

Refinancing Template

Payoff Old Mortgage, Create New

; Template: Refinance — payoff existing and create new mortgage
YYYY-MM-DD * "Refinance" "Payoff old mortgage, new [TERM]-year at [RATE]%"
Liabilities:Mortgage:OldLoan [OLD_PAYOFF] USD
Liabilities:Mortgage:NewLoan -[NEW_AMOUNT] USD
Assets:Bank:Checking [CASH_OUT] USD ; Cash-out amount (if any)
Expenses:RealEstate:ClosingCosts [REFI_COSTS] USD

; Example: Refinance from 7.0% to 5.5%, cash-out $15K
2025-06-01 * "Refinance" "Payoff old mortgage, new 30-year at 5.5%"
Liabilities:Mortgage:OldLoan 314,744.09 USD
Liabilities:Mortgage:NewLoan -330,000.00 USD
Assets:Bank:Checking 12,255.91 USD
Expenses:RealEstate:ClosingCosts 3,000.00 USD

Balance Assertion Templates

Year-End Reconciliation

; Template: Year-end balance assertions
YYYY-01-01 balance Assets:RealEstate:Property 1 [COMMODITY]
YYYY-01-01 balance Assets:RealEstate:CapitalImprovements [TOTAL_IMPROVEMENTS] USD
YYYY-01-01 balance Assets:RealEstate:AccumDepreciation -[TOTAL_DEPRECIATION] USD
YYYY-01-01 balance Liabilities:SecurityDeposit -[DEPOSIT_AMOUNT] USD

; Example: Year-end 2024 assertions
2025-01-01 balance Assets:RealEstate:Property 1 PROP123MAIN
2025-01-01 balance Assets:RealEstate:CapitalImprovements 6,000.00 USD
2025-01-01 balance Assets:RealEstate:AccumDepreciation -9,212.15 USD
2025-01-01 balance Liabilities:SecurityDeposit -2,400.00 USD

Post-Sale Assertions

; Template: Post-sale — all property accounts should be zero
YYYY-MM-DD balance Assets:RealEstate:Property 0 [COMMODITY]
YYYY-MM-DD balance Assets:RealEstate:CapitalImprovements 0 USD
YYYY-MM-DD balance Assets:RealEstate:AccumDepreciation 0 USD
YYYY-MM-DD balance Liabilities:Mortgage 0 USD
YYYY-MM-DD balance Liabilities:SecurityDeposit 0 USD
YYYY-MM-DD balance Assets:Bank:EscrowImpound 0 USD

; Example: Post-sale verification
2025-12-01 balance Assets:RealEstate:Property 0 PROP123MAIN
2025-12-01 balance Assets:RealEstate:CapitalImprovements 0 USD
2025-12-01 balance Assets:RealEstate:AccumDepreciation 0 USD
2025-12-01 balance Liabilities:Mortgage 0 USD
2025-12-01 balance Liabilities:SecurityDeposit 0 USD
2025-12-01 balance Assets:Bank:EscrowImpound 0 USD

Price Directive Templates

Quarterly Property Valuations

; Template: Quarterly property valuation
YYYY-MM-DD price [COMMODITY] [VALUE] USD

; Example: Quarterly valuations for 123 Main St
2024-03-15 price PROP123MAIN 400,000.00 USD
2024-06-30 price PROP123MAIN 405,000.00 USD
2024-09-30 price PROP123MAIN 412,000.00 USD
2024-12-31 price PROP123MAIN 418,000.00 USD
2025-03-31 price PROP123MAIN 425,000.00 USD
2025-06-30 price PROP123MAIN 430,000.00 USD

Sources for valuations: Zillow Zestimate, Redfin estimates, comparable sales, or professional appraisals.

Escrow Impound Refund Template

Post-Sale Refund

; Template: Escrow impound refund after property sale
YYYY-MM-DD * "Bank" "Escrow impound refund — remaining balance"
Assets:Bank:Checking [REFUND] USD
Assets:Bank:EscrowImpound -[REFUND] USD

; Example: Remaining escrow balance returned by lender
2025-11-30 * "Bank" "Escrow impound refund — remaining balance"
Assets:Bank:Checking 2,666.73 USD
Assets:Bank:EscrowImpound -2,666.73 USD

Usage Instructions

  1. Copy the relevant template for your transaction type
  2. Replace placeholders (shown in [BRACKETS]) with actual values
  3. Adjust account names to match your account structure (e.g., add property address to account path for multi-property portfolios)
  4. Calculate depreciation using: Building cost / 27.5 / 12 for monthly amount
  5. Document the land/building split in comments with the source (county assessor, appraisal, etc.)
  6. Verify calculations before finalizing entries, especially the sale gain decomposition

Best Practices

  • Use consistent naming conventions for vendors and descriptions
  • Record mortgage payments with the exact P&I split from your lender's amortization schedule
  • Track capital improvements separately from repairs — the tax treatment is different
  • Enter depreciation monthly for accurate interim financial statements
  • Use balance assertions at year-end to catch data-entry errors before tax filing
  • Keep price directives updated quarterly for portfolio valuation
  • Document the rationale for repair vs. capital improvement classification

These templates provide a solid foundation for real estate accounting in Beancount.io. Customize them based on your specific property, mortgage terms, and tax situation.