So many great tips here! I'll add just a tip about the USD... Don't wait until the last couple of week to go get some cash converted. If you see the dollar at a decent price you're comfortable with, go exchange whatever you can and then keep it locked up in your house. I, like many others, went the "free gift card from PC points" route for some spending money for my kids....
I sort of regretted it this time, because although we avoided conversion fees, the USD rate
had risen 3 cents by the time of our trip... I kept saying that if I had just used those point to get free groceries, and in turn put the saved grocery money aside to convert to USD at the time, I would have actually saved more money. If you don't like carrying cash, then it's another story... But definitely something to keep an eye on. I expect the dollar to go a little crazy this year with everything going on these days so it's nice to just go convert some while you see it "low".
And a second thing on the topic of the USD, I got a TD USD Credit card years ago that was included with the TD Borderless USD account.... Best decision I EVER made. From my rule above, I convert USD cash when I feel comfortable and store it in the Borderless account. And I use my USD Credit card while in the states to avoid any conversion fees. When I come home, I pay it off with the reserved funds from the Borderless account. I believe the account without any discounts is $4.95 USD per month (so around 60 per year), which is stillnway below many other standalone CC fees. I am a TD customer and they gave me a discount so I get it for only 1.95 a month, which makes it an even better deal. It's definitely worth having a 'safe' spot to reserve some USD funds and the included USD CC is a bonus.
If you're with a different bank, they may have similar options.