Assume your RRSP is full, and you must buy U.S. stock in TFSA or in an unregistered [aka non-registered] account. The default answer seems to be TFSA!

If you have an RRSP, a TFSA and a non-registered account, you may be better off with your TFSA in U.S. stocks despite the 15% tax withholding.

But when might an unregistered account be better?

1 Answer 1


Holding U.S. stocks in a TFSA does not avoid the U.S. withholding tax on dividends, as there is no tax treaty covering investments in a TFSA, while there is a treaty covering investments held in an RRSP. Dividends are primarily why holding U.S. stocks in an RRSP can be preferable to holding the same stocks in a TFSA. If the stock pays no dividend, there is no such advantage, although a stock could start paying a dividend in the future. I would suggest if you're holding a U.S. stock primarily for the dividend income, then it could be best held inside an RRSP.

If you buy a U.S. stock for your TFSA and then later sell it for a gain, that gain does not result in capital gains tax being owed — whereas in a non-registered account you would incur capital gains tax on such a sale. And in an RRSP, you would eventually pay tax on your gains, as all the money inside an RRSP is tax-deferred (not tax free) and so will eventually be shared with the government. So gains are a case where the TFSA can have an edge over both non-registered accounts as well as RRSPs.

So if you're planning on having any ten-baggers, the TFSA could be the better account to hold them in — even if there is some miniscule dividend being paid and 15% of that being pocketed by the U.S. IRS through the withholding tax. IMHO, I'd rather give the IRS 15% of inconsequential dividends from my ten-bagger than have to share my ten-bagger's gains with the Canada Revenue Agency at normal income tax rates! Because that's what would eventually happen when withdrawing the ten-bagger's proceeds from an RRSP.

So to get to your question: Is there a situation where holding a U.S. stock in a non-registered account is better than holding in a TFSA (or RRSP)? Yes, there are a few cases I can think of:

  1. If you have no RRSP and TFSA contribution room left, holding your U.S. stock in a non-registered account is better than deliberately over-contributing to either your TFSA or RRSP and suffering the exorbitant excess contribution penalties.

  2. If you were to somehow know that you would eventually sell the U.S. stock at a loss, in a non-registered account the loss would be a capital loss for tax purposes and could be used to offset taxable capital gains in the same or some previous years (up to a limit.) Losses realized in a TFSA or RRSP cannot be used to offset taxable capital gains.

  3. If you hold marginable U.S. stocks in a margin account (one kind of non-registered account), the stocks can increase your available margin — i.e. the amount of funds you can borrow from your broker to purchase more stock. You can't do this in a TFSA or RRSP. However, there are risks associated with leveraged investing and this isn't suitable for many investors.

You must log in to answer this question.