I’ve been dragging my feet on the release of my 2019 tax calculator for a while now. I think I updated it several months ago but I wanted to wait until TurboTax & TaxAct updated their tools so I could validate my spreadsheet against theirs. As of today, however, neither site has been updated for 2019. Given that 2019 is a few weeks away from ending, I don’t feel comfortable dragging my feet any more (tax planning must be complete by Dec 31, with the exception of IRA contributions). For the past many years my spreadsheet has been within a couple dollars of the values generated by TurboTax & TaxAct, so I have no reason to believe that this year will be any different.
You may download my spreadsheet here (link).
I suggest you take a few minutes to change your withholdings appropriately so you don’t end up with a massive refund/payment. It’s not hard to check. Remember:
tax refund = tax withholdings – tax liability (what my spreadsheet tells you)
The above tells us that tax refunds are not free money. Refunds are simply money that you’ve overpaid to the government and consequently earned 0% interest on (technically negative interest after accounting for inflation).
Last year my refund was $100. I was a bit disappointed in myself for being so far off. My goal this year is to be within $10. We’ll see if I get there. I think the only remaining uncertainty in my situation is the size of the December VTSAX dividend payment, but I’ve done my best to estimate that (1.8% dividend yield / 4 * size of VTSAX holdings). For salaried employees (most of us), there is basically zero uncertainty regarding our tax liability, though I guess a potentially large end-of-year bonus would be an exception.
When I did the above estimation procedure, I realized I’ve underwithheld about $3,500 in taxes for 2019. Absent any further action, I’d have to cut a check to the gov’t for $3,500 in April and pay a small penalty for having underwithheld so much (to avoid this penalty you need to withhold at least as much as last year’s tax liability OR at least 90% of the 2019 tax liability; absent intervention on my part, I would fail both of those conditions). To avoid this penalty, I’m planning on withholding $3,500 extra in my December paycheck by adjusting the relevant “Additional Federal WithHolding” box on my W4. Easy peasy.
$0 refund, here I come?
How to Use My Spreadsheet
Now is probably the appropriate time to remind the reader that this spreadsheet was born (ha!) while Mrs FP was giving birth to FC5 just over 5 years ago. The birthing process is somewhat slow and laborious (ha!), so I found myself with some extra time on my hands. The result was this spreadsheet, which is a labor (ha!) of love, born (ha!) by my disdain for the complexity of the US tax code.
I like to take complicated topics and make them simple to understand. I believe the sheet accomplishes this. Plug in your parameters, then look up your income and find your tax liability. Done.
Step 1: Enter relevant parameters in yellow. I haven’t gotten around to implementing the “head of household” logic. I should probably get around to that one of these decades.
Short term capital gains & non-qualified dividends are treated as ordinary income so you’ll simply add those to your “taxable wages” in the next step.
Step 2: Calculate your taxable wages = [gross wages + non-qualified dividends + short-term capital gains – (401k/403b/457 contributions + health insurance premiums + HSA/FSA))]
Step 3. Look up taxable wages in the first column of the table. I calculate the relevant standard/itemized deduction for you, so don’t subtract that. BTW, 95% of us now take the standard deduction.
The second column tells you what your tax liability is. If negative, congrats, the government owes you money (even if you withheld $0 taxes). If positive, then you have a tax liability. But this still doesn’t tell you the size of your refund.
Let’s say you made $110k this year and have 5 kids. The above tells me your tax liability is $549. If you look at my paystubs and find you will withhold $3,549 over 2019, you know you will get a $3k refund. If you wanted to avoid this refund, you’d change your withholdings on your W4.
The right-most column tells you your effective marginal tax rate after accounting for all the different brackets as well as the phasing-in and out of various credits. In the above example, the effective marginal rate is bouncing around a bunch over the $10k income range shown. You’d never realize this underlying complexity until you see it formally modeled. It’s this right-most column that’s the most important number in the tax code, and the one which should guide your “roth” vs “trad” decisions.
The above chart simply reproduces the table in graphical form. Blue line is tax liability (left axis). The green line is the effective marginal tax rate (right axis). It bounces around a decent amount. The most unintuitive part is that, due to the EITC, low/moderate income households with many kids face high effective marginal rates as they glide down the EITC path. The above image clearly illustrates that households with 5 kids making $50k face higher effective marginal tax rates (29.5%) than those making $345k (22%) – a bizarre artifact of the most complicated tax code I can imagine.
<end of tutorial>
Features built into the spreadsheet:
- Married Filing Jointly or Single Filers (no head of household yet)
- Standard vs Itemized deduction (mortgage interest, charitable contributions, etc)
- AMT (now essentially dead)
- Student loan interest deduction
- Additional Medicare Tax (the liability side, not the weird withholding inconsistency which results in a $450 overwithholding for me)
Known limitations of the spreadsheet
- Doesn’t model anything ACA related (importantly, fails to model ACA subsidy cliff)
- Doesn’t include saver’s credit
- Doesn’t handle phasing in/out of TIRA deductibility (assumes 100% deductible)
But wait, there’s more!
If you haven’t already, download my 18-month-old-VERY-rough-draft “book” to learn everything you ever wanted to know about the U.S. tax code here (link). Start at page 11 for the tax stuff. I still need to finish this some day. Thanks to those who have provided feedback already.
- 11/19/19 updated the CTC. A huge thanks to Scott & MDM for helping me out here. I relied heavily on MDM’s tax genius status to fix my sheet. A huge thanks to him! For those that want to nerd out to his spreadsheet, you should. Check it out here: https://forum.mrmoneymustache.com/forum-information-faqs/case-study-spreadsheet-updates/
You’d have to be crazy to take tax advice from an internet stranger. You should definitely hire a CPA. Calculating your taxes is scary and complicated. No reasonable person can 1.) calculate taxable income = gross income – 401k contributions – health insurance premiums – HSA/FSA contributions, then 2.) subtract out standard vs itemized deduction, then 3.) compute their tax liabilities based on publicly available tax tables. That is crazy talk! If you underwithhold based on the values of my bogus spreadsheet and face penalties for doing so, it’s not my fault. I have no idea what I’m talking about. My spreadsheet just spits out random numbers, so you’d have to be crazy to make real-life decisions based on it. This is all way too complicated for you to compute on your own in less than five minutes.