My kid’s 5th grade class had their end-of-year party last week - snacks, kids running wild, talk of summer camps (which aren’t cheap, and I’m not looking forward to paying for them again). Then I realized he only has seven years left before college. I’ve seen a lot of headlines lately about how expensive college has gotten, and it made me want to check where I actually stood instead of just assuming I was behind.
I have a 529 account, and I’ve contributed to it on and off for years - no target, no timeline, no annual plan, just whatever was left over after retirement accounts and taxable savings got funded. I checked the account balance after the party and found about $20,000 sitting in it. If I actually plan to use the 529 to pay for four years of college expense, I’m behind. Way behind.
That leads to three questions: what does a 529 actually get you, how much should be in one, and what’s a concrete plan to get there.
What a 529 actually gets you
Most of us know a 529 is “tax-advantaged” without ever having priced out what the tax advantage is actually worth in dollars. Contributions go in after-tax at the federal level, the same as a regular brokerage account, so there’s no federal benefit on contribution. Some states offer a deduction on contributions, but it’s usually a small additional tax benefit rather than the main benefit - a $4,000 annual deduction cap at a 5–6% state rate works out to somewhere around $200 - 240 a year, per kid, per account. Worth checking your own state’s specific rules, but that’s a separate benefit from the one this post focuses on, which is the larger tax benefit on capital gains when withdrawn.
To put a number on it: say you contribute $100,000 to a 529 plan and it grows to $200,000, meaning $100,000 of that account balance is gain. Pull the full $200,000 out of a 529 for tuition and none of the gain gets taxed. Pull the same amount from a taxable account and you owe capital gains tax on the $100,000 - for a high earner in the top bracket, that’s 20% federal long-term capital gains, plus 3.8% net investment income tax, plus whatever your state taxes on top, typically landing the combined rate somewhere between the mid-20s and low-30s depending on state. I’ll use a flat 30% for the math below, a reasonable round number for a high earner in a state with meaningful income tax. At that rate, the $100,000 gain would cost about $30,000 in total tax if it comes from a taxable account instead of a 529 plan.
That sounds like a good enough reason to contribute as much as possible. Not so fast. If the account ends up larger than what actually gets spent on qualified expenses, the leftover gets hit with ordinary income tax plus a 10% penalty on withdrawal, applied to the gain portion of the leftover. Every distribution out of a 529 plan - qualified or not - splits into basis (contribution) and gain using the same ratio, based on the account’s total contributions versus its total value at that moment, with no ability to choose which dollars come out first the way you could with a taxable account’s individually tracked lots. In the same $200,000 example, with $100,000 of that as basis, pulling $80,000 out for something other than school means $40,000 of it is gain, taxed at 37% federal for someone in the top bracket plus state income tax, and then hit again with the 10% penalty - a combined rate near 50% on that $40,000. That’s close to $20,000 gone to tax and penalty on an $80,000 nonqualified withdrawal - a worse outcome than if that money had never gone into a 529 plan at all and had just sat in a taxable account instead. Of course, there are other ways to use the overfunded portion for qualified expenses. The money can also go to a sibling, a future grandchild, or grad school with no tax or penalty at all. Since SECURE 2.0, up to $35,000 of unused funds can also roll into the beneficiary’s own Roth IRA over their lifetime, tax- and penalty-free - though only once the account has been open 15 years.
If you underfund the 529 plan, the money that would have gone into it sits in a taxable account instead, and any growth on that money gets taxed instead of coming out tax-free. This is the underfunding risk. If you overfund it, the unused gains get hit with ordinary income tax plus a 10% penalty when withdrawn for anything other than school. This is the overfunding risk, and the one just described above. Deciding how much to contribute to a 529 comes down to balancing these two opposite risks.
So how much should I contribute to a 529 plan?
This is the part that’s frustrating about most information about 529 plans available online. Everyone tells you to use one, and almost nobody tells you how much. The likely reason is that predicting a specific kid’s actual college cost years out is close to impossible. There are so many variables - private versus public colleges, in-state versus out-of-state tuition, one school’s aid package versus another’s - none of that is predictable this far ahead.
The way I resolved this was to stop trying to predict the number and instead define the one number I could actually be confident of. Not the cheapest possible outcome, since that almost guarantees underfunding. Not the most expensive college either - that increases the overfunding risk. The number that’s practical for my purpose is the minimum college expense amount I’m confident I’ll need no matter how things play out. Let’s call it the floor number.
For me that floor number is the 4-year expense of a solid in-state public university - the cheapest of the realistic options compared to private or out-of-state public schools. I will fund my 529 plan to this floor number, and if the actual cost lands above it, I will simply cover the difference from the taxable account. Sure, I give up the tax benefit on that gap, but I never end up holding 529 dollars with no qualified use. If the actual cost lands at or slightly below the floor, perfect!
Calculating the floor number
A solid in-state public university today - tuition, room, board, the rest of it - runs about $40,000 a year where I am. Data from National Center for Education Statistics (NCES) shows public four-year tuition rose an average of 4.8% a year from 2000–2022, and 2.6% in the most recent year in that data set (2022-2023). I used 4% as a middle-of-the-road planning assumption - below that 22-year average, above the most recent slowdown.
Seven years out, that $40,000 becomes about $52,637 in freshman year, then $54,743, $56,932, and $59,210 across sophomore through senior year, each escalated at 4%. The total four-year college expense comes to $223,522.
I set three rules to keep the contribution plan simple:
Contribute the same amount every year
Stop contributing once he’s actually in college
Have the account hit exactly zero after the last semester
No deliberate leftover for a Roth rollover or future grandkids - both felt like solving a problem I don’t have yet.
Contributions happen at the start of each year. The account then grows for the full year at 10%. In the four years there’s a college withdrawal - years 7 through 10 - that withdrawal comes out after that year’s growth, not before. I assumed a 100% S&P index portfolio for that 10% figure - an expected-return assumption, not a guaranteed one, and aggressive relative to a target-date glide path, but it matches how I invest everything else. Starting from the $20,000 already in the account, hitting the target takes $14,849 a year, or about $1,237 a month, contributed for seven years and then stopped.
One thing this plan doesn’t account for: it stays fully invested in the stock market straight through the four years it’s being spent, with no shift toward anything safer as those withdrawals get closer. I assumed a smooth 10% return every year - the average long-term nominal return of the S&P 500 over past decades. But markets don’t actually work that way. If a downturn hits in year 8 or 9, right as withdrawals are happening, the account could come up short of the tuition floor even though the cost estimate itself was exactly right. Many 529 plans offer an age-based or target-date option that automatically shifts more of the portfolio into bonds as the beneficiary gets closer to college, similar to a target-date retirement fund, specifically to guard against this. I stuck with 100% equities anyway, the same way I invest everything else, which means this plan is carrying more sequence-of-returns risk than a more conservative glide path would. That works for me specifically because I want the lower annual contribution a 10% assumption produces, and I have enough in the taxable account to cover a shortfall if a downturn actually hits during those years.
Putting the contribution and withdrawal schedule together, here’s what the account looks like year by year:
As the table shows, I will contribute $14,849 a year for the first seven years, and the contribution will stop in year 7, which is his freshman year in college. No additional contribution while he is in college. Withdrawal starts in the freshman year and runs through the senior year, each year matching the estimated annual college expense. The table also shows the portion of gain from each year’s withdrawal, which I will use to estimate the tax benefits in a moment. With this plan, the 529 account balance will drop to zero at the end of his four-year college.
A quick note on the calculation of the gain portion of each withdrawal. As mentioned earlier, the share of gain in each withdrawal is calculated based on the contribution ratio - the share of each withdrawal that’s contribution rather than gain - at the time of withdrawal. This ratio shifts every year in this plan: 64% of the year 7 withdrawal is contribution, dropping to 48% by year 10, because the account keeps growing and the contribution balance keeps getting drawn down after each withdrawal.
Across the four withdrawal years, about $99,577 of the total is gains rather than contributions. At a flat 30% tax rate, that $99,577 in gains works out to roughly $29,873 - call it $30,000 - of tax savings compared with funding the same college expense purely from a taxable account.
Where this leaves me
I now have an actual monthly number instead of an ad hoc leftover-savings habit: $1,237 a month, automated, checked once a year, then left alone. If it plays out the way it’s modeled, that funds a target worth close to $30,000 in tax saved. If he ends up somewhere more expensive than the in-state floor, the gap gets funded from the taxable account I’m already building anyway - no scrambling, no 529 dollars sitting around without a qualified use. If he ends up exactly at the school this was built around, the account runs to zero the semester he graduates.
What actually changed here wasn’t how disciplined I was about contributing. It was writing down an actual number instead of contributing whatever felt like enough. Nobody hands you that number - there isn’t one right answer, just a defensible one, and working mine out took an afternoon. If he wants grad school later, I’ll run the same exercise again, starting from wherever the account sits by then, probably zero. One floor at a time.
If you’ve got a 529 plan but no real plan for how to contribute - which was my situation until a few weeks ago - I’d like to hear what you find when you actually run the number. Leave a comment.
I am not a financial advisor. Nothing in this post is investment or tax advice.


