Polar vs Lemon Squeezy vs Paddle for Ghost

COMPARISONPolar vs Lemon Squeezy vsPaddle for Ghost
On this page

All three are merchants of record. All three take card payments, handle EU VAT, and pay you a settled amount. If that were the whole picture the choice would be a coin toss.

For a Ghost membership specifically, they differ in ways that do not appear on any pricing page. Here is what actually separates them once you connect one.

The part that is the same

Each of the three is legally the seller. It charges the correct rate for your buyer’s country, files its own returns, and sends you one payout with tax already settled.

It is the reason to shortlist these three rather than a plain payment processor, and it matters more than anything below. What merchant of record means in practice.

Fees are close enough between them that the difference will not decide anything at a small scale. Check current numbers on their own sites rather than in an article; they change and articles do not.

Polar

The cleanest setup of the three, and the one I use myself.

You register a webhook, pick four events, copy one secret. There is also an API token that is labelled optional and is the difference between picking products from a dropdown and typing product IDs by hand into every button, paywall and pricing table. Add it.

Two things to get right. The webhook format has to be Raw, because the signature is computed over the exact bytes sent, and any other format breaks verification in a way that looks like a wrong secret. And Polar sends both subscription.canceled and subscription.revoked, which are different moments: the click, and the actual end of access. Enable both.

The checkout does not look like a shop, which suits a publication better than a store page does.

Pick Polar when you are selling access to writing and want the setup to be over quickly. The full setup guide.

Lemon Squeezy

The store model. You have a store, the store has products, and there is a storefront if you want one.

Setup has one step the others do not: you select which store the connection uses. Small, and worth attention if you have more than one, because products from the wrong store will not match anything and the resulting failure is silent.

The webhook secret works backwards from Polar’s. You invent it, put the same string on both sides, and it has to match exactly. That removes the copy-from-provider step and adds a chance to typo something into both fields differently.

Product auto-fetch works once the store is selected, so no ID typing here either.

Pick Lemon Squeezy when you want a storefront next to the subscription, or you are selling a few one-off things alongside the membership. The full setup guide.

Paddle

The most serious tax operation of the three, and the most enterprise-shaped in every other respect too.

Its tax coverage reaches beyond the EU more thoroughly than the others, which is the reason to choose it and is invisible until it matters.

Two practical differences. Paddle does not currently sign the deliveries PayGlue receives, so the per-organisation webhook URL is doing the work of a shared secret. Keep it private rather than pasting it into a forum thread. Gumroad is in the same position; Polar and Lemon Squeezy both sign properly.

And Paddle has no checkout link PayGlue can generate. Its checkout is designed to be opened by Paddle’s own JavaScript from your page. So in the Buy Button editor you turn off product linking and point the button at a page you built. Access still arrives automatically through the webhook, but the button is doing less work than with the other two.

The sandbox is detected from the key prefix rather than being a switch you set, which is one fewer thing to get wrong.

Pick Paddle when your tax exposure goes well past the EU, or your accountant already knows the name. The full setup guide.

Side by side

Polar Lemon Squeezy Paddle
Merchant of record Yes Yes Yes
Signs webhooks Yes, secret issued Yes, secret you invent Not currently
Product auto-fetch With API token Yes, per store Yes
Checkout link Yes Yes No, use your own page
Extra setup step Format must be Raw Choose the store None
Sandbox Separate environment Per API key From the key prefix
Fits best Publications Store plus subscription Broad tax exposure

The question that comes before all of this

Can it pay out to your bank account?

This is binary, it eliminates more candidates than every other consideration combined, and no comparison table can answer it for you. Check the provider’s own payout documentation for your country before you spend an evening on integration.

A provider with a nicer dashboard and lower fees that cannot send you money is not on the shortlist.

What Ghost sees

Nothing, in the sense that matters. Whichever you pick, Ghost receives the same thing: a member record created or updated through the Admin API, holding the tier your mapping says it should.

Which means switching later is much less painful than it sounds. Your members are Ghost members, not Polar members. Connect the new provider, map its products, point new sales at it, and let existing subscriptions run out where they started. Nobody has to re-enter a card.

Knowing that while you choose lowers the stakes considerably. This is a reversible decision dressed up as a permanent one.

The full comparison of every route, including the ones that are not merchants of record.

Frequently asked

Which of the three is best for a Ghost membership site?

Polar, for most people, because the setup is the cleanest and product auto-fetch removes the copying of IDs. Paddle earns its extra setup when tax coverage beyond the EU matters. Lemon Squeezy fits when you want a storefront alongside the subscription.

Do all three handle EU VAT?

Yes. All three are merchants of record, which means each is legally the seller and files on its own behalf. That is the main reason to pick from this group rather than from a plain payment processor.

Which one signs its webhooks?

Polar and Lemon Squeezy both do, in different ways: Polar issues the secret, Lemon Squeezy has you invent it. Paddle does not currently sign the deliveries PayGlue receives, so the per-organisation webhook URL does the work of a shared secret there.

Does Paddle give me a checkout link?

Not one PayGlue can generate for you. Paddle's checkout is built to be opened from its own JavaScript on your page, so in the Buy Button editor you turn off product linking and point the button at your own checkout page.

Can I switch later without losing members?

Yes. Ghost members are not tied to a provider, so you connect the new one, map its products and point new sales at it. Existing subscriptions run out where they started.