Satisfactory Production Calculator — New
Compute production using the new build-chain logic. This page mirrors the index UI.
Products
Item
Rate (items/min)
{% for row in targets_ui %}
{% for it in items %}
{{ it }}
{% endfor %}
✕
{% endfor %}
Add product
Calculate
Reset
{% if error %}
{{ error }}
{% endif %}
{% if chain and chain|length > 0 %}
Results
{# Preserve all target rows in the recalculation #} {% for row in targets_ui %}
{% endfor %} {# Separate table: Alternate recipe choices organized by item #} {% if alternates_by_item and alternates_by_item|length > 0 %}
Alternate recipes by item
Item
Preferred recipe
{% for row in alternates_by_item %}
{{ row.item }}
{% for opt in row.options %}
{{ opt.name }} ({{ opt.building }})
{% endfor %}
{% endfor %}
{% endif %}
Recipe
Building
Production level
Ingress
Outputs
Egress
{% for p in chain %}
{{ p.recipe }}
{{ p.building }}
{{ '%.2f'|format(p.production_level) }}
{% if p.ingress and p.ingress|length > 0 %}
{% for ing in p.ingress %}
{{ ing.item }} ← {{ ing.via }} —
{{ '%.2f'|format(ing.rate) }}
{% endfor %}
{% else %}
None
{% endif %}
{% if p.outputs and p.outputs|length > 0 %}
{% for out in p.outputs %}
{{ out.item }} —
{{ '%.2f'|format(out.rate) }}
{% endfor %}
{% else %}
None
{% endif %}
{% if p.egress and p.egress|length > 0 %}
{% for eg in p.egress %}
{{ eg.item }} → {{ eg.to }} —
{{ '%.2f'|format(eg.rate) }}
{% endfor %}
{% else %}
None
{% endif %}
{% endfor %}
Recalculate
Reset overrides
{% endif %}