I'm planning to stay in the U.S. for 3 to 5 years. My company offers a 4% match for 401k contributions. Is it worth investing in a 401k plan with all the fees and penalties? Or is there a better way to save?
You should fund the 401(k) and get the 4% matching because it's free money.
When you leave the US, patience is a virtue to get the money penalty-free:
- Rollover to an IRA.
- Take "Substantially equal periodic payments" for 5 years or until age 59 1/2, whichever is longer, to avoid the 10% penalty. A long payout time for someone starting out, but penalty-free.
Or you can take the 10% penalty and take out the money all at once. You'll still owe income tax in either case, something to keep in mind if an early withdrawal would put you into a higher tax bracket. Also see this article: Can Foreigners Withdraw 401(k) Funds Early?
Another thing to keep in mind is that you never know what might happen -- you could fall in love with the US (or someone in the US, [smiley face]), apply for residency, decide to stay a long time, and that 401(k) with the 4% matching might turn out to have been a very nice thing when you retire.