401k is NOT tax-deferred when you file canadian tax return. This is absolutely correct. You can find the related regulations from CRA website. When I moved to canada in 2001, I filed both US and Canadian tax returns that year, and 401k is NOT tax-deferred for canadian tax return.
So that means, you have to pay canadian tax for the amount of 401k you have contributed because canadian government treats that money as your regular income. In this case, you're actually under a circumstance of which: you pay canadian tax for your 401k contributed, and when you retired and then get money from your 401k account, you have to pay US tax for that. That's double taxed.
So that means, you have to pay canadian tax for the amount of 401k you have contributed because canadian government treats that money as your regular income. In this case, you're actually under a circumstance of which: you pay canadian tax for your 401k contributed, and when you retired and then get money from your 401k account, you have to pay US tax for that. That's double taxed.