A maintained home for your STAN models

STAN (TU Wien) taught a generation of engineers how to do substance flow analysis. OpenSankey carries that heritage into the browser: it opens your files and continues the work with today's tools.

STAN 2.7OpenSankey / MFASankey
Status Freeware, last release 2022 Actively developed, open-source core
Platform Windows desktop (Mac/Linux executables since 2025) Any browser, nothing to install
Data reconciliation Error propagation & data reconciliation per ÖNorm S 2096 Constrained reconciliation + completion from ~10% of measured data
Uncertainty Yes Yes, propagated end-to-end
Multi-period / scenarios Periods and layers Data tags: years, scenarios, any dimension, switchable live
Sharing results Static exports Interactive published diagrams, embeddable in any site
Your existing files None .smfa and .zmfa import built in
Price Free Free editor, no account; the flow analysis engine is a subscription, with a one-month trial (see pricing). Academic access available.

Who STAN is for

STAN ("subSTance flow ANalysis") was developed at TU Wien by Oliver Cencic and Helmut Rechberger. It is the reference tool of the academic material and substance flow analysis community: research, teaching, waste management. It implements the Austrian standard ÖNORM S 2096 and is cited across much of the literature in the field. It is free.

What we learned from STAN

Statistical rigour, and the way it displays it. STAN checks the plausibility of the model, reconciles data by weighted least squares, propagates error analytically, then returns diagnostics that publications in the field cite by name: degree of over-determination, objective function value, reconciliation quality index between 0 and 1, gross error detection through a test on the residuals, and a histogram of standardised scores. It couples goods and substance layers through concentration equations, chains stocks from one period to the next, rounds numbers according to the uncertainty attached to them, and lets you attach a literature reference and a remark to every value, layer by layer and period by period. On the traceability of a number inside a scientific paper, it is a model of its kind.

What we chose to do differently

STAN is a desktop calculation tool in which the diagram serves the mathematical model. That produces two structural limits.

The first is the data model: STAN organises values into layers (goods, substances, energy) crossed with periods of equal length. That is exactly what a substance analysis over time requires, and nothing else. A third dimension — a scenario, a region, a use, a supply chain — has no slot in the file: it becomes another file, to be maintained in parallel.

The second is the output: the result of a STAN study is a file or an image. The stan2web portal lets you deposit and search files, read-only, but a file is not a deliverable for a client who wants to explore. To that adds a detail that weighs in daily use: undo only covers moves and resizes, not changes to the model.

Finally, a point of context that is not a criticism of the software: its last published release dates from February 2022, and it relies on an ageing Windows runtime. For a lab starting a three-year PhD, that is a risk to weigh.

What we added

The same discipline, on a web foundation, with visualisation and sharing as first-class citizens: styles, crossed tags, multiple views of one model, legends, auto-layout, and the publication of an interactive diagram you share by URL and embed in a website. On the data side, a structured Excel workbook makes the full round-trip, where STAN goes through the clipboard. On the calculation side, our solver is free — no separately licensed third-party module is needed to handle large systems — it accepts minimum/maximum constraints, returns intervals when the information is insufficient, and uses Monte-Carlo sampling for uncertainty analysis. And dimensions are free and can be crossed: years, scenarios, regions, products, with hierarchical aggregation and disaggregation of nodes. See how, on a concrete example →

When to stay on STAN

Stay on STAN if your work relies on what we do not have yet: the concentration equations that couple goods and substances within a single resolution — the core of substance flow analysis —, the full statistical report (over-determination, quality index, standardised scores), uncertainty-driven rounding, or assisted naming from a nomenclature such as the European Waste Catalogue. Stay there too if your publication has to claim conformity with ÖNORM S 2096 as STAN implements it. The table below says, row by row, where we stand.

And you do not have to choose upfront: our importer reads your files, and your originals stay valid STAN files.

Teaching material flow analysis? Write to us, educational use is open to discussion: see pricing.

See STAN models open in the browser

Real STAN files, in both formats — three .zmfa and one .smfa — with their processes, their periods and their stocks, laid out exactly where STAN drew them. Click one; nothing to install.

Feature by feature: STAN 2.7 and OpenSankey

We wrote this table while building our STAN importer, working from the STAN 2.7 manual and real .zmfa/.smfa files. Each row gets an honest verdict: some things are strictly equivalent (and survive file import), some exist in a different form, and some exist on only one side. Spotted a mistake? Tell us and we will fix it.

Same strictly equivalent Close same job, different form STAN only no equivalent yet OpenSankey only no STAN equivalent

Model & structure

CapabilitySTAN 2.7OpenSankey / MFASankeyVerdict
Processes, flows, imports & exports Import/export symbols (I/E) at the system boundary Imported as external nodes; the I/E letters are kept as display labels Same
Processes with stock Stock level + stock change per period Stocks supported and imported Same
Per-process balancing switch Balancing can be turned off per process Same switch (material balance per node); imported Same
Nested subsystems Subsystems up to 6 levels, each with its own drawing area Node aggregation levels: expand/collapse in place, several independent hierarchies Close
System boundary with automatic totals Drawn boundary; auto text for Σ imports, exports, stock changes A zone can be drawn, but boundary totals are not computed yet STAN only

Layers & periods

CapabilitySTAN 2.7OpenSankey / MFASankeyVerdict
Periods (years, time series) Contiguous periods of equal length Imported as data tags: one diagram, all years, switchable live Same
Substance / energy layers Several layers in one file You choose the layer to open at import; one layer per document for now Close
Concentration equations (goods ↔ substances) Bilinear coupling solved across layers, the SFA core Not available: each dataset is reconciled independently STAN only
Inter-period stock equation stocki = stocki−1 + Δstocki−1, automatic In development (multi-year stock chaining) STAN only
Scaling basis (e.g. per 100 000 inhabitants) Data displayed relative to a reference entity Unit scale factors per dataset Close
Arbitrary extra dimensions Layers × periods only Any number of tag groups: scenarios, regions, products, uses, crossed freely OpenSankey only

Data, uncertainty & reconciliation

CapabilitySTAN 2.7OpenSankey / MFASankeyVerdict
Value = mean ± standard uncertainty Absolute or %, optional per value Imported (converted to relative %), feeds our reconciliation directly Same
Data reconciliation Weighted least squares, incl. nonlinear cases Constrained solver: reconciliation and completion of unknowns from partial data Close
Calculated values in the diagram Toggle between entered and calculated data STAN's calculated values are imported as results and displayed as such Same
Uncertainty of results Analytic error propagation Result intervals (min–max), imported from STAN files and computed by our solver Close
Transfer coefficients Matrix per process, unknown TCs computable Imported as flow-ratio constraints, solved; no matrix editor per node yet Close
Gross error detection & quality index Standard scores, 95% confidence test, reconciliation quality in [0,1] Out-of-uncertainty flagging today; the full statistical report is in development STAN only
Additional linear relations between flows flux = factor × flux, across layers and periods Ratio and min/max constraints within a dataset; cross-layer relations come with multi-layer support Close

Data entry & documentation

CapabilitySTAN 2.7OpenSankey / MFASankeyVerdict
Data grid Data Explorer (grouping, sorting, unit validation) Embedded spreadsheet in the editor Same
Excel workflow Copy/paste with Excel Full structured workbook: import, edit in Excel, re-import, round-trip Close
Custom units & conversion User-defined units incl. quotient units (t/a) Same, and quotient units survive import Same
Literature reference & remarks per value Per layer and period, reusable reference list Imported: references land in the source field, remarks in the hypothesis field, value by value; no reusable reference list yet Close
Uncertainty-driven number rounding Significant digits derived from the uncertainty (metrological display) Standard number formats only STAN only
Flow catalogue (e.g. European Waste Catalogue) Assisted naming from an Excel nomenclature Not available STAN only
Find an object in the model CTRL+F with clickable results Not available yet STAN only

Diagram & sharing

CapabilitySTAN 2.7OpenSankey / MFASankeyVerdict
Layout fidelity on import Positions, elbows, flow order, fonts, colors and label placement reproduced from the STAN file Same
Value labels along a flow Value ovals, position adjustable along the path Positionable labels; the STAN offset is imported, measured along the elbows Same
Image export Raster formats, grayscale option PNG, SVG, PDF, animated GIF Same
Diagram styling Proportional widths, one max-width slider Styles, themes, tags, legends, multiple views of one model, auto-layout OpenSankey only
Undo / redo Moves and resizes only Full history on every action OpenSankey only
Sharing results stan2web file exchange (read-only files) Hosted interactive diagrams, embeddable in any site OpenSankey only
Interface languages German and English English, German, French, Spanish and Italian Same

File formats

STAN 2.7OpenSankey / MFASankey
Native format .zmfa (gzipped XML), .smfa (SQLite), legacy .mfa/.xmfa Versioned open JSON + structured Excel workbook
Reads the other's files No Yes: .smfa and .zmfa, model and drawing included
Automation stancmd.exe CLI Python API (parser + solver), open source

The door only opens one way: STAN cannot read our files, but we read both STAN formats, including the embedded drawing. Migrating loses neither your model nor your layout, and your originals stay valid STAN files.