The first price you set is almost always too low. Not because you are bad at maths, but because pricing feels like a judgement on your worth, and low prices feel safe. They are not. A price that is too low costs you margin, attracts the customers who demand the most support, signals that the product is unserious, and forces you to find far more buyers than the business actually needs.
The good news is that pricing a first digital product is a decision you can make in an afternoon and correct in a month. What follows is a process rather than a formula, because the formula does not exist.
Stop pricing your effort
The instinct is to price by cost: it took forty hours, forty hours is worth so much, therefore the price is that divided by expected sales. Buyers do not care how long it took. They care what happens to them after they buy. A template that saves a freelancer six hours of invoicing every month is worth some fraction of six hours of that freelancer’s billing rate, whether you built it in a weekend or a year.
So the first question is not "what is this worth to me" but "what does this problem cost the buyer while it stays unsolved." Sometimes that cost is money: hours billed, customers lost, a subscription to something worse. Sometimes it is risk or embarrassment. Write the cost down in the buyer’s own units before you write a price.
This reframe also tells you who to sell to. The same product is worth ten times more to a business that loses revenue from the problem than to a hobbyist who finds it mildly annoying. If your price feels impossible to justify, you may have the wrong buyer rather than the wrong number.
Anchor against the alternatives, including doing nothing
Every buyer has options. Hiring someone. Building it themselves. Using a spreadsheet. Buying a competitor. Doing nothing. Write these out with an honest cost next to each, in time and money. Your price should sit clearly below the cost of the next best alternative and clearly above free, with a reason for both.
Doing nothing is the alternative people forget, and it is usually the one you are actually competing with. If the pain of the problem is lower than the friction of buying, nothing wins. That is a positioning problem, not a pricing problem, and dropping the price rarely fixes it.
Pick a number, then add to it
Once you have the value and the alternatives written down, pick a price. Then raise it until it makes you slightly uncomfortable, and stop there. Discomfort is the signal you have left the cost-plus instinct behind. The asymmetry matters: cutting a price is easy and can even be framed as a launch offer, while raising a price on existing customers is awkward and expensive in goodwill.
- Round numbers read as premium. Prices ending in 9 read as value. Neither is better; pick the one that matches how you want to be seen.
- A single price is easier to explain than three. Add tiers when you have evidence that buyers genuinely differ, not to look established.
- If you offer tiers, make the differences a quantity people can count, such as accounts, seats or workspaces, rather than a vague list of adjectives.
- Put the price on the page. Hiding it behind a contact form costs you every buyer who would have bought without talking to anyone.
For reference on how one small product does this, seenpaid runs three monthly tiers and a lifetime option, and the tiers differ by how many connected accounts and workspaces you get rather than by which features are switched off. That is a deliberate choice: feature-gating punishes the smallest customers, quantity-gating scales with the value they actually receive.
One-time, subscription, or both
A one-time price is easier to sell and harder to live on. It suits a finished artefact: a template pack, a guide, a course that does not change. A subscription suits anything you keep running or keep updating, because the buyer keeps receiving value and the cost of serving them keeps recurring.
Do not put a subscription on something that is finished. Buyers notice, and churn arrives on schedule. Equally, do not put a one-time price on something with an ongoing server bill unless you have modelled how long you can afford to serve a customer who paid once. A lifetime deal is a loan from your future self, useful for early cash and dangerous as a default.
How to test a price without burning your reputation
You will not learn the right price from a spreadsheet. You learn it from what happens after the price is live. Ship one, watch, adjust. Three things to watch, in order of usefulness.
- Revenue, not conversion rate. Halving the price to double sales leaves you flat and doubles your support load.
- Objection quality. If nobody mentions price, you are too cheap. If everyone does, you are either too expensive or talking to the wrong buyer.
- Refund and churn rate after the change. A higher price that holds its customers is a better business than a lower one that leaks.
Test on new customers only. Grandfather everyone who already bought, tell them you are doing it, and mean it. The cost of honouring old prices is small. The cost of a public price rise that hits existing customers is not.
The cleanest experiment is a straight before-and-after on a fixed window: run the old price for four weeks, the new price for four weeks, compare total revenue and refunds. Split testing prices on the same page at the same time creates awkward situations when two buyers compare notes, and for a small product the sample sizes rarely justify it anyway.
Connect price changes to where the money comes from
A price change does not affect all channels equally. Traffic that arrives already convinced, from a recommendation or a long-form post that did the persuading, tolerates a higher price. Cold traffic that lands on a pricing page with no context does not. If you only look at a blended conversion number after a price rise, you can conclude the price failed when in fact it worked everywhere except one channel that was never going to convert well anyway.
This is where per-post and per-channel revenue attribution earns its keep. When you can see that buyers from your long-form posts still convert at the higher price while cold clicks stopped, the answer is not to roll the price back. It is to send less cold traffic to the pricing page and more of it to the content that does the convincing first. seenpaid was built for exactly this join, reading Stripe in read-only mode and attributing each payment back to the post that started it.
Decide, ship, revisit in ninety days
Pricing paralysis costs more than a wrong price. A number that is 30 percent off the ideal still generates revenue, customers, and the feedback you need to correct it. A number you never ship generates nothing.
Put a date in the calendar ninety days out to revisit it with real data: revenue per channel, refunds, churn, and the objections you actually heard. Most first products are underpriced by more than their founders believe, and the second price is usually the one that makes the business work.