We live in an age of mobile-only bank accounts and online budgeting apps. And yet, figuring out how to transfer money from one bank to another without paying a fee can be surprisingly difficult.

The best option can depend on whether you want to transfer money between two accounts you own, or transfer money to someone else. The bank you have can also be important, as you may get slapped with a fee.

Here are the best ways to transfer money between banks, whether you bank in-branch or online.

Set Up a Bank-to-Bank Connection

A simple way to transfer money between two of your own accounts is to set up an electronic connection between the two. Once you do, you can use the Automatic Clearing House (ACH) network to move money from one account to the other.

To start, you’ll initiate the connection with the account where you want to transfer the money from and add the other bank account as a new connection or link. You may be able to do this quickly by signing into your second bank’s online account to confirm ownership.

If that’s not an option, you’ll have to share the receiving account’s routing and account numbers. The first bank will then send two test deposits for a few cents each and you’ll have to verify the amounts once those appear in the second account. It may take a few hours or a few business days to complete set-up this way.

Once your accounts are connected, you can transfer money from the first bank account to the other at any time. Although, it can take several business days for the transfer to be completed, depending on your bank’s policies.

You could also use this method to transfer money to someone else’s account. However, you’d need them to confirm their account information, and there are easier options available.

Write a Check

It may sound old-school, but writing a check can be a simple and free solution. You can write a check to yourself or to someone else, and many banks let you use a mobile app to electronically deposit. Although it can take several days for the check to clear, that’s also about how long you’d have to wait for an electronic transfer to be completed.

However, this isn’t a great solution if you want to transfer money to someone else’s account, but can’t meet them in person. Even if you’re going the mobile deposit route, most financial institutions require you to take a photo of the physical check with your smartphone. Without the check in hand, the other person won’t be able to deposit.

Use a Payment App as a Middleman

Another option is to use a payment app, such as Venmo, PayPal, or Google Pay, as an intermediary when you want to transfer money between banks.

To get started, you’ll need to create an account and connect it to your bank, which you can often do by signing into your online bank account through the app. You’ll then be able to send money from that account for free.

Payments apps can be one of the easiest ways to send money to others. Sometimes, you can also transfer money to yourself by “loading” money into your payment app account from one bank and then withdrawing it into your other account.

The downside is that if you’re sending money to someone else, they need to have the app as well. It can also take several days for money to transfer from the app to your bank if you don’t want to pay a fee.

Zelle can be a faster solution for transferring money to someone else’s bank account without a fee. However, since you can only link to one personal account at a time, you can’t use Zelle to transfer money between your accounts.

Watch Out for Fees and Limitations

As you compare options, consider fees and limitations.

For example, although direct bank-to-bank online transfers can be the simplest choice once you set up the connection, some banks and credit unions charge a fee each time you initiate an electronic transfer, particularly between two different financial institutions. The bank-transfer fee is generally only a few dollars, but it can add up if you repeatedly transfer money between banks, and there may be higher fees for expedited transfers.

There’s no fee for writing a check or sending money from a bank account using a payment app, but some apps do charge a fee if you try to send money using a credit card. Additionally, you may run into transfer limits with all of the electronic options.

Banks generally have a daily and monthly limit for how much money you can electronically transfer, and a separate limit for how much you can deposit using the mobile check deposit feature.

Payment apps also place a limit on how much you can send each week or month, although you may be able to increase this by verifying your identity in the app.

If you’re looking to transfer a large amount of money, your best option may be to write a personal check and physically deposit it into the receiving account. A wire transfer could be a fast electronic option, although there may be fees to send and receive wires.

While there are pros and cons to each of them, know that you have several options if you need to transfer money between banks and the best depends on where you bank, how quickly you need to send money, and how much you’re willing to pay in fees.