How to Send Money From the US to Canada
The main ways to transfer money to Canada from the US
You can move money to Canada through a bank wire, a money transfer service like Wise or OFX, your bank's own international transfer service, or a cash pickup service. Each route differs in speed, cost, and the exchange rate you receive. A bank wire takes 1 to 5 business days and costs $15 to $50, but you need the recipient's bank details. Money transfer services often charge less and give better exchange rates, but may take 1 to 3 business days. Your own bank's service is convenient if you already bank there, though the exchange rate is usually worse than a specialist service.
The choice depends on how much you're sending, how fast you need it to arrive, and whether the recipient needs cash when ready or can wait for a bank deposit. If you're sending under $500, a money transfer service usually costs less than a wire. If you're sending over $5,000, the percentage cost of a wire becomes smaller, so a wire may be cheaper overall.
Key Takeaways
- Bank wires arrive in 1 to 5 business days and work best for larger amounts, but charge a flat fee of $15 to $50 regardless of the sum.
- Money transfer services like Wise, OFX, and Remitly often charge lower fees and offer better exchange rates than banks, though they may take 1 to 3 business days.
- You need the recipient's full name, Canadian bank account number, and routing number (called a transit number in Canada) to send a wire or bank transfer.
- Cash pickup services let the recipient collect money at a physical location within hours, but charge higher fees and exchange rates than bank transfers.
- Compare the total cost—fee plus exchange rate markup—across at least two services before sending, because the cheapest option changes based on the amount and destination bank.
Bank wires: what you need and how long they take
A bank wire is a direct transfer from your US bank account to a Canadian bank account. You initiate it at your bank's branch or online, and the money moves through the banking system to the recipient's bank. Most US banks charge $15 to $50 to send an international wire, and the money usually arrives within 1 to 5 business days, though some banks take longer.
To send a wire, you need the recipient's full legal name, their Canadian bank account number, the bank's routing number (called a transit number in Canada), and the bank's SWIFT code. You also need to know the recipient's address. Your bank will ask for all of this before processing the wire. Once sent, a wire cannot be reversed, so confirm the details are correct before you authorize it.
The exchange rate on a bank wire is set by your bank, not by you. Banks typically mark up the mid-market rate by 1 to 3 percent, meaning you receive fewer Canadian dollars per US dollar than the real-time rate. If you're sending $1,000, that markup could cost you $10 to $30 in lost value.
Money transfer services: lower fees and better rates
Services like Wise, OFX, Remitly, and MoneyGram let you send money online without going to a bank branch. You create an account, enter the recipient's bank details, and the money moves to their Canadian account in 1 to 3 business days. Fees are usually $2 to $15 for amounts under $5,000, and the exchange rate markup is typically 0.5 to 1.5 percent—lower than banks.
Wise is known for using the real mid-market exchange rate with a small markup, so you know exactly what rate you're getting before you send. OFX and Remitly work similarly. All three let you lock in an exchange rate for a set time (usually 24 to 48 hours) so you know the exact amount the recipient will receive before the money leaves your account.
The trade-off is speed. Money transfer services are slightly slower than bank wires because they batch transfers and move money through different banking channels. For most people sending under $10,000, the savings in fees and exchange rate markup outweigh the extra day or two of wait time.
Your bank's international transfer service
Many US banks offer their own international transfer service, sometimes branded as "international money transfer" or "global transfers." You send the money through your bank's app or website, and it arrives in the recipient's Canadian account in 2 to 5 business days. The fee is usually $15 to $35, similar to a wire.
The advantage is convenience—you're already logged into your bank's system. The disadvantage is that the exchange rate is typically worse than a money transfer service, and sometimes worse than a wire. Call your bank and ask what exchange rate markup they explore before you send, so you can compare the total cost to other options.
Cash pickup services: fast but expensive
Services like Western Union and MoneyGram let you send money that the recipient can pick up in cash at a physical location in Canada within hours. You pay the fee upfront, and the recipient goes to a participating store or agent location with ID to collect the cash. This is useful if the recipient needs money when ready and doesn't have a bank account, or if you need to send money without a bank transfer.
The cost is higher than bank transfers. Fees for a $500 transfer can be $20 to $40, and the exchange rate markup is often 2 to 4 percent. For a $1,000 transfer, you might pay $30 to $60 in total fees and exchange loss. Cash pickup is best used for small amounts or emergencies, not for regular or large transfers.
What information you need from the recipient
For a bank transfer or wire, you need the recipient's full legal name (as it appears on their bank account), their Canadian bank account number, and their bank's transit number. The transit number is a five-digit code that identifies the specific branch. You also need the bank's SWIFT code, which is a four-letter code that identifies the bank itself (for example, ROYCCATT for Royal Bank of Canada).
The recipient can find this information on their bank statement, in their online banking portal, or by calling their bank. Ask them to double-check the account number and transit number before you send, because a mistake will delay the transfer or send the money to the wrong account.
For cash pickup services, you only need the recipient's full name and the amount they're expecting. They'll need a valid ID to pick up the cash.
Comparing costs: the real numbers
The cheapest option depends on the amount you're sending. For a $500 transfer, a money transfer service usually costs $3 to $8 total (fee plus exchange markup), while a bank wire costs $20 to $50 with a worse exchange rate—so the money transfer service saves you $15 to $40. For a $5,000 transfer, a bank wire's flat fee becomes a smaller percentage of the total, but the exchange rate markup still makes a money transfer service cheaper in most cases.
To compare, get a quote from at least two services. Most services show you the fee, the exchange rate, and the exact amount the recipient will receive before you confirm. Write down the total amount the recipient gets from each option, and choose the one where they receive the most Canadian dollars.
Timing and what to tell the recipient
Bank wires and transfers take 1 to 5 business days, depending on the service and the recipient's bank. Weekends and Canadian holidays can add delays. Money transfer services are usually faster than bank wires—often 1 to 3 business days. Cash pickup is fastest, usually within hours.
Tell the recipient how much you're sending, which service you're using, and roughly when they should expect the money. If you're sending a wire, give them the reference number so they can track it with their bank if it doesn't arrive on time. Most banks let you look up a wire's status online or by calling customer service.
Frequently Asked Questions
Do I need to report large transfers to the US government?
If you send more than $10,000 in a single transfer, your bank must file a Currency Transaction Report with the US government. This is routine and not a problem—it's just a record-keeping requirement. If you send multiple transfers that add up to more than $10,000 in a short time, the bank may ask questions to make sure you're not trying to avoid the reporting requirement.
What's the difference between a transit number and a SWIFT code?
A transit number is a five-digit code that identifies a specific Canadian bank branch. A SWIFT code is a four-letter code that identifies the bank itself, not the branch. You need both for a wire: the SWIFT code tells the US banking system which Canadian bank to send the money to, and the transit number tells that bank which branch to deposit it into.
Can I send money to a Canadian credit union instead of a bank?
Yes, but you'll need the credit union's SWIFT code and the recipient's account number and transit number, just like a bank. Not all credit unions accept international transfers, so ask the recipient to confirm their credit union accepts wires from the US before you send.
What happens if I send the money to the wrong account number?
The money will go to whatever account number you provided. If it's a real account at the recipient's bank, the money will sit there until the account holder reports it or the bank investigates. Contact your bank or the money transfer service when ready and ask them to recall the transfer. They may be able to reverse it, but this takes time and isn't always possible.
Is it cheaper to use a credit card to send money to Canada?
No. Credit card companies charge high fees and poor exchange rates for international transfers, often 3 to 5 percent or more. A bank transfer or money transfer service is always cheaper. Some credit cards let you transfer a balance to a Canadian account, but this is meant for paying off debt, not moving money, and the fees are high.
This guide is for general information only and is not medical, financial, legal, or other professional advice. For decisions specific to your situation, consult a qualified professional. See our Editorial Policy.