5.5. Production Module
Some items are prepared in advance and kept in stock, such as packed coffee, pizza dough or a sauce made in batches. In Ritapos you can define these intermediate items as raw materials and produce them with a production recipe. That keeps both the intermediate item's stock and the stock of its ingredients correct.
In this lesson you will learn how to define a production recipe, how production affects stock and cost, how to apply the production cost to the output raw material, and how to reverse production.
When to use a production recipe
Intermediate items prepared in batches are often called prep items or semi-finished goods. If you want to track one in stock with its own quantity and its own cost, use a production recipe.
- A sub-recipe creates no separate stock line. When a product is sold, its raw materials leave stock directly.
- A production recipe adds the intermediate item to stock as a separate raw material. You then use it in the recipes of the products you sell like any other raw material. A production recipe also has its own cost, calculated for one batch.
Sub-recipes are covered in 5.2. Adding and Editing Recipes.
Standard recipe, yield and trim loss
A production recipe is a standard recipe for an intermediate item. A standard recipe makes sure every batch is prepared with the same ingredients and quantities, so the cost of a batch is predictable too (Dopson and Hayes, 2015; BC Cook Articulation Committee, 2015). A systematic review of cost control studies also lists standard yield among the basic standards (Çakır and Özgür Göde, 2025).
The quantity lost during preparation is called trim loss. Trim loss is purchased food too, so the cost of the usable quantity is higher than the cost of the quantity purchased (BC Cook Articulation Committee, 2015). Yield percentage and trim loss calculations are covered with an example in 5.2. Adding and Editing Recipes.
In Ritapos, every input in a production recipe has Miktar (quantity) and Fire (trim loss) fields. As in sales recipes, trim loss is entered as an absolute quantity in the same unit as Miktar. In production, Miktar plus Fire leaves stock, and the production cost is calculated on that total.
Example: packed coffee
Let us use sample data. You sell a product called "200g Etiyopya paket kahve" (200 g packed Ethiopian coffee). Your storage holds Ethiopian coffee beans and coffee bags as raw materials. Each pack contains 200 g of beans and 1 bag. About 4 g of beans per pack is spilled during filling.
- Coffee beans: unit Kilogram, sale price 1,500.00₺. Smallest-unit sale price 1,500 / 1,000 = 1.50₺/g.
- Coffee bags: unit Adet (piece), sale price 5.00₺.
1. Defining the output raw material
The intermediate item that enters stock after production is a raw material. First, define a raw material called "200g Etiyopya paket kahve" on the Ham maddeler (raw materials) page. In the example we use the Adet (piece) unit, and the production recipe describes one pack. Adding raw materials is covered in 5.1.1. Raw Material Management.
You can update the output raw material's purchase and sale prices after production with the calculated production cost. This step is covered in section 5 below.
2. Defining a production recipe
On Stoklar & Reçeteler > Reçeteler or Stoklar & Reçeteler > Üretim > Üretim reçeteleri (production recipes), click the arrow next to the green + button and choose Yeni üretim reçetesi (new production recipe).
- In the top Ham madde (raw material) field, choose the output raw material. In the example, "200g Etiyopya paket kahve".
- In the Ham maddeler (raw materials) section, fill in Ham madde, Birim (unit), Miktar and Fire for each input. Use the + button to add a line and the - button to remove one.
- Optionally, enter Elektrik tüketimi (kWh), Su tüketimi (l) and Gaz tüketimi (m3) (electricity, water and gas use) under Kaynaklar (resources). The resource cost is calculated with the unit costs in the Kaynak çarpanları panel when you save the recipe. If you change those unit costs, open your production recipes and save them again.
- Optionally, enter Planlama maliyeti (planning cost) and Ek maliyetler (additional costs) under Diğer maliyetler (other costs).
- Add an Açıklama (description) if needed and click Kaydet (save).
Sample lines (sample data):
- Coffee beans: unit Gram, Miktar 200, Fire 4.
- Coffee bags: unit Adet, Miktar 1, Fire 0.


On the bean line, Gram is chosen as the unit. Even though the beans are defined in Kilogram in stock, the recipe line shows Gram. If you leave the form without saving, no warning appears.
Note that the first field on the form is a raw material, not a product. A production recipe makes a new raw material from other raw materials.
Do not add trim loss to Miktar. Enter it separately in Fire. If you enter the loss in both fields, it is counted twice in both stock deduction and cost.
Also define a recipe for the sales product "200g Etiyopya paket kahve". Use 1 piece of the "200g Etiyopya paket kahve" raw material as its only ingredient. When the packed coffee is sold, the output raw material's stock goes down.
3. Calculating production recipe costs
You can see your recipes on Stoklar & Reçeteler > Üretim > Üretim reçeteleri. The list has the Reçete (recipe), Reçete maliyeti (recipe cost), Tarih (date) and İşlemler (actions) columns.

Each row has Düzenle (edit), a green İşlemler (actions) and a red Sil (delete) button. The Göster (show) menu at the top switches between the Reçeteler, Alt reçeteler and Üretim reçeteleri lists.
To calculate the cost of all production recipes, open the İşlemler menu at the top of the page and choose Tümünü hesapla (calculate all). It is the only option in this menu. Ritapos asks for confirmation before it continues.
A newly saved production recipe shows a Reçete maliyeti of 0 on the list until Tümünü hesapla is run. So run İşlemler > Tümünü hesapla each time you save a new production recipe.

A production recipe's cost is calculated the same way as a sales recipe's. For each input, the sale price of the smallest unit is multiplied by Miktar plus Fire. The amounts in the Kaynaklar and Diğer maliyetler sections are then added. The result is the cost of one batch as defined by the recipe.
Example (sample data): the cost of the packed coffee recipe.
- Coffee beans: (200 + 4) x 1.50 = 306.00₺
- Coffee bags: (1 + 0) x 5 = 5.00₺
- Resources and other costs: 0.00₺
- Cost of one pack: 306.00 + 5.00 = 311.00₺
Without trim loss the cost would be 200 x 1.50 + 5 = 305.00₺. The 4 g of spilled beans adds 6.00₺ per pack.
When input sale prices change, run Tümünü hesapla on the production recipes again.
4. Producing (Üret)
Open Stoklar & Reçeteler > Üretim > Üretim reçetesine göre üretim yap (produce from a production recipe). In the side panel that opens, follow these steps:
- Choose the production recipe in Reçete.
- Enter the production quantity in Miktar. The field starts at 1.
- Click the blue Üret (produce) button.

When you choose the recipe, the panel shows a Ham maddeler (raw materials) table. It lists each input's Miktar, Fire and Birim (unit). The table scales with the production quantity you enter in Miktar and shows the total usage:
- With Miktar 1, it shows 200, 4 and Gram for the beans and 1, 0 and Adet for the bag.
- When you enter 50 in Miktar, it shows 10000, 200 and Gram for the beans and 50, 0 and Adet for the bag.
Check the total usage in this table before you press Üret.

When you produce, the output raw material's stock goes up by the production quantity. Each input's stock goes down by the recipe's Miktar plus Fire, multiplied by the production quantity.
Example (sample data): you entered 50 in Miktar.
- Coffee beans: (200 + 4) x 50 = 10,200 g deducted.
- Coffee bags: (1 + 0) x 50 = 50 pieces deducted.
- The stock of the "200g Etiyopya paket kahve" raw material goes up by 50 pieces.
After production, Ritapos recalculates the recipe's cost with the sale prices at that moment and saves it on the production recipe. The saved value is the cost of one batch and is not multiplied by the production quantity. In the example the recipe shows 311.00₺. The total ingredient cost of 50 packs is 50 x 311.00 = 15,550.00₺.
When you click Üret, no separate confirmation message appears. After producing, check the quantities on the Stoklar (stocks) page. The recipe's Tarih (date) on the production recipe list is updated too.

5. Applying the production cost to the output raw material
Production does not change the output raw material's purchase or sale price by itself. You move the calculated cost to the output raw material yourself.
- On the Üretim reçeteleri list, click the İşlemler (actions) button on the recipe's row. The recipe's detail window opens. The red Sil (delete) button next to it deletes the recipe, so take care not to click it.
- The Toplam & İşlemler (total and actions) section shows the Reçete maliyeti (recipe cost) and Ham madde maliyeti (raw material cost) lines. Ham madde maliyeti is the output raw material's current purchase price.
- If the recipe cost differs from this value, the orange Reçete maliyetini uygula (apply recipe cost) button appears. Click it. The button works without asking for confirmation.
The detail window has four sections: Ham maddeler (raw materials), Kaynak maliyetleri (resource costs), Diğer maliyetler (other costs) and Toplam & İşlemler. The Ham maddeler table shows each input's quantity, trim loss, unit, unit cost and cost. In the example, the bean row shows quantity 200, fire 4, unit cost 1.50 and cost 306.00, and the bag row shows a cost of 5.00. The Toplam & İşlemler section shows a Reçete maliyeti of 311.00 and a Ham madde maliyeti of 305.00. The same section also has a green Reçete maliyetini hesapla (calculate recipe cost) button.
The button writes the recipe cost unconditionally to both the output raw material's Bir birimin alış fiyatı (purchase price per unit) and Bir birimin satış fiyatı (sale price per unit) fields. It replaces the previous purchase price and is not averaged with it. In the example the packed coffee's purchase price is 305.00₺ and the recipe cost is 311.00₺. When you click the button, both purchase and sale prices become 311.00₺. If you entered a higher sale price manually, this step lowers it to the recipe cost; we suggest checking before you click.
After you click the button, the window shows a Ham madde maliyeti of 311.00 and the orange button disappears. On the Ham maddeler list, the packed coffee row shows 311 in both the purchase and sale price fields. On the Stoklar page, the packed coffee's Toplam (total) is calculated with the new purchase price too. For example, with 48 packs in stock, Toplam is 48 x 311.00 = 14,928.00₺.


The stock value of the packed coffee is calculated from its purchase price. The cost of the sales recipe that uses it is calculated from the raw material's sale price. So when the production cost changes, follow this order:
- On the production recipe, update the output raw material's purchase and sale prices with Reçete maliyetini uygula.
- On the Reçeteler (recipes) page, recalculate sales recipe costs with Tümünü hesapla.
- Move the cost you decide on to the product card with Tümünü uygula (apply all).
Why recipe cost and product cost are kept separate is covered in 5.3. Cost Calculation.
Keeping track of production
The production recipe holds the most recently calculated batch cost. The Tarih (date) on the production recipe list is also updated when you produce. Ritapos has no page that lists past production runs. You follow the effect of production on stock from the Stoklar page and your stock counts.
To see the record of stock changes, open the İşlem kayıtları (activity logs) page and choose Ham maddeler from the Göster (show) menu. This log lists raw material stock updates as Güncellendi (updated), with the date, time and user. According to the screen, records are kept for the last 30 days.

6. Converting back to raw materials (Dönüştür)
You can also reverse production. For example, if packed coffee close to its expiry date will not sell, you may want to use the beans for filter coffee.
Open Stoklar & Reçeteler > Üretim > Ham maddeye dönüştür (convert to raw materials). The Ham maddeye dönüştür page opens.
- Choose the production recipe in Reçete.
- Enter the quantity to convert in Miktar.
- Click Dönüştür (convert).

When you choose the recipe and enter the quantity, the same Ham maddeler table as in the production panel appears. When you click Dönüştür, no separate confirmation message appears. Check the result on the Stoklar page.
Converting works in the opposite direction to production. The output raw material's stock goes down by the quantity converted. The inputs are added back to stock according to the recipe.
Converting does not calculate cost. The production recipe's cost and the output raw material's purchase and sale prices stay the same.
Converting reverses the whole recipe, so in the example the bags are added back to stock too. If opened bags cannot be reused, record them as waste as shown in 5.1.6. Raw Material Waste.
Tips
- Enter production on the day the items are physically prepared, so the stock screen reflects the real state of the kitchen.
- Measure trim loss over several batches and enter the average in the recipe. Both stock deduction and cost then come closer to reality.
- Include the output raw material in stock counts. Stock counts are covered in 5.1.5. Stock Count.
- For an estimate before you set up a production recipe, you can use the prep cost calculator.
Sources
- Çakır, Ş. and Özgür Göde, M. (2025). A systematic review of studies addressing the cost control process in food and beverage businesses. Journal of Tourism, Leisure and Hospitality, 7(1), 57-75. doi.org/10.48119/toleho.1643299
- Dopson, L. R. and Hayes, D. K. (2015). Food and Beverage Cost Control. 6th edition. Wiley. Chapter 3.
- The BC Cook Articulation Committee (2015). Basic Kitchen and Food Service Management. BCcampus. Chapters: Controlling Food Costs and Yield Testing. Controlling Food Costs, Yield Testing