Post Office Money Order Fees
The U.S. Postal Service charges between $1.45 and $2.00 per money order, depending on the amount. Orders up to $500 cost $1.45; orders from $500.01 to $1,000 cost $2.00. The Post Office does not charge extra to cash a money order you receive — only to issue one.
These fees are set by USPS and do not vary by location or post office branch. You pay the same amount whether you're in a rural area or a major city. The fee is added to the face value of the money order, so if you want to send $100, you'll pay $101.45 total (assuming the amount is under $500).
Money orders are issued on the spot when you visit a post office window. You do not need a bank account, credit check, or prior relationship with USPS. You hand over cash or a debit card, provide the recipient's name and address, and receive the money order immediately.
Key Takeaways
- USPS money orders cost $1.45 for amounts up to $500 and $2.00 for amounts from $500.01 to $1,000.
- The fee is the same at every post office location and does not change based on where you live or the recipient's location.
- You pay the fee upfront when you purchase the money order; there is no separate charge to cash it later.
- Money orders are available during regular post office hours and require only cash or a debit card — no bank account needed.
How the Fee Compares to Other Payment Methods
A money order costs less than a wire transfer at most banks, which typically run $15 to $30 per transaction. However, it costs more than writing a check, which is free if you have a checking account. If you need to send money to someone who cannot receive a wire transfer or does not have a bank account, a money order is usually cheaper than a cashier's check, which banks charge $10 to $15 to issue.
The trade-off is speed. A money order takes several business days to reach the recipient by mail, whereas a wire transfer arrives the same day. If the recipient lives nearby, you can hand-deliver a money order and avoid postage altogether, making it one of the cheapest ways to transfer cash securely.
What Happens When You Buy a Money Order
When you purchase a money order at the post office, USPS prints a receipt for you and records the transaction. The money order itself has a serial number, which you can use to track it if it goes missing in the mail. You keep the receipt; the recipient gets the money order in an envelope.
The recipient cashes the money order at their own bank, credit union, or post office. They do not pay a fee to cash it. If the money order is lost or stolen before it reaches them, you can file a claim with USPS using your receipt and the serial number. USPS will investigate and replace the money order if it was never cashed.
Money orders are safer than sending cash through the mail because they are tied to a specific recipient's name. If someone intercepts the envelope, they cannot cash the money order without forging the recipient's signature.
Limits on Money Order Amounts
The Post Office limits each money order to $1,000. If you need to send more than $1,000, you must purchase multiple money orders. For example, to send $2,500, you would buy two $1,000 money orders and one $500 money order, paying $1.45 + $2.00 + $2.00 = $5.45 in fees total.
This limit exists for security and fraud-prevention reasons. It does not prevent you from buying as many money orders as you want in a single visit — you just pay the fee for each one. Some post offices may ask questions if you purchase a very large number at once, as part of their monitoring for money laundering, but there is no official daily or weekly limit.
When to Use a Money Order Instead of Other Options
A money order makes sense when the recipient does not have a bank account or when you need a paper record of payment. Landlords often request money orders because they create a clear trail and cannot bounce like a personal check. If you are paying a bill by mail and the company does not take credit cards or bank transfers, a money order is a standard choice.
Money orders are also useful when you do not have a checking account yourself. Unlike checks, which require a bank, anyone can buy a money order with cash. If you are unbanked or prefer not to use a bank, money orders let you send secure payments without one.
However, if both you and the recipient have bank accounts, a free bank transfer or bill-pay service is faster and cheaper. If you need the money to arrive the same day, a wire transfer is worth the higher fee. Money orders are best for situations where security, a paper trail, and low cost all matter more than speed.
Where to Buy a Money Order Besides the Post Office
You can also buy money orders at many grocery stores, pharmacies, and check-cashing services. Walmart, for example, sells money orders for $0.88 each for amounts up to $1,000. These are often cheaper than the Post Office, though the fee structure may differ slightly.
The trade-off is convenience and availability. Post offices are open during standard business hours, usually 9 a.m. to 5 p.m. on weekdays. Walmart and grocery stores often stay open later and on weekends, which can matter if you need a money order outside normal banking hours. Check-cashing services may charge more but are sometimes open 24 hours.
Money orders from any of these sources work the same way — the recipient cashes them at their bank or another money order issuer. The fee you pay is the only difference. If you are already at the Post Office for another reason, the $1.45 or $2.00 fee is reasonable. If you are making a special trip, comparing fees at nearby retailers might save you money.
Frequently Asked Questions
Can I get my money back if I change my mind after buying a money order?
Yes. If you have not yet mailed the money order, you can return it to the post office with your receipt and get a refund minus the fee. For example, if you paid $101.45 for a $100 money order and change your mind, you get $100 back and lose the $1.45 fee. If the money order has already been cashed, you cannot get the money back.
What if the money order gets lost in the mail?
Contact USPS with your receipt and the serial number printed on it. USPS will investigate whether the money order was cashed. If it was not, they will issue a replacement. This process can take several weeks. To avoid this, consider sending money orders via Certified Mail for an additional $3.95, which provides tracking and a signature confirmation.
Do I need to show ID to buy a money order at the Post Office?
No. You do not need identification to purchase a money order. You only need cash or a debit card to pay for it. However, if you are buying a very large number of money orders at once, the post office employee may ask questions as part of anti-fraud procedures.
Can I buy a money order with a credit card?
No. The Post Office does not accept credit cards for money order purchases. You must pay with cash, a debit card, or a PIN-based prepaid card. Some retailers that sell money orders may accept credit cards, so check before you visit.
Is a money order the same as a cashier's check?
No. Both are secure payment methods, but a cashier's check is issued by a bank and costs $10 to $15. A money order is issued by USPS or a retailer and costs $1.45 to $2.00. Cashier's checks are often required for large transactions like buying a car or a house. Money orders are used for smaller, everyday payments.