Yield Analytics

Last updated on May 21, 2026

TofuPilot computes four yield metrics on every uploaded Run and exposes them on the analytics tab, so you can track quality and rework load from a single view.

The four yields

Each metric counts a different attempt against the same unit.

MetricCounts
First-Pass Yield (FPY)Units that pass on the first attempt of the day.
Second-Pass Yield (SPY)Units that pass on the second attempt.
Third-Pass Yield (TPY)Units that pass on the third attempt.
Last-Pass Yield (LPY)Units that eventually pass within the window. Scrap rate is 1 - LPY.

How yield is computed

Yield is calculated per Unit per day, indexed by attempt, and three rules govern the count.

  • Only the first run of each attempt index counts. A unit you retest four times produces one FPY, one SPY, one TPY, and one LPY data point if it passes by attempt four.
  • Reference samples flagged golden or failing are excluded by default.
  • ABORTED runs do not count, while ERROR and TIMEOUT runs count as not-passing.

The same rules apply on every chart, table, report, and CSV export.

Reading the chart

The yield chart plots FPY, SPY, TPY, and LPY as four lines over the selected range, and for any given day the relationship is FPY ≤ SPY ≤ TPY ≤ LPY.

Filter to Station only in the Source filter to exclude CLI runs from production yield.

Slicing yield

You can apply filters from the filter bar to compare yield across the dimensions that matter to your line.

  • Procedure version: compare FPY before and after a Deployment.
  • Revision: track yield by revision across redesigns.
  • Batch: track yield by production cohort.
  • Station: compare yield across benches.
  • Source: separate operator runs from automated CI runs.

Exporting yield data

Every chart exports as CSV from the overflow menu, with columns for date, attempt index, count, and percentage.

For programmatic access, GET /v2/runs exposes the underlying data with the same filters you use on the dashboard.

How is this guide?

On this page