pricing
How to Price Your Handmade Soap to Actually Make a Profit (The Loaf-to-Bar Formula)
Most soap makers underprice because they've never done the loaf-to-bar math. This guide walks through the full costing formula: oils, lye, fragrance, packaging, labour, with a real cold process example you can use today.

You’ve poured a beautiful batch of cold process soap. Your customers love it, you’re getting repeat orders, and the comments on Etsy are glowing. So why does it feel like you’re barely covering your materials?
Most soapers underprice. Not because they don’t care about profit, but because they’ve never done the loaf-to-bar math properly. Materials cost, yes. Maybe fragrance oil. But the lye? The labour for mixing, cutting, turning during cure, stamping, labelling, packaging? The Etsy listing fee on every single bar? The soap that crumbled at cut and couldn’t be sold?
It adds up. Fast. And if your price is based on what other soapers charge rather than what it actually costs you to make, you may be working hard just to break even, or actively losing money on your bestsellers.
This guide gives you the full formula for pricing handmade soap profitably. Work through it once with a real batch, and you’ll know your exact cost per bar.
Need to get your raw material and product inventory under control?
Try Craftybase - the inventory and manufacturing solution for DTC sellers. Track raw materials and product stock levels (in real time!), COGS, shop floor assignment and much more.
It's your new production central.
Why Soap Pricing Is Different From Other Handmade Products
Soap has a costing structure that most generic pricing guides don’t account for. Three things make it genuinely different.
The loaf-to-bar math. You don’t make one bar of soap at a time. You make a loaf. A 2-pound oil batch might yield 10–12 bars, depending on how you cut. Your materials cost is calculated for the loaf, but your selling price is per bar. Getting this conversion wrong is the most common reason soapers find themselves losing money on a product they thought was profitable.
Cure time creates invisible inventory. Cold process (CP) soap needs 4–6 weeks of cure before it can ship. During that time, the finished bars represent capital you’ve spent but can’t convert to revenue. It’s work-in-progress inventory, and it has to be factored into your cash flow, even if it doesn’t directly change your cost per bar.
Fragrance variations compound complexity. The same base recipe with lavender essential oil costs differently than the same base recipe with a premium rose fragrance oil. If you’re making 20+ scent variants from the same formula, your cost-per-bar changes with every fragrance. Pricing a “lavender bar” at the same level as a “rose absolute bar” means one is subsidising the other.
What You Need to Calculate Your True Cost Per Bar
Before running any numbers, gather these for a single batch:
- Total weight of oils used (in ounces or grams)
- Cost of each oil, calculated per ounce/gram used
- Cost of lye (NaOH), water (or milk/liquid), and any superfat additions
- Cost of fragrance oil or essential oil used in this specific batch
- Cost of any additives (clays, botanicals, colorants, micas)
- Packaging cost per bar (paper band, kraft box, shrink wrap, label, thank-you card)
- Number of bars the loaf actually yielded after cutting (not the theoretical maximum)
- Your hourly labour rate and time spent (mixing, pouring, unmoulding, cutting, stamping, labelling)
- A per-bar overhead allocation (Etsy fees, Shopify plan, shipping tape, scale depreciation)
The Soap Pricing Formula
The basic structure is:
Cost per bar = (all batch materials ÷ bars yielded) + labour per bar + overhead per bar
Then:
Retail price = cost per bar × markup
Where markup is typically 3–4× for retail (covering profit margin and the costs that don’t fit neatly into per-bar math, like waste).
Wholesale price is conventionally 50% of retail, which means your cost per bar needs to be no more than 25% of your retail price for wholesale to be worth taking.
That last constraint is worth sitting with. If your materials and labour cost $3.50 per bar and you’re retailing at $10, wholesale at $5 gives you $1.50 gross margin per bar. Is that enough to justify a wholesale minimum order and the administrative overhead? For most soapers, the answer is yes, but only if they’ve done the math first.
A Real Example: 2lb Cold Process Lavender Batch
Let’s work through a real cold process batch. Figures are illustrative but representative of typical US soaper costs in 2026.
Batch parameters:
- 2lb oil weight (32oz total oils)
- Bars yielded after cure and cutting: 11 bars (one edge piece set aside for personal use)
- Bars for sale: 10
Materials cost:
| Item | Amount used | Cost |
|---|---|---|
| Olive oil (60%) | 19.2oz @ $0.22/oz | $4.22 |
| Coconut oil (30%) | 9.6oz @ $0.18/oz | $1.73 |
| Castor oil (10%) | 3.2oz @ $0.40/oz | $1.28 |
| Sodium hydroxide (NaOH) | 4.4oz @ $0.20/oz | $0.88 |
| Distilled water | 11.4oz (near zero cost) | $0.10 |
| Lavender EO (3% of oil weight) | 0.96oz @ $2.50/oz | $2.40 |
| Lavender buds (additive) | small sprinkle | $0.30 |
| Total batch materials | $10.91 |
Materials per bar: $10.91 ÷ 10 bars = $1.09
Packaging cost per bar:
| Item | Cost |
|---|---|
| Kraft paper band | $0.12 |
| Printed label | $0.08 |
| Thank-you card (pro-rated) | $0.05 |
| Total packaging per bar | $0.25 |
Labour per bar:
- Mix and pour: 35 minutes
- Unmould and slice: 20 minutes
- Cure turns (6 weeks, 2x/week, 2 min each): 24 minutes
- Stamp and wrap: 20 minutes
- Total time for batch: approximately 1 hour 39 minutes
- At $20/hour: $33 ÷ 10 bars = $3.30 per bar
Many soapers price labour at $15–$25/hour. Use what you’d pay someone else to do it.
Overhead allocation per bar:
| Item | Monthly cost | Per-bar share |
|---|---|---|
| Etsy listing fee ($0.20/listing) | $0.20 | |
| Etsy transaction fee (6.5% of $12) | $0.78 | |
| Etsy payment processing (~3%) | $0.36 | |
| Tools, supplies, workspace (pro-rated) | $15/mo for this product line | $0.15 |
| Total overhead per bar | $1.49 |
Total cost per bar: $1.09 + $0.25 + $3.30 + $1.49 = $6.13
Retail price at 2× markup: $12.26 → round to $12.00
That’s a gross margin of roughly 49%. Not bad, but notice that labour is the biggest single cost, at more than half the non-material spend. Soapers who skip labour from their pricing calculations would see a cost of $2.83 per bar and assume they have plenty of room. They don’t.
At $12 retail, wholesale would be $6. With a $6.13 cost per bar, wholesale at that price loses money. To make wholesale viable, you’d need to either reduce costs (larger batch sizes to spread fixed labour, bulk oil purchasing), raise retail to $14–$15, or set wholesale at 60% of a higher retail price.
This is the math most soapers never do until a wholesale buyer comes knocking.
How Fragrance Variants Change Your Pricing
The lavender example above used a relatively inexpensive essential oil. Swap that for a premium fragrance oil, and the numbers shift.
Fragrance cost comparison (same 2lb batch, 3% fragrance load):
| Fragrance | Cost per oz FO | Fragrance cost for batch | Cost per bar |
|---|---|---|---|
| Lavender EO (standard) | $2.50 | $2.40 | $0.24 |
| Peppermint EO | $3.50 | $3.36 | $0.34 |
| Rose absolute EO | $18.00 | $17.28 | $1.73 |
| Premium rose FO (high quality) | $5.50 | $5.28 | $0.53 |
| Basic floral FO | $1.80 | $1.73 | $0.17 |
A rose absolute bar costs $1.49 more per bar in fragrance alone compared to the basic floral. If you’re selling both at $12, you’re charging the same price for a significantly more expensive product.
The fix is simple: calculate fragrance cost for each variant and price accordingly. Your lavender bar might be $12, your premium rose bar $14.50. Most customers understand that different scents have different ingredient costs, especially if you mention the fragrance origin in your listing.
Pricing for Wholesale From the Start
If you plan to sell wholesale, you need to build your pricing with that in mind from the beginning. The conventional wholesale model is 50% of retail.
Working backwards: if your retail price needs to be at least 4× your cost to support wholesale, then your cost per bar should be no more than 12.5% of your retail price.
That’s a tighter constraint than most soapers realise. A $12 retail bar needs a cost per bar under $1.50 to support traditional wholesale profitably. At $6.13, our example bar isn’t there, and that’s completely normal for a high-quality handmade product at small batch sizes.
Your options are:
- Price retail higher. A well-made, well-photographed CP soap can retail at $14–$18. If the quality justifies it, the price should reflect it.
- Increase batch size. Labour per bar drops significantly when you make 4-loaf batches instead of 1-loaf batches. The mixing time doesn’t quadruple; it might 1.5×.
- Negotiate wholesale margin. Some wholesale buyers accept 60–65% of retail for artisan products, especially for exclusive or seasonal lines.
- Offer limited wholesale. Focus wholesale on your highest-margin products and decline to wholesale your most labour-intensive bars.
What you shouldn’t do is accept wholesale orders before you’ve checked whether those orders are actually profitable.
How to Track This in Craftybase
Doing this calculation once in a spreadsheet is useful. Doing it reliably across 20 fragrance variants, multiple batch sizes, and evolving materials costs is where spreadsheets start to break.
Craftybase tracks materials inventory and costs at the ingredient level. When you record a soap manufacture, it calculates your COGS automatically based on the actual quantities used and what you paid for them. If the price of coconut oil goes up when you reorder, the new cost feeds into every recipe that uses it.
The loaf-to-bar structure maps directly to how Craftybase handles components: your loaf of soap is a component, and cutting it into bars creates individual products. Each bar gets its proper share of the batch cost without you having to recalculate manually.
For fragrance variants, you can create separate recipes for each scent (or use Craftybase’s component structure to share the base and vary only the fragrance), so each variant has its own accurate cost calculation rather than a single average.
Soapers who’ve been guessing at their pricing often find the first time they run a real COGS calculation that some of their bestsellers are their least profitable products. That’s not a failure. It’s exactly the information you need to make better decisions about what to make more of, what to price up, and what to discontinue.
If you want to start tracking your soap costs without building the system from scratch, the soap making inventory spreadsheet is a free starting point. Or if you’re ready to move beyond spreadsheets, Craftybase’s soap making software handles the full recipe-to-sale workflow.
Frequently Asked Questions
How do I price handmade soap to make a profit?
To price handmade soap profitably, calculate your total cost per bar by adding materials (oils, lye, fragrance, additives) divided by bars yielded, then add packaging per bar, labour at an hourly rate, and overhead (platform fees, tools). Then multiply by at least 3x for retail. A common mistake is skipping labour entirely. For a typical cold process batch, labour is the biggest single cost: often $2.50–$4.00 per bar even at modest hourly rates.
How much should I charge for a bar of handmade cold process soap?
The right price for handmade cold process soap depends on your actual costs, not on what competitors charge. Most quality CP soaps retail between $10–$18 per bar in 2026, with premium soaps (rose absolute, specialty ingredients, complex designs) at the higher end. Calculate your cost per bar using the loaf-to-bar formula first, then set a price that covers costs and includes a real profit margin. Copying competitor prices without knowing your own costs is how soapers end up busy and broke.
What is the loaf-to-bar calculation for soap pricing?
The loaf-to-bar calculation divides your total batch materials cost by the actual number of sellable bars you cut, not the theoretical maximum. If a 2lb oil batch costs $10.91 in materials and yields 10 saleable bars, your materials cost per bar is $1.09. Always use actual yield (after accounting for crumbly edges or waste). This per-bar materials figure is the foundation of every other pricing calculation.
How do I price different soap scents fairly when fragrance costs vary?
Price each scent variant based on its actual fragrance cost, not an average across all scents. A basic floral fragrance oil at $1.80/oz costs $0.17 per bar in a 2lb batch; a rose absolute at $18.00/oz costs $1.73 per bar, a $1.56 difference. Charging the same retail price for both means your rose bars are subsidising your floral bars. Calculate fragrance cost per variant separately and adjust retail price accordingly. Most customers accept a $1–2 premium for premium ingredients when you explain why.
Does Craftybase help with soap pricing and COGS tracking?
Yes. Craftybase is designed specifically for makers who produce physical goods from raw materials, and soap making is a core use case. You enter your recipes, record batch manufactures, and Craftybase calculates your COGS automatically using actual material costs. It tracks the loaf-to-bar component structure natively, updates ingredient costs when you reorder at a new price, and generates the Schedule C and COGS reports soapers need for tax time. Customers like Renee at Rosemary Wellness Soap Company credit Craftybase with helping them understand both retail and wholesale pricing for the first time.
