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

# Germany

> Real-Time LCA support for the German QNG quality label — base, PLUS, and PREMIUM tiers.

export const LifecyclePhases = ({included = [], declaredSeparately = [], note}) => {
  const expand = codes => {
    const set = new Set();
    codes.forEach(code => {
      if (code === 'A1A3') ['A1', 'A2', 'A3'].forEach(c => set.add(c)); else set.add(code);
    });
    return set;
  };
  const inc = expand(included);
  const sep = expand(declaredSeparately);
  const stages = [{
    name: 'Product',
    modules: [['A1', 'Raw materials'], ['A2', 'Transportation'], ['A3', 'Manufacturing']]
  }, {
    name: 'Construction process',
    modules: [['A4', 'Transportation'], ['A5', 'Construction / Assembly']]
  }, {
    name: 'Use',
    modules: [['B1', 'Use'], ['B2', 'Maintenance'], ['B3', 'Repair'], ['B4', 'Replacement'], ['B5', 'Renovation'], ['B6', 'Energy consumption for operation'], ['B7', 'Water consumption for operation']]
  }, {
    name: 'End of life',
    modules: [['C1', 'Demolition'], ['C2', 'Transportation'], ['C3', 'Waste pretreatment'], ['C4', 'Disposal']]
  }, {
    name: 'Beyond the system boundary',
    modules: [['D', 'Potential for reuse, recycling and other recovery']]
  }];
  const bg = code => {
    if (inc.has(code)) return '#D6DAFF';
    if (sep.has(code)) return '#E8E6E6';
    return 'transparent';
  };
  const fg = code => inc.has(code) || sep.has(code) ? '#000' : 'inherit';
  return <div>
      <table style={{
    borderCollapse: 'collapse',
    width: '100%',
    margin: '0.5em 0'
  }}>
        <thead>
          <tr>
            <th align="left" style={{
    padding: '8px',
    borderBottom: '1px solid #ccc'
  }}>Stage</th>
            <th align="left" colSpan={2} style={{
    padding: '8px',
    borderBottom: '1px solid #ccc'
  }}>Module</th>
          </tr>
        </thead>
        <tbody>
          {stages.flatMap(stage => stage.modules.map(([code, label], idx) => <tr key={code}>
                {idx === 0 && <td rowSpan={stage.modules.length} valign="top" style={{
    padding: '8px',
    borderBottom: '1px solid #eee'
  }}>
                    <strong>{stage.name}</strong>
                  </td>}
                <td style={{
    backgroundColor: bg(code),
    color: fg(code),
    padding: '8px',
    width: '60px'
  }}>
                  <strong>{code}</strong>
                </td>
                <td style={{
    backgroundColor: bg(code),
    color: fg(code),
    padding: '8px'
  }}>{label}</td>
              </tr>))}
        </tbody>
      </table>
      {note && <p style={{
    marginTop: '0.5em',
    fontStyle: 'italic',
    fontSize: '0.9em'
  }}>{note}</p>}
    </div>;
};

Real-Time LCA implements the **[QNG](https://www.qng.info)** quality label — *Bundes-Qualitätssiegel Nachhaltiges Gebäude*, the German federal sustainable-building quality label issued by the Federal Ministry for Housing, Urban Development and Building (BMWSB). Three tiers are exposed as separate calculation types: **QNG**, **QNG-PLUS**, and **QNG-PREMIUM**. They share the same module set; the difference is the limit value.

## Shared scope

<LifecyclePhases included={['A1A3', 'B4', 'B6', 'C3', 'C4', 'D']} note="Blue = required modules under QNG, QNG-PLUS, and QNG-PREMIUM." />

* **Reference study period:** 50 years.
* **Indicator:** Global Warming Potential (GWP), kg CO₂-eq per m² GFA per year.

## QNG (base tier)

The entry tier of the QNG label.

* **Threshold:** none configured in Real-Time LCA. Achieving the base QNG label requires meeting the broader QNG criteria framework outside the GWP-only check; this calculation type produces the numeric input to that broader assessment.

## QNG-PLUS

The intermediate tier — the same module scope with a regulator-defined limit value.

* **Threshold:** **24 kg CO₂-eq / m² / year**.

## QNG-PREMIUM

The top tier — the same module scope with the tightest limit value.

* **Threshold:** **20 kg CO₂-eq / m² / year**.

## Custom and Level(s)

Real-Time LCA additionally exposes **Custom** and **Level(s)** (full EN 15978 module set, see [Level(s)](/methodology-and-compliance/levels)) for German projects. Projects targeting **DGNB** certification typically use Custom or Level(s) — see [Certification schemes](/methodology-and-compliance/certification-schemes) for DGNB scheme details.

## Datasource

Most German projects rely on **OEKOBAUDAT** as the primary generic-data source, complemented by **IBU** (Institut Bauen und Umwelt) verified EPDs. See [EN 15804+A2](/methodology-and-compliance/en-15804) for details on datasource handling.

## Reference Service Life

QNG calculations use German lifetime references for module B4 replacement, with project-level overrides available — see [Assumptions and defaults](/methodology-and-compliance/assumptions-and-defaults).

## Limitations

* The QNG label has criteria beyond GWP — circularity, healthy materials, sustainable construction-site practice, and others. The QNG calculation type in Real-Time LCA addresses the building-level GWP component only; the rest of the QNG criteria are assessed outside the calculation type.
* Output-format details for QNG submission are tracked separately.
