SoloStore → Blog → How to sell digital products online — in 5 steps, plus the two nobody covers
How to sell digital products online — in 5 steps, plus the two nobody covers
The five steps are the easy part and every guide has them. What none of them tell you is what the platform's fee actually costs at your revenue, who owes tax on a sale to Germany, and what happens the first time somebody charges back a download.
The short version
Short answer: pick a product that solves one specific problem people already pay to solve, price it on the value of the outcome rather than the hours you spent, sell it somewhere whose fee makes sense at your revenue, deliver the file so it can't be passed around freely, and drive traffic from one channel done properly. The fee is the part worth arithmetic: 10% of $50,000 is $5,500 a year, every year.
Step 1: Pick something people already pay for
The most expensive mistake in this business isn't picking the wrong platform. It's spending six weeks building something nobody was ever going to buy, and then blaming the funnel.
So validate against money, not against interest. Not search volume, not poll responses, not "would you buy this?" — find someone already charging for it. A crowded market is a market with a budget in it. An empty one usually means people are happy to solve that problem for free.
Then apply the one-problem test: can you say what the buyer can do after that they couldn't do before, in a single sentence, without the word "and"? "Write a LinkedIn post in ten minutes" passes. "A complete system for content, growth and monetisation" doesn't, and it's also much harder to sell.
Formats, in rough order of how much work each costs per dollar it returns:
- Templates, swipe files, checklists, Notion systems — a weekend, $9–$47, and the fastest way to find out if anyone cares
- Ebooks and guides — a week or two, $19–$97
- Workshops and recorded trainings — a day to record, $47–$197
- Courses — a month or more, $97–$1,997, and the format everyone starts with and shouldn't
- Cohorts and coaching — highest price, doesn't scale, and the fastest way to learn what your course should contain
Start one row above where your ego wants to start. A $27 template that sells tells you more in a week than a $500 course that doesn't tells you in a quarter.
Step 2: Price on the outcome, not on your hours
How long it took you to make is the single least relevant input to what it's worth, and it is the one almost everybody uses.
Cheap products are also harder to sell, not easier. Selling a $9 product to make $5,000 means 556 buyers. At $97 it's 52. Same traffic, roughly the same objections, an order of magnitude different amount of work — and cheap buyers, in my experience, ask for more support, not less.
There's a mechanical reason to avoid the bottom of the range too, and it's the sort of thing you only notice after a year of statements: fixed fees eat cheap products alive. Gumroad's 10% + 50¢ on a $9 sale is $1.40, which is 15.6%. On a $97 sale it's $10.20, or 10.5%. Stripe's 30¢ does the same thing: 3.3% of a $9 order and 0.3% of a $97 one. The smaller your price, the bigger the invisible slice.
A shape that works, if you want one: an entry product at $27ish that solves one problem, a main product at $97–$197, and something at $600+ for the small number of people who want it all done with them. Most of the revenue comes from the middle; most of the customers come through the bottom.
Step 3: Choose where to sell it — and do the fee arithmetic
Every guide tells you to "compare transaction fees." None of them multiply. So here is the same worked example run across the realistic options, at a $50 average order — meaning $10,000 of sales is 200 orders, and $100,000 is 2,000.
| Where you sell | What it takes | $10,000/yr | $50,000/yr | $100,000/yr |
|---|---|---|---|---|
| Your own checkout, your own Stripe | 2.9% + 30¢ to Stripe, 0% to anyone else | $350 | $1,750 | $3,500 |
| Lemon Squeezy | 5% + 50¢, processing included | $600 | $3,000 | $6,000 |
| Payhip Pro | $99/mo, 0% cut, plus Stripe | $1,538 | $2,938 | $4,688 |
| Podia Shaker | $84/mo, 0% cut, plus Stripe | $1,358 | $2,758 | $4,508 |
| Payhip free plan | 5%, plus Stripe | $850 | $4,250 | $8,500 |
| Etsy (US seller) | 6.5% + 3% + 25¢ + 20¢ a listing | $1,040 | $5,200 | $10,400 |
| Gumroad | 10% + 50¢, processing included | $1,100 | $5,500 | $11,000 |
All figures are annual and all-in: where a platform's cut doesn't include card processing, Stripe's 2.9% + 30¢ has been added. Subscription plans include the subscription. Etsy's row excludes Offsite Ads, which are mandatory once you pass $10,000 in a year and take a further 15% (12% above $10,000) of any order they source, capped at $100. Prices read off each vendor's own pages on 6 August 2026, except Payhip's, which blocks automated requests and came from Google's index — check those by eye. Running your own checkout has a software cost on top: a self-hosted licence such as SoloStore is $497 once plus about $7 a month of hosting.
Read it as a curve rather than a ranking, because the right answer changes as you grow:
- Under about $10,000 a year, the percentage platforms win and it isn't close. Gumroad's $1,100 buys you a checkout, file delivery, tax handling and zero setup. Go and use it.
- Between $10,000 and $50,000, the fixed-fee options catch up and pass them. This is where most people are still paying 10% out of habit.
- Above $50,000, the gap becomes a salary. Gumroad's cut at $100,000 is $11,000 a year; the same sales on your own Stripe cost $3,500.
One honest note in the other direction, because that table makes going direct look free and it isn't. Your own checkout means software you buy or build, hosting you're responsible for, and no one to email when the payment webhook stops firing. The fee you stop paying is buying you something real.
Step 4: Deliver the file without losing control of it
Digital products have exactly one structural weakness: the thing you sell is infinitely copyable, and the moment it leaves your hands you can't get it back.
You will not stop determined piracy and it's a waste of a weekend to try. What you can stop is the casual kind — one buyer's link ending up in a Slack channel of forty people — and that's most of the leakage anyway:
- Expiring download links. A URL that dies after 24 hours or five downloads stops being worth forwarding. Any serious platform does this; a Dropbox link does not.
- Watermark PDFs with the buyer's email. Nearly free to implement and remarkably effective, because people don't share a file with their own address on every page.
- Put video behind a login, not on unlisted YouTube. Unlisted means anyone with the URL, forever, and the URL is one screenshot away from public.
- Know where the file physically lives. If your videos are on the platform's storage, leaving means re-uploading everything from local copies you'd better still have. If they're on storage you rent directly, changing software is changing software.
And deliver instantly. Not "within 24 hours" — the buyer is at peak enthusiasm for about ninety seconds after paying, and that is also, not coincidentally, when they are least likely to want a refund.
Step 5: Get your first 100 sales
The step every guide turns into a list of eleven channels. Here's the shorter version: one channel, done properly, beats five done badly, and you don't get to know which channel until you've done one properly.
Pick the one where the people who have your problem already gather, and where you can stand publishing three times a week for six months without hating it. Both halves of that sentence matter — the second one is why most channel strategies die in week five.
Then build the email list, because it's the only audience you own. Social platforms rent you reach and change the terms without asking; a marketplace like Etsy or Gumroad Discover sends buyers who belong to the marketplace, not to you. An email address is the only asset in this list that still works after somebody else's algorithm changes.
Practically, for the first hundred sales: publish something useful, consistently, that ends where your product begins. Put a small free thing at the end of it worth an email address. Sell to that list. It is slower than it sounds in a headline and faster than everything else.
Who actually owes the tax on a digital sale
Here's the section that isn't in any of the guides currently ranking for this, and the one that surprises people the most. Not legal or tax advice — the rules depend on where you sit and where your buyer sits, and they change. But you should know the shape.
EU VAT on digital products is owed at the buyer's local rate, in the buyer's country. Not yours. Sell a $50 template to someone in Germany and 19% German VAT is in play; the same sale to Luxembourg is 17%. If you're outside the EU, that applies from your first sale — there's no small-seller threshold to hide behind. If you're inside it, you get a €10,000 annual threshold on cross-border sales before you have to start charging other countries' rates.
US sales tax is a per-state question with its own thresholds, and states disagree about whether a digital download is even taxable. It's less likely to catch a small seller than EU VAT, and it's messier when it does.
Which brings you to the thing that quietly justifies the percentage platforms:
- Gumroad, Payhip and Lemon Squeezy are the merchant of record. They are legally the seller. They calculate, collect and remit the VAT, and you don't file anything. That is a large part of what their 5–10% actually buys, and it's why comparing their fee to bare card processing is a rigged comparison.
- Run your own Stripe and you are the seller. The default is that the filing is yours.
- But Stripe sells the same service as a switch. Turn on Managed Payments and Stripe becomes the merchant of record, handling EU VAT and US sales tax, for an extra 3.5% per transaction. Stripe Tax is the lighter option — it calculates and collects without taking the liability, at 0.5% per transaction on the no-code plan.
So run the comparison properly. Gumroad takes 10% + 50¢ and handles the tax. Your own Stripe with the same hands-off treatment is 2.9% + 30¢ plus 3.5%, or about 6.4% + 30¢ — cheaper, and switchable off the day you'd rather file yourself. That's the real trade, and it's a narrower one than the raw fee columns make it look.
Selling internationally: the limits nobody warns you about
Digital products are borderless right up until the moment money has to move, and then they very much aren't. Three things bite, in ascending order of how annoying they are to discover late.
Where you can accept money from is not the problem. Where you're allowed to be is. Stripe processes payments from buyers in essentially every country, but it only accepts businesses based in a specific list of them. If yours isn't on it, running your own checkout isn't an option no matter what any guide says, and a merchant-of-record platform like Gumroad, Payhip or Lemon Squeezy isn't a preference — it's the only door. Check that list before you build anything around a processor.
Cards aren't the default payment method everywhere. They are in the US and the UK. In the Netherlands people expect iDEAL, in Belgium Bancontact, in Germany a lot of buyers want SEPA or PayPal and will simply close the tab rather than type a card number. A card-only checkout doesn't produce an error you can see in your analytics — it produces an abandoned checkout that looks exactly like ordinary indifference.
And the fee isn't the fee. Stripe's headline 2.9% + 30¢ is the domestic-card rate. It adds 1.5% for international cards and another 1% if currency conversion is required. So a $50 sale to a buyer paying in euros with a European card costs about 5.4% + 30¢, not 2.9%. If half your audience is overseas, that gap is worth knowing before you build a spreadsheet on the domestic number — and it applies to every platform in the table above that runs on card rails, which is all of them.
Refunds, chargebacks and fraud on digital goods
The other thing no guide mentions, usually because the person writing it hasn't had one yet.
A chargeback is not a refund. A refund is you giving the money back. A chargeback is the buyer's bank taking it, and Stripe's own documentation describes what happens next: the card network reverses the payment and pulls the money and the dispute fee from Stripe, and then Stripe debits your balance for both. That happens before anybody has looked at your evidence. The fee is $15 on the payment methods where Stripe publishes it.
Digital goods attract more of these than physical ones for a boring structural reason: there's no tracking number. You cannot prove delivery the way a courier signature does, so the default sympathy sits with the cardholder.
What actually helps, roughly in order:
- A recognisable name on the statement. A shocking share of disputes are honest confusion — the buyer doesn't recognise "NORDVEN LLC" three weeks later. Set your statement descriptor to your product name.
- Access logs. Timestamps and IP addresses showing the buyer downloaded the file or watched four lessons is the strongest evidence a digital seller has.
- Terms accepted at checkout, plus the receipt and any email exchange.
- Refund fast and visibly. A clear refund policy and a same-day yes costs you the sale. A dispute costs you the sale, the fee, and a worse dispute ratio — and past about 0.75% the card networks put you in a monitoring programme you very much don't want to be in.
Also expect card testing at some point: a burst of tiny charges from stolen cards being checked against your checkout. It isn't personal and it isn't about you. Rate limiting and your processor's fraud rules handle it, but know the shape of it so you don't spend an evening assuming you've been hacked.
The short version
Sell something people already pay for. Price it on what it does, not what it cost you. Pick the platform whose fee makes sense at the revenue you actually have — percentage platforms early, fixed costs once you're past $10,000 or so a year. Deliver instantly and make the link expire. Pick one channel and build a list. And know which of you is the merchant of record, because that's the answer to a question you'd rather not be asked for the first time by an accountant.
If you get to the point where the percentage stops making sense — and $50,000 of sales is roughly where it does — SoloStore is the version of this I built for myself: checkout, funnels, courses and file delivery in one app on your own hosting, running on your own Stripe account. $497 once, 0% of your sales, about $7 a month to host.
Your own checkout, your own Stripe, no cut of your sales. One payment, hosted by you.
Get lifetime access — $497