One possibility is to start a custodial Roth Individual Retirement Account, owned by your teenager. All you need is a custodial account with an adult co-signing (if the teen is under 18). That money can grow for many decades and come out tax-free 30 or 50 years down the road.
How much are we talking about? If the money were to grow at an average rate of 5% a year (which, of course, is not guaranteed, but is in line with long-term averages for a balanced portfolio), then a $5,000 contribution at age 19 would grow to $52,006 by age 67. If your child waits until age 25 to invest the same amount in a Roth IRA, under the same return assumptions, the balance at age 67 would be just $38,808.
If that contribution becomes a habit, the numbers become more interesting. A 19-year-old who maxes out on a $5,500 Roth contribution every year until age 67, under the same rate of return assumptions, would see the account grow to $1,164,985.
Suppose your teen decides to spend some of that money, or use it for college tuition. Parents and/or grandparents can match whatever contribution the child decides to make, to bring the total back up to $5,500. The money in a Roth or other retirement account doesn’t count toward the Fafsa financial aid form, so you don’t have to worry about compromising the teen’s financial aid eligibility. And having a hefty Roth IRA at retirement might address the possibility that Social Security won’t be around, or be as robust, when your kids eventually retire.