Post Office money order fees depend on the amount you're sending
The U.S. Postal Service charges a flat fee based on how much money the money order is for. As of 2024, a money order for $0.01 to $500 costs $1.45, and a money order for $500.01 to $1,000 costs $1.95. These prices can change, so check with your local Post Office or the USPS website before you go in.
You pay the fee when you purchase the money order at the counter. The fee is separate from the face value — if you want to send $100, you pay $100 plus $1.45 for the money order itself. Some people find this cheaper than a cashier's check at a bank, which often costs $5 to $15, while others prefer it because Post Offices are more widely available than banks.
Key Takeaways
- USPS charges $1.45 for money orders up to $500 and $1.95 for money orders from $500.01 to $1,000.
- You pay the fee at the time of purchase, in addition to the amount of the money order itself.
- Post Office money orders are generally cheaper than bank cashier's checks but more expensive than a personal check.
- Fees can change without notice, so confirm the current price before you visit.
Why the fee exists and what you get for it
The fee covers the cost of the money order form itself, the processing work, and the may provide that the funds are real. Unlike a personal check, which can bounce if your account doesn't have enough money, a money order is backed by the Postal Service. The recipient knows the money is there when they cash it.
This may provide is why money orders cost more than writing a check but are often required by landlords, utility companies, or anyone who needs proof that payment won't fail. The fee also funds the infrastructure that lets you buy a money order at nearly any Post Office in the country.
How to pay the fee
You bring cash, a debit card, or a credit card to the Post Office counter. Tell the clerk you want a money order and how much it should be for. The clerk will add the fee to your total and take payment. You'll receive the money order form, which you then fill out with the recipient's name and your name as the sender.
Some Post Offices may have limits on how many money orders you can buy at once or restrictions on payment method — a few locations still require cash only, though this is becoming less common. Call ahead if you're buying multiple money orders or if you're unsure whether your local Post Office accepts cards.
Comparing Post Office fees to other options
A bank cashier's check typically costs $5 to $15 per check and requires you to have an account at that bank. A money order costs $1.45 to $1.95 and requires no account. If you need to send money to someone who won't accept a personal check, a money order is usually the cheapest secure option.
Wire transfers through a bank or service like Western Union cost $15 to $50 or more, depending on the amount and destination. Online payment services like Venmo or PayPal are free but require both parties to have an account and may not work for formal payments like rent or utility bills. A money order remains the lowest-cost option for situations where the recipient specifically asks for one.
What happens if you lose a money order or need to cancel it
If you lose a money order before you send it, contact the Post Office where you bought it. You'll need to provide the receipt and the money order number. The Post Office can issue a replacement, though there may be a small fee for the replacement and you'll need to wait for the original to clear (usually 30 to 60 days) to confirm it wasn't cashed.
If you've already sent the money order and the recipient says they never got it, you can file a claim with USPS. This process takes time and requires proof of purchase. For this reason, many people send money orders by certified mail with return receipt, which adds a few dollars to the total cost but gives you proof of delivery.
Where to buy a Post Office money order
Any Post Office location sells money orders during business hours. You don't need an appointment. Most Post Offices are open Monday through Friday and have limited Saturday hours; some are closed on Sunday. A few grocery stores and check-cashing services also sell USPS money orders, though the fee is the same and you may wait longer.
If you're in a rural area or far from a Post Office, calling ahead to confirm they have money order forms in stock is a good idea. Occasionally a location runs out, though this is rare. You can also check the USPS website to find the nearest Post Office and its hours.
Frequently Asked Questions
Can I buy a money order online and pick it up at the Post Office?
No. USPS does not sell money orders online or allow you to pre-order them. You must go to a Post Office counter in person, bring payment, and purchase the money order on the spot.
Is the $1.45 fee the same at every Post Office?
Yes. USPS sets one national fee for money orders up to $500. Independent Post Offices or locations inside other businesses may charge slightly differently, so ask before you pay if you're at an unusual location.
What if I want to send more than $1,000?
You can buy multiple money orders. If you need to send $2,500, you could buy two $1,000 money orders and one $500 money order, paying $1.95 + $1.95 + $1.45 in fees. Some recipients prefer one payment, so check with them first.
Do I need ID to buy a money order?
No ID is required to purchase a money order at the Post Office. You do need to fill in your name and address as the sender, but the clerk won't verify it against a document.
Can I get a refund if I change my mind?
If you haven't sent the money order yet, you can return it to the Post Office for a refund of the face value, but the $1.45 or $1.95 fee is usually not refunded. Policies vary slightly by location, so ask the clerk before you leave the counter.