Retail Markup and Keystone Pricing: How to Set Your Price
Published 1/30/2026 · 4 min read · Business tools
Daniel Okonkwo — Front-end developer and tech writer at OneKitly
Web performance · File formats
Checked against 2 sources
Markup is how much you add to a product's cost to set its price, expressed as a percentage of cost: markup % = (price − cost) ÷ cost × 100. If an item costs $20 and you sell it for $30, the markup is 10 ÷ 20 = 50%. Keystone pricing is a common rule of thumb where you simply double the cost — a 100% markup — so the $20 item sells for $40. Markup is not the same as margin: margin is profit as a percentage of the price, not the cost, so a 100% markup equals only a 50% margin. Confusing the two makes you underprice.
Learn how retail markup works, why keystone pricing doubles cost, and the crucial difference between markup and margin — so you set prices that actually cover your costs.
How markup works
Markup is the amount added to cost to reach a selling price, stated as a percentage of the cost. The formula is markup % = (price − cost) ÷ cost × 100. Rearranged to set a price, it is price = cost × (1 + markup ÷ 100). Buy a shirt for $20 and apply a 60% markup: 20 × 1.6 = $32. The extra $12 has to cover rent, staff, marketing and profit — markup is not pure profit.
Different categories carry very different markups. Groceries often sit at 10–15% because they turn over fast; clothing and accessories may run 100% or more; restaurant drinks can exceed 300%. The right markup balances what the market will bear against the costs you must recover and the volume you expect to sell.
Keystone pricing: the double-the-cost rule
Keystone pricing is the retail shortcut of setting the price at exactly twice the cost — a 100% markup. A product costing $20 is priced at $40. It is popular because it is fast, easy to apply across a whole catalogue, and usually leaves enough gross profit to cover typical retail overheads. Many boutiques and gift shops price this way by default.
But keystone is a starting point, not a law. Low-cost, high-volume items may need more than double to cover handling; premium or slow-moving goods may bear far more than 2×. And a 100% markup is only a 50% margin, so after rent, wages and shrinkage, the actual profit is much thinner than doubling the price suggests. Treat keystone as a default to adjust, not a guarantee of profit.
Markup versus margin — don't confuse them
Markup and margin describe the same profit from different angles. Markup is profit as a percentage of cost; margin is profit as a percentage of price. For a $20 item sold at $40, the $20 profit is a 100% markup (20 ÷ 20) but a 50% margin (20 ÷ 40). Because the price is always larger than the cost, the margin percentage is always lower than the markup percentage.
The confusion is costly. If you believe you need a 40% margin and simply add 40% to cost, you actually earn only a 28.6% margin — well short of your target. To convert cleanly, use margin = markup ÷ (1 + markup), and markup = margin ÷ (1 − margin). Knowing which one your figures refer to keeps prices from quietly falling below the profit you planned.
Worked with our own calculator
Markup calculator
Given
- Cost
- $25.00
- Markup (%)
- 20
Result
- Selling price
- $30.00
- Profit
- $5.00
- Net margin
- 16.67%
These figures are produced by the calculator below, not typed in by hand — they are recomputed whenever the tool changes.
Run it on your own figures →Frequently asked questions
- What is the markup formula?
- Markup % = (price − cost) ÷ cost × 100. To set a price from a markup, use price = cost × (1 + markup ÷ 100).
- Why is keystone pricing a 100% markup?
- Keystone means doubling the cost, and doubling adds an amount equal to the cost itself. Adding 100% of the cost is by definition a 100% markup, giving a 50% margin.
- How do I convert markup to margin?
- Use margin = markup ÷ (1 + markup), with both as decimals. A 50% markup (0.5) gives 0.5 ÷ 1.5 = 33.3% margin. To go the other way, markup = margin ÷ (1 − margin).
- Is keystone pricing right for every product?
- No. It is a handy default but should be adjusted: raise it for premium or slow-selling goods that can bear more, and rethink it for high-volume items where 2× may not cover handling and overhead.
Articles you may find interesting
All guides →Related tools
Sources
Spotted a mistake in this article?