Article Badge Image
Updated: Sep 06, 2023

Compare Fees To Find Where You Should Get A Money Order

Use our money order fee comparison of both the post office and major U.S. banks to learn how and where to get a money order, and save at the same time.
Today's Rates
Super boost your savings with highest rates.
Savings Accounts up to:
5.35% APY
Western Union
Western Union

Compare Money Order Fees at Banks & Retailers

Company Fees Limits
Chase $5 $1,000
Bank of America $5 $1,000 Not available in Arizona, California, Nevada.
Wells Fargo $5
Citibank $5
U.S. Bank $5
Truist $5 for customers $10 for non-customers
PNC Bank $5
BMO Harris Bank $5 $1000
TD Bank $5
Capital One Does not issue money orders
Regions Bank $1 $1000
Santander $5
BMO Harris Bank $5 $1000
M&T Bank $6
CVS $0.70 $500
USPS $1.20 $500
Walmart $0.70 $1,000

Since many financial institutions do not list an amount for money order fees, the best way to determine how much your local bank charges is to find a nearby branch.

Most banks charge $5, $10, or 10 percent of the total amount on the money order. The local (Los Angeles) Wells Fargo, Chase, and U.S. Bank charge a flat rate of $5 and only offer domestic money orders.

Money orders are waived by some banks if you have a special account.

For instance, Wells Fargo waives money orders if you have a preferred checking or Wells Fargo At Work Checking Account.

Chase will waive the fee if you have a premiere or private account with the bank. U.S. Bank waives the fee for those that have a platinum checking account.

Tip: If you have a higher tiered checking account, check to see if your bank offers free money orders.

Western Union Money Order Fees

Just like with banks, Western Union does not provide a set amount for a money order.

A representative explained the rate varies by location. However, in general, these fees could range anywhere from 50 cents to $1.50 and more.

International money orders are available, but it is suggested to verify with the financial institution where the funds will be deposited, in order to ensure the transaction can be completed.

As an example, three local Los Angeles Western Unions were contacted by MyBankTracker. Here are the fees:

  • Location A: 55-cent fee for money orders between a penny and $500, and $1 fee for money orders between $500.01-$1,000
  • Location B: 80-cent fee for money orders between a penny and $500, and $1 fee for money orders between $500.01-$1,000
  • Location C: 75-cent fee for money orders between a penny and $299.99, and $1 fee for money orders between $300-$1,000

You don't need an account to get a money order from Western Union.

Western Union also allows customers to deposit money orders to withdraw cash. Most banks require that you have an account with them to get a money order.

An additional upside is that Western Unions in your area are usually open every day, including weekends, whereas most banks and the post office are closed on Sundays.

The fee associated with cashing money orders from Western Union ranges between 1 percent to 3 percent, depending on the amount.

A representative informed me to go into a local branch to find out how much will be taken out. This is because the rates fluctuate so much from location to location.

Tip: To find the best rate at Western Union when cashing your money order, call several locations in your area and find the one that with the lowest fees.

USPS Domestic and International Money Order Fees

The current price for domestic money orders at USPS are as follows:

USPS Money Orders

Fee Maximum Amount of Check
$1.20 $500
$1.60 $1,000
$0.40 All postal money orders issued through military facilities

Domestic money orders can only be purchased for up to $1,000. Anyone that needs to send more than $1,000 will need to get two separate money orders.

Tip: If you need to send more than $1,000 on a regular basis, consider opening a checking account at a bank so you can obtain cashier's checks.

International money orders cost $4.50 for any amount.

International money orders from the United States Postal Service can be cashed in 29 countries.

If you are going to attempt to cash a money order at the post office, you may run into difficulty. USPS may not be able to help you to cash a money order if the amount exceeds $1,000. Someone attempting to cash a money order worth tens of thousands of dollars or more should consider visiting a bank.

Other places to get money orders

Grocery stores and department stores also offer inexpensive money orders. Walmart money orders are 60 cents and has a limit of up to $1,000. CVS Pharmacy also offers money orders for 99 cents, with a maximum value of $500.

Be aware of money order scams

If you receive a money order in the mail from someone who you are not familiar with, chances are it's a fake.

Educate yourself on how to detect a fake money order, that way you're never tricked into cashing a fake money order.

If you do end up cashing a fake money order, you may be liable for the money spent when it comes back rejected. It could take up to a couple of weeks for your bank to determine whether or not a money order is fake.

Read More: See MyBankTracker's Best Banks Picks of the Year

Choose What's Right for Your Money. Get Free Financial Advice. Find the Best Banks