A self-hosted Gumroad alternative you buy once
Gumroad takes a flat 10% of every sale, forever. This is a storefront with Stripe Checkout and protected downloads on your own VPS — £49 once, then you keep everything except card fees.
Gumroad’s flat 10% (plus payment processing) feels small until you multiply it out. At £500 a month in sales, that is £50 a month — £600 a year — for hosting a product page and a download link. Simple Stack does the same job on your own server: Stripe Checkout takes the payment (card fees only), the webhook unlocks the buyer’s files, and the platform cut is zero because there is no platform. Gumroad’s pricing can change — check their site — but the shape of the trade stays the same: a percentage of everything, or £49 once.
Ten percent forever vs £49 once
| Simple Stack (self-hosted) | Gumroad | |
|---|---|---|
| Platform cut per sale | 0% — card fees only | 10% flat + card fees |
| A year at £500/month in sales | £49, once ever | ≈£600 in fees |
| Storefront on your own domain & server | × | |
| Customer emails in your own database | ~ | |
| Protected, buyer-only downloads | ||
| Hosting handled for you | × |
The whole shop, self-hosted
One-time payments through Stripe; the webhook records the purchase and unlocks the files automatically.
Files are served through an access-checked route, not a public URL — only the buyer can fetch them.
Product pages and marketing pages are edited with the built-in page builder — copy changes without a deploy.
Runs on a VPS costing about £4 a month. No platform account that can change fees or terms under you.
The mechanics of the downloads profile — one-time Checkout, webhook unlock, buyer-only links — are on Sell digital downloads with PHP & Stripe, and the running costs are broken down on the cheap self-hosted boilerplate page. The honest trade-off: Gumroad handles hosting, VAT collection and discovery for its cut. If you would rather not run a server at all, it earns its fee.
Walk a purchase end to end in the demo.
The downloads demo is fully interactive — no card, nothing saved.