The core difference: who backs the payment and how fast it clears
A bank check is a written order from your bank account to pay someone. The money stays in your account until the check clears — which can take three to five business days. If you don't have the funds when the check is deposited, it bounces, and you face overdraft fees and a bad record with the recipient.
A money order is prepaid. You hand over cash (or a debit card) upfront to a post office, grocery store, or check-cashing service, and they issue a paper receipt that the recipient can cash or deposit. The money is already gone from your pocket, so it cannot bounce. The recipient gets a may provide payment.
This one difference — who bears the risk — shapes when you should use each one. Bank checks work when both parties trust the system and have time. Money orders work when the recipient needs certainty, when you have no bank account, or when you're sending cash to someone you don't know well.
Key Takeaways
- Bank checks draw from your account and can bounce if funds aren't there; money orders are prepaid and cannot bounce.
- Money orders cost $1 to $5 per order and work without a bank account; checks are free or low-cost if you have a checking account.
- Bank checks take three to five days to clear; money orders clear faster and are accepted by landlords, courts, and utilities as proof of payment.
- Money orders have a maximum amount (usually $500 to $1,000 per order) and require you to buy multiple orders for large payments.
- Bank checks leave a record in your account; money orders require you to keep the receipt as your only proof of payment.
When to use a bank check
Use a bank check when you have a checking account, the recipient trusts you or knows you, and there's no rush. Checks are free (or cost a few dollars per box if your bank charges), and they create an automatic record in your account showing who you paid and when. Your bank statement is proof of payment.
Checks work well for paying bills to companies that accept them, paying contractors or service providers you've worked with before, and splitting costs with friends or family. The recipient can deposit or cash the check at their own bank, and the payment clears within a few business days.
Checks are also the standard for large payments — rent, medical bills, legal fees — because there's no upper limit. You can write a check for $10,000 or $100,000 if your account has the funds. A money order maxes out at $500 to $1,000 depending on where you buy it.
When to use a money order
Use a money order when you need may provide payment, when the recipient demands it, or when you have no bank account. Landlords often require money orders for security deposits or first month's rent because they know the payment is real. Courts may require money orders for filing fees. Utilities sometimes ask for them if you have no credit history.
Money orders are also the right choice when you're sending cash through the mail and want a paper trail. If you mail a money order and it gets lost, you can file a claim with the issuer (the post office or store where you bought it) and get a replacement. If you mail cash, it's gone.
Use a money order if you have no checking account or if you're paying someone you don't know — a private landlord, a seller on a classifieds site, or a contractor you found through a referral. The recipient gets certainty; you get a receipt. Neither party has to trust the other's bank balance or creditworthiness.
Cost and where to buy
Bank checks are free or nearly free if you have a checking account. Some banks include a box of checks with your account; others charge $5 to $15 per box of 25 or 50. If you write checks regularly, the cost per check is pennies.
Money orders cost $1 to $5 each, depending on where you buy them and the amount. The U.S. Postal Service charges around $1.45 for a money order up to $500 and $1.95 for one up to $1,000. Walmart, grocery stores, and check-cashing services often charge $2 to $5. If you need to send $5,000, you'll buy five money orders and pay $5 to $25 in fees.
You can buy money orders at post offices, Walmart, grocery stores with financial services counters, check-cashing stores, and some banks. You'll need cash or a debit card. Some places accept credit cards, but most do not. You cannot buy a money order online and print it — you must buy it in person.
Speed and proof of payment
Bank checks take three to five business days to clear after the recipient deposits them. During that time, the money is still technically in your account, though your bank may put a hold on it. Once cleared, the check is part of your permanent bank record.
Money orders clear faster — often the same day or next business day — because the money is already in the issuer's hands. The recipient gets certainty immediately. For you, the receipt is your only proof of payment. Keep it until the recipient confirms they received and cashed the money order.
If a money order is lost or stolen before the recipient cashes it, you can file a claim with the issuer (usually within 30 to 60 days) and request a replacement or refund. The process takes a few weeks. With a bank check, if it's lost, the recipient can request a stop payment and you can issue a new check.
Limits and large payments
A single money order has a cap — usually $500 to $1,000 depending on the issuer. If you need to send $3,000, you buy three money orders. This adds cost and complexity, and the recipient has to deposit or cash multiple orders.
Bank checks have no limit. You can write one check for any amount your account can cover. This makes checks the only practical choice for large payments like down payments, home repairs, or business transactions.
If you need to send a large amount and have no bank account, you have two options: open a checking account (which takes a day or two) or visit a check-cashing service and ask about cashier's checks. A cashier's check is issued by the check-cashing service or bank itself, not by you, so it carries the same may provide as a money order but can be written for any amount.
No bank account: your alternatives
If you don't have a checking account, you cannot write personal checks. You can buy money orders, but for large payments or frequent transactions, a money order strategy gets expensive and cumbersome.
A cashier's check is a better option for large, one-time payments. You go to a bank or check-cashing service, hand over cash, and they issue a check drawn on their own account. The recipient knows it's backed by the bank, not by you. Cashier's checks cost $5 to $15 each and have no upper limit. They clear in one to two business days.
If you need to make regular payments without a bank account, consider opening a checking account. Most banks offer basic accounts with no minimum balance and low or no monthly fees. You'll get free or cheap checks, a debit card, and a record of all your payments. Some credit unions and online banks make this especially easy.
Frequently Asked Questions
Can a money order bounce?
No. A money order is prepaid, so the money is already collected before it's issued. The recipient can cash or deposit it with no risk. A personal check can bounce if your account has insufficient funds.
What if I lose a money order before I send it?
Contact the issuer (the post office or store where you bought it) with your receipt. You can file a claim and request a replacement or refund. Keep your receipt until the recipient confirms they've cashed the money order.
Do I need a bank account to buy a money order?
No. You can buy a money order with cash or a debit card at a post office, grocery store, or check-cashing service. You do not need a bank account.
Why would a landlord ask for a money order instead of a check?
Because a money order cannot bounce. If you send a personal check and it bounces, the landlord has to pursue you for the money. A money order is may provide payment, so the landlord knows the deposit or rent is secure.
Can I write a check for more than my account balance?
You can write it, but it will bounce if the funds aren't there when the recipient deposits it. You'll face overdraft fees from your bank and a bad record with the recipient. Do not write a check unless you have the funds.