The platform's core methodological commitment is simple: no false precision, ever. A wide range with caveats is better than a sharp number that's wrong. So every result carries an accuracy grade — A through F — that any audience can read at a glance, and every flow underneath it carries the component scores that grade is built from.
This is the piece classical LCA usually treats as a bolt-on uncertainty analysis. Here it is a first-class, per-flow, propagated property of every number the platform produces.
Three components
Every flow is scored on three independent components, each from 0 to 1:
| Component | What it measures | Best (1.0) | Worst |
|---|---|---|---|
| Source | How credible is the originating dataset? | A verified, peer-reviewed source | An unknown source (≈0.4) |
| Geography | How well does the flow's geography match the activity consuming it? | Same location — an exact match | A global average (≈0.1) |
| Temporal | How current is the data? | Same year | More than ten years old (≈0.1) |
The framework fixes these at exactly three in the current version. Two further components — technological fit and measurement basis — are reserved and follow the same architecture, so they can be added later without changing the model.
A flow's overall score is the mean of its declared components. Undeclared components are excluded from the mean, not counted as zero — the model doesn't punish a flow for information nobody has yet; it simply scores what is known.
Grades
Scores roll up into letter grades so a non-specialist can read confidence instantly:
| Grade | Score |
|---|---|
| A | ≥ 0.85 |
| B | ≥ 0.70 |
| C | ≥ 0.50 |
| D | ≥ 0.30 |
| F | < 0.30 |
How it propagates
Accuracy doesn't stop at a single flow. An activity's accuracy is the mean of its input-flow scores, and that rolls up the whole supply chain — so a weak input deep in the graph is visible in the headline grade, weighted by how much it actually contributes.
Worked illustration for the bread example (see Core concepts):
| Input | source | geography | temporal | score | grade |
|---|---|---|---|---|---|
| Flour (European avg) | 0.85 | 0.80 (one level up: BE → RER) | 0.90 | 0.85 | A |
| Tap water (Belgium) | 0.85 | 1.00 (exact) | 0.90 | 0.92 | A |
| Electricity (Belgium) | 0.85 | 1.00 (exact) | 1.00 | 0.95 | A |
| Yeast (global avg) | 0.85 | 0.10 (global) | 0.70 | 0.55 | C |
The yeast pulls the average down because a global average is a poor geographic match for a Belgian bakery — but yeast is only a small share of the carbon, so the weakness is flagged without dominating the result:
(0.85 + 0.92 + 0.95 + 0.55) / 4 = 0.82 → Grade B
This is the whole point. A missing or generic input never disappears behind a clean number; it shows up as a lower grade and a named weakness the user can decide to improve.
Why substitution isn't failure
When the platform can't find an exact-match supplier, it substitutes the closest one it has — the European flour activity for a Belgian bakery, a global yeast average when no regional one exists. That substitution is tracked and scored, never silent. The geographic distance (Belgium → Europe → global) directly sets the geography component.
The result: a model built from imperfect data is still honest. It tells you not just what the number is but how much to trust it, and exactly where the trust runs thin.
How accuracy improves over time
Accuracy is not fixed at import. It rises as the data behind a result gets better:
- Better producers supersede weaker ones. The same thing (say, rice) can be produced by many activities — a coarse global import, then a regional dataset, then a peer-reviewed, location-specific one. A consumer wired to "rice" resolves to the best available producer, and the grade climbs.
- Review sets the scores. Credentialed and domain-expert reviewers assign the component scores when they accept a contribution — see Community review.
- Data ages. The temporal component decays over time, which forces periodic re-review so a result from five years ago doesn't quietly present itself as current.
See also: Core concepts · Community review · Classical LCA vs EaaA.