> ## Documentation Index
> Fetch the complete documentation index at: https://developer.klikit.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Production runs

> Turn raw ingredients into finished goods (batches, sauces, prepped items) and track actual yield against the recipe.

A **production run** records making a finished item from a recipe — a batch of
chili oil, a rendang base, prepped portions. Starting a run deducts the raw
ingredients from stock; completing it adds the finished product and records how
much you actually got versus what the recipe expected (**yield**).

<Note>
  Production runs are part of the **Procurement** capability, alongside
  [Purchasing](/inventory/procurement). If there's no **Production Runs** entry
  under Inventory, it isn't enabled for your business yet.
</Note>

## What you need first

A production run is built from a **composite** — a recipe that lists the raw
ingredients and quantities that go into one unit of the finished item.
Composites are set up under **Inventory → Composite Items**. The run reads that
recipe to work out the raw materials to deduct.

<Note>
  Recipe input quantities accept **decimals** — enter the exact per-unit amount
  (e.g. `0.02` L of cooking oil for one portion), not a rounded whole number. The
  same applies to a menu item's food-cost recipe under **Inventory → Item Setup**.
</Note>

## The run lifecycle

<Steps>
  <Step title="Draft">
    Create the run: pick the **product (composite)**, the **planned yield**
    quantity, and the **yield unit** (batch, kg, portion…). The system derives
    the raw-material bill of materials from the recipe.
  </Step>

  <Step title="In progress">
    **Start** the run. The raw ingredients are deducted from branch stock
    immediately, so on-hand numbers stay honest while you cook.
  </Step>

  <Step title="Completed">
    **Complete** the run: enter the **actual yield** produced and, if they
    differed, the actual quantities of each raw material used. The finished
    goods are added to stock and the yield percentage is recorded.
  </Step>
</Steps>

You can **Cancel** a run that was started; the raw-material deductions are
reversed.

## Create and start a run

1. Go to **Inventory → Production Runs** and choose **New production run**.
2. Pick the **branch**, the **product (composite)**, the **planned yield**
   quantity, and the **yield unit**.
3. Choose:
   * **Save Draft** — review the derived raw materials first, start later.
   * **Save & Start** — begin immediately and deduct raw materials now.

## Complete a run and record yield

Open an in-progress run and choose **Complete run**:

1. Enter the **actual yield** you produced.
2. Optionally adjust the **actual quantity** of each raw material used — the
   recipe estimate is pre-filled, so you only change what differed.
3. Confirm. Finished goods are added to stock, and the run shows the
   **yield %** = actual ÷ planned.

<Tip>
  Yield percentage is your production efficiency signal. Consistently low yields
  point at recipe drift, portioning, or waste during prep — worth investigating.
</Tip>

## Where each part lives

<CardGroup cols={2}>
  <Card title="klikit dashboard (cloud)" icon="desktop">
    Create runs, start them, and complete them with actual yield.
  </Card>

  <Card title="Related: waste" icon="arrow-right" href="/inventory/waste">
    Prep loss and spoilage that isn't a sale is logged as **waste**.
  </Card>
</CardGroup>
