Taxes are the least fun part of selling a home, but a basic understanding of how capital gains work avoids an unpleasant surprise after closing. This is general education, not tax advice, your CPA should confirm exactly how it applies to you.
The Home Sale Exclusion
If you've owned and lived in your home as your primary residence for at least two of the last five years, you can generally exclude up to $250,000 of gain from taxable income if you're single, or up to $500,000 if you're married filing jointly. For most sellers of a primary residence, this exclusion covers the entire gain and no tax is owed.
What Counts as "Gain"
Gain is your sale price, minus your cost basis, minus your selling costs. Cost basis starts with what you originally paid, plus the cost of qualifying capital improvements over the years, a new roof, a room addition, major system upgrades, not routine maintenance. For an inherited home, the basis usually "steps up" to the value on the date you inherited it rather than what the original owner paid, which I cover in more detail in my guide on selling inherited property.
When You Might Owe Tax
A few common situations: the property was an investment or second home rather than your primary residence, your gain exceeds the exclusion amount, or you didn't meet the two-out-of-five-years ownership and use test. Each of these has its own rules and exceptions, which is exactly why this is a conversation for a tax professional, not a blog post.
Talk to a Professional Before You List
This page covers the general shape of how capital gains work on a home sale. It is not tax advice, and it doesn't account for your specific financial situation, filing status, or any exceptions that might apply. Before you list, especially if your gain is likely to be significant, talk to a CPA or tax advisor so there are no surprises after closing.
See how stepped-up basis works for inherited property. See the full guide to selling your home.
Common Questions
Have a Specific Situation to Talk Through?
Every sale is a little different. Tell me what you're dealing with and I'll give you a straight answer, not a generic script.
Get in Touch