Post Office Money Order Fees

The U.S. Postal Service charges between $1.45 and $6.45 per money order, depending on the amount. For orders up to $500, you pay $1.45. For $500.01 to $1,000, the fee is $6.45. These are the standard rates, though some post offices may charge slightly differently based on local contracts.

You pay the fee at the time you purchase the money order — it's added to the total amount you hand over. So if you're sending $200, you'll actually pay $201.45 at the counter. The fee goes to the Postal Service; it doesn't appear on the money order itself.

Fees can change, so ask at your local post office or check USPS.com before you go if you're sending a large amount. The difference between the two tiers matters most if you're near the $500 mark.

Key Takeaways

  • Post office money orders cost $1.45 for amounts up to $500, and $6.45 for amounts from $500.01 to $1,000.
  • You pay the fee when you buy the money order, not when it's cashed, and the fee is separate from the amount being sent.
  • Some post offices may have slightly different rates, so confirm the exact fee before you purchase.
  • Money orders have a maximum value of $1,000 per order, so larger payments require multiple orders and multiple fees.

When the Post Office Fee Compares to Other Options

A bank money order typically costs $5 to $10, so the Post Office is cheaper for smaller amounts. A wire transfer through your bank runs $15 to $30 but moves the money in hours rather than days. A cashier's check costs $10 to $15 and doesn't expire, whereas a money order is valid for one to three years depending on state law.

If you're sending under $500, the Post Office fee of $1.45 is hard to beat. For amounts over $500, you'd need two money orders ($12.90 total), which might make a wire transfer or cashier's check worth considering — especially if speed matters.

What Happens if You Lose or Don't Use a Money Order

If you lose a money order before you cash it, you can file a claim with the Postal Service. You'll need the receipt, the money order number, and the amount. The process takes time — typically 30 to 60 days — and you may have to wait that long before getting a replacement or refund.

If you buy a money order and then don't need it, you can cash it at any post office or bank. There's no penalty for cashing it early or late, as long as it hasn't expired. Money orders don't expire immediately, but the window varies by state, so don't sit on one indefinitely.

Why the Fee Exists and How It's Set

The Postal Service charges a fee because money orders are a service — they may provide the funds, process the transaction, and maintain records in case of disputes. The fee covers the cost of the paper, the equipment, the staff time, and the liability the Post Office takes on by backing the money order.

USPS sets rates nationally, but they review them periodically. Rates have increased over the past decade as operational costs have risen. The two-tier system (under $500 and $500 to $1,000) reflects the fact that larger orders carry slightly more risk and require more careful handling.

How to Minimize Money Order Costs

If you're sending money regularly, compare the total cost of multiple money orders against a single wire transfer or cashier's check. For a $1,500 payment, two Post Office money orders cost $7.90 total, which is still cheaper than most wire transfers.

If you have a bank account, ask your bank about their money order or cashier's check fees. Some banks offer free or low-cost cashier's checks to account holders. Credit unions often have lower fees than banks, so if you're a member, check there first.

For one-time small payments, the Post Office is usually the cheapest route. For recurring payments or amounts over $1,000, a wire transfer or automatic payment setup may save money in the long run.

Where to Buy and Pay the Fee

You buy money orders at any Post Office location during business hours. Bring cash or a debit card — most post offices accept both. You'll need to fill out a short form with the recipient's name and your name, and the clerk will print the money order and collect the fee.

Some grocery stores and convenience stores also sell money orders, often at lower fees than the Post Office. Walmart, for example, charges around $0.70 to $1.00 per money order. If you're already shopping there, the savings add up, especially if you buy multiple orders.

Frequently Asked Questions

Can I get a refund if I change my mind about buying a money order?

Yes. If you haven't given the money order to anyone, you can return it to the post office where you bought it and get a refund of both the amount and the fee. Bring your receipt. If you've already cashed it or given it away, you cannot get a refund.

Do I have to pay the fee if I'm sending the money order to someone else?

You pay the fee when you buy it, regardless of who receives it. The person cashing the money order does not pay a fee — they receive the full face value. So if you send a $200 money order, you paid $201.45, but the recipient gets $200.

Is there a way to avoid the Post Office fee altogether?

You can avoid the fee by using a different payment method — a bank transfer, a wire transfer, a check, or a payment app like Venmo or PayPal. But if the recipient specifically needs a money order, you'll have to pay the fee somewhere. Grocery stores and convenience stores often charge less than the Post Office.

What if I need to send more than $1,000?

You'll need to buy multiple money orders. For $2,000, you'd buy two $1,000 orders and pay $6.45 twice, for a total fee of $12.90. Some people use wire transfers instead for larger amounts, even though the bank fee is higher, because it's faster and requires only one transaction.