If you've ever tried to figure out which payment system to use for your small business, you've probably ended up more confused than when you started. Stripe, Square, and PayPal all do roughly the same thing on the surface — they let you take money from customers — but they're built very differently and they suit very different kinds of businesses.
Here's a plain-English breakdown of each one, and a way to think about which fits yours.
PayPal — familiar, but with tradeoffs
PayPal is the one everyone knows. It's been around since 1998 and has over 400 million users worldwide. That familiarity is genuinely valuable — a lot of customers trust the PayPal button in a way they don't yet trust a checkout form they've never seen before.
The tradeoffs are real though. PayPal's fees are among the highest of the three — around 3.49% plus a fixed fee for standard transactions, which adds up quickly on larger payments. Their customer support is notoriously difficult. And if PayPal decides they don't like something about your account, they can hold your funds — sometimes for months — with very little explanation.
PayPal works well for: freelancers and service providers who invoice clients directly, businesses selling through platforms like eBay or Etsy that have PayPal built in, and situations where customer recognition of the payment brand matters more than low fees.
PayPal is a poor fit for: businesses processing high volumes, businesses that need fast access to their funds, or anyone who wants tight integration with their website checkout.
Square — built for in-person first
Square started as a hardware company — that little card reader that plugs into your phone. It's still primarily built around in-person payments, and for businesses that take most of their money face-to-face, it's excellent.
The free card reader is genuinely free. The point-of-sale app is clean and easy to use. The flat rate of 2.6% plus 10 cents per in-person transaction is competitive. And the ecosystem — inventory management, appointments, payroll — is built for brick-and-mortar businesses in a way the others aren't.
Online, Square is functional but not as strong. The online checkout experience is decent and the fees are reasonable (2.9% plus 30 cents for online transactions), but it doesn't have the same flexibility for custom integrations that Stripe does.
Square works well for: restaurants, retail shops, salons, markets, and any business that primarily takes payment in person with occasional online sales.
Square is a poor fit for: businesses that are primarily online, businesses that need complex custom checkout flows, or developers building bespoke e-commerce experiences.
Stripe — built for the web
Stripe is what powers a huge proportion of the internet's payments infrastructure, including businesses you use every day. It was built by developers, for developers — and that shows in how flexible and well-documented it is.
For small businesses with websites, Stripe is often the right answer. It handles one-time payments, subscriptions, invoicing, and complex checkout flows with equal ease. The fees are competitive — 2.9% plus 30 cents per transaction for standard online payments — and funds typically hit your bank account within two business days.
The one honest caveat: Stripe assumes a certain level of technical comfort. Setting it up properly — especially if you want a custom checkout on your website rather than a hosted payment link — usually requires someone who knows what they're doing. The out-of-the-box payment links and invoicing tools are genuinely easy, but the full power of Stripe requires some technical knowledge to unlock.
Stripe works well for: service businesses taking payments online, businesses that invoice clients, subscription-based businesses, and anyone who wants their payment system to integrate cleanly with their website.
Stripe is a poor fit for: businesses that primarily take in-person payments, or business owners who want a completely no-code setup with no technical help at all.
There's no single right answer here. The question is: where does most of your money come from? In person, Stripe, Square. Online, Stripe. Mix of both with a need for simplicity, Square. Existing customer base that trusts the brand, PayPal.
The fees in plain numbers
On a $500 payment: PayPal charges roughly $17.95 (3.49% + $0.49). Square charges roughly $14.60 (2.9% + $0.30) online, or $13.30 in person (2.6% + $0.10). Stripe charges roughly $14.80 (2.9% + $0.30).
The differences look small on individual transactions but add up significantly over a year of volume. A business processing $10,000 a month would pay roughly $1,800 annually to PayPal versus $1,476 to Stripe or Square — a difference of over $300 a year for doing exactly the same thing.
One practical consideration nobody mentions
Whichever platform you choose, make sure the payment experience on your website is smooth and mobile-friendly. A checkout that works perfectly on desktop and breaks on a phone — fields that are hard to type in, a card number field that doesn't trigger the number keypad, a submit button that's hard to reach — will lose you sales regardless of which payment processor sits behind it.
The payment system is the plumbing. The checkout experience your customers see is the tap. Both need to work.
Note
If you're just starting out and don't want to think about any of this right now, Stripe's Payment Links are the fastest path to taking money online. You create a payment link in five minutes, share it with a customer, and they pay. No code, no integration, no website required. You can always build a proper checkout later.