Post Office money order fees depend on the amount and where you buy it
The United States Postal Service (USPS) charges a flat fee for each money order, regardless of whether you're sending it across town or across the country. As of 2024, the fee is $1.45 for money orders up to $500, and $2.00 for money orders from $500.01 to $1,000. You pay this fee at the time of purchase, in addition to the face value of the money order itself.
The fee structure has remained stable for several years, but USPS can change rates without notice. If you're buying multiple money orders, the cost adds up quickly — ten $100 money orders will cost you $14.50 in fees alone. Knowing this upfront helps you decide whether a money order makes sense for your situation, or whether another payment method might be cheaper.
Key Takeaways
- USPS charges $1.45 for money orders up to $500 and $2.00 for money orders between $500.01 and $1,000.
- You pay the fee at purchase time, on top of the money order amount itself.
- Banks and check-cashing services often charge different fees, sometimes lower and sometimes higher, so comparing options saves money on larger transactions.
- Money orders have a maximum face value of $1,000, so amounts larger than that require multiple orders and multiple fees.
How the fee compares to other payment methods
A bank money order typically costs $5 to $10, making USPS significantly cheaper for small amounts. However, if you have a checking account and can write a check, there is no fee at all — though the recipient has to wait for it to clear, and you lose the may provide payment protection that a money order provides.
Wire transfers through a bank run $15 to $30 and are faster than mail, but cost more. Check-cashing services sometimes sell money orders for $1 to $3, which can undercut USPS, but availability varies by location and they may charge extra if you don't have an account with them. For a single small payment under $100, USPS is usually the cheapest option. For larger amounts or multiple payments, the math changes.
What happens if you need to replace a lost or damaged money order
If a money order you purchased never arrives or gets damaged in the mail, USPS can issue a replacement. You'll need the receipt (the stub you kept when you bought it) and proof that the original was not cashed. The replacement itself is free, but the process takes time — typically 30 to 60 days — because USPS has to verify the original was not deposited.
This is why keeping your receipt is critical. Without it, you cannot prove you bought the money order, and USPS cannot replace it. If the money order was already cashed by someone else, you have no recourse through USPS; the money is gone. This protection gap is one reason some people prefer wire transfers or certified checks for large amounts.
Fees at different USPS locations and online
The fee is the same whether you buy a money order at a Post Office, a postal contractor location (like some grocery stores or pharmacies), or through certain online services. However, not all postal contractors sell money orders — some handle mail only. Call ahead or check the USPS website to confirm a location sells them before you go.
You cannot buy a money order through USPS.com or the mobile app. You must go in person to a location that sells them. This means you cannot avoid the trip by ordering online, and you cannot buy them at odd hours if your local Post Office has limited hours.
When multiple money orders cost more than alternatives
If you need to send $2,500, you must buy three money orders: two for $1,000 and one for $500. That's $1.45 + $2.00 + $2.00 = $5.45 in fees. A wire transfer might cost $20 to $30, but it arrives the same day and the recipient does not have to deposit it anywhere — it goes straight into their account. For business payments or time-sensitive transfers, the extra cost of a wire may be worth it.
Similarly, if you're paying a bill and your bank offers bill pay for free, that is cheaper than buying a money order. The trade-off is that bill pay takes several business days to arrive, while a money order in the mail takes 3 to 5 business days, and the recipient has to deposit it themselves. The fee difference is small enough that convenience often matters more.
Why USPS money orders cost less than banks
USPS money orders are subsidized by the postal service as part of its mission to provide financial services to underserved communities. Banks treat money orders as a service they provide to customers, not a core function, so they charge more to cover staff time and processing. This is why a Post Office money order for $500 costs $1.45, while the same money order at a bank might cost $5 to $10.
The trade-off is convenience. A bank can issue a money order while you're already there for other services, and some banks waive the fee for customers with certain account types. USPS requires a separate trip, but the lower fee makes up for it if you're buying just one or two.
Frequently Asked Questions
Can I buy a money order with a credit card?
No. USPS requires cash or a debit card for money orders. Credit cards are not accepted. This is a federal rule designed to prevent fraud and money laundering. If you only have a credit card, you'll need to withdraw cash first or use a different payment method.
Do I have to pay the fee if the money order is never used?
Yes. The fee is charged at purchase, not at deposit. If you buy a money order and never send it, you've paid the fee with no benefit. You can cash an unused money order at any bank or Post Office, but you'll get back only the face value, not the fee you paid.
Is there a discount if I buy multiple money orders at once?
No. USPS charges the same per-order fee regardless of how many you buy in one transaction. If you need ten $100 money orders, you pay $1.45 × 10 = $14.50 in fees, with no bulk discount.
What if the Post Office makes a mistake on the money order?
If USPS writes the wrong amount or recipient name, tell the clerk immediately. They can void it and issue a replacement at no charge. Once you leave the Post Office, correcting errors becomes much harder and may require the replacement process, which takes 30 to 60 days.
Can I get a refund if I change my mind after buying a money order?
Yes, but only if you have not left the Post Office yet. The clerk can void it and refund your money, including the fee. Once you leave, you own the money order and cannot get the fee back, though you can cash it for the face value.