---
title: Interpreting MM-GBSA outputs
description: >-
  What an MM-GBSA job returns on this platform, and why there is no binding free
  energy, binding classification or Kd estimate in it.
tags:
  - mmgbsa
  - outputs
---

MM-GBSA returns single-point energies for the minimized protein-ligand complex, together with a `caveat` explaining what they are not. **This implementation does not compute a binding free energy:** `delta_g_bind` is `null` and `binding_affinity_available` is `false` on every run, because the job evaluates the complex as one system rather than decomposing it into receptor and ligand. Read [how MM-GBSA results compare to the bench](/docs/mmgbsa/translatability) before you act on anything here.

## Output artifacts

Each completed MM-GBSA job returns single-point energies for the minimized complex, plus a `method` and `caveat` field. It does not return a binding free energy, an energy decomposition, or per-residue analysis — see the field table below for what is and is not emitted.

## Primary output fields

| Field | Unit | Description |
|-------|------|-------------|
| **binding_affinity_available** | boolean | Whether a ΔG verdict could be computed at all |
| **delta_g_bind** | kcal/mol | Total binding free energy (more negative = stronger binding); `null` when unavailable |
| **vdw_energy** | kcal/mol | Van der Waals contribution |
| **elec_energy** | kcal/mol | Electrostatic contribution |
| **gb_energy** | kcal/mol | Polar (Generalized Born) solvation energy (desolvation penalty, typically positive) |
| **sa_energy** | kcal/mol | Non-polar (surface-area) solvation energy (hydrophobic burial, typically negative) |
| **binding_classification** | string | **Not emitted.** Listed in the tool's output manifest, but the backend classifier was removed and returns `null` |
| **estimated_kd** | nM | **Not emitted.** See [why a ΔG → Kd conversion is not defensible](/docs/mmgbsa/translatability#the-kd-conversion-is-not-defensible) |
| **complex_potential_energy_kcal** | kcal/mol | Complex potential energy, returned alongside a `caveat` when no binding verdict is available |
| **nonbonded_energy_kcal** | kcal/mol | Complex nonbonded energy, returned alongside a `caveat` when no binding verdict is available |

## There is no binding strength classification

Earlier versions of this page described a mapping from DeltaG_bind to "very strong / strong / moderate / weak / no binding" with an estimated Kd in nanomolar. **That mapping has been removed, from the backend and from these docs, and it should not be reintroduced.** Two independent reasons:

- **It had no valid input.** The classifier was being fed the minimized complex's raw total potential energy — thousands of kcal/mol — mislabelled as a binding free energy, so it returned "very strong / drug-like" for every run. Nothing in the running code now emits a classification or a Kd.
- **The conversion would not be defensible even with a real ΔG.** Kd = exp(ΔG/RT) amplifies the input error geometrically: 1 kcal/mol of error is a 5.4-fold error in Kd, 2 kcal/mol is 29-fold, 3 kcal/mol is 158-fold. Published MM/GBSA absolute errors run from 4.4 to 21 kcal/mol depending on the target. The full argument, with the primary citations, is in [how MM-GBSA results compare to the bench](/docs/mmgbsa/translatability#the-kd-conversion-is-not-defensible).

What the method *is* good for, where it produces a ΔG at all, is **ranking a congeneric series against one target** — not stating an affinity. Report the energy with its units and keep the error bars.

## Energy decomposition

### Understanding each term

**Van der Waals (DeltaG_vdw):**
- Represents shape complementarity between protein and ligand
- Typically the largest favorable contribution for hydrophobic ligands
- More negative values indicate better shape fit in the binding pocket

**Electrostatic (DeltaG_elec):**
- Represents charge-charge and dipole interactions
- Favorable for ligands with hydrogen bonds or salt bridges to the protein
- Can be very favorable but is often offset by the polar solvation penalty

**Polar solvation (DeltaG_polar):**
- Represents the desolvation cost of burying polar groups upon binding
- Typically positive (unfavorable) and partially cancels the electrostatic term
- Large positive values indicate significant desolvation penalty

**Non-polar solvation (DeltaG_nonpolar):**
- Represents the hydrophobic effect of burying non-polar surface area
- Typically a small negative (favorable) contribution
- Proportional to the buried solvent-accessible surface area

### Reading the decomposition chart

The canvas card displays a stacked bar chart with:
- Green bars for favorable (negative) energy terms
- Red bars for unfavorable (positive) energy terms
- Total DeltaG_bind shown as a separate summary bar
- Hover over each segment for exact values

## Per-residue decomposition

When per-residue decomposition is enabled, the output includes a ranked table of residues:

| Column | Description |
|--------|-------------|
| **residue** | Residue name and number (e.g., ASP-189) |
| **chain** | Protein chain identifier |
| **total** | Total per-residue binding contribution (kcal/mol) |
| **vdw** | Van der Waals contribution from this residue |
| **elec** | Electrostatic contribution from this residue |
| **polar** | Polar solvation contribution from this residue |

### Interpreting per-residue hotspots

- **Negative total**: Residue contributes favorably to binding (hotspot)
- **Positive total**: Residue destabilizes the complex (potential site for improvement)
- **Large magnitude**: Residue has a significant impact on binding; mutations here will likely affect affinity
- **Top 5-10 residues**: Usually account for the majority of binding energy

### Common interaction patterns

- **Hydrophobic contacts**: Large negative vdW term with near-zero electrostatic (e.g., Leu, Ile, Val, Phe)
- **Hydrogen bonds**: Significant negative electrostatic term, partially offset by positive polar solvation
- **Salt bridges**: Very large negative electrostatic term from Asp/Glu-ligand or Arg/Lys-ligand interactions
- **Pi-stacking**: Moderate negative vdW contribution from Phe, Tyr, Trp, or His

## Multi-pose results

When multiple poses are scored, the output includes:

- **Pose ranking table**: All poses sorted by DeltaG_bind
- **Best pose highlight**: The top-scoring pose is marked and displayed in the 3D viewer
- **Energy comparison**: Side-by-side energy decomposition across poses
- **Pose RMSD**: Heavy-atom RMSD between poses for structural comparison

## Downloading artifacts

- **CSV export**: Full energy decomposition, per-residue data, and pose rankings
- **JSON export**: Structured results with metadata and calculation parameters
- **PDB files**: Minimized complex structure for each scored pose
- **PyMOL script**: Visualization script with hotspot residues highlighted

## Canvas visualization

When an MM-GBSA job completes, a result card appears on the canvas.

- **Card size**: 500x450px
- **Border color**: Purple (#9C27B0)
- **Visualization**: Binding energy chart with per-residue decomposition

### Tier 2 metrics

- Best DG (kcal/mol)
- Ligand count
- Method type
- Mean DG
- Frame count

### Interpreting canvas metrics

There is no threshold table here, because there is no binding free energy to threshold. The canvas card shows the energy values the job returned and a colour band on their magnitude; the band is a display convenience, not a binding verdict. A run with no affinity verdict renders the `caveat` instead.

## Quality checks

- Check that `binding_affinity_available` is present and read the `caveat` string before quoting any number
- Confirm minimization converged (`convergence_achieved`) and look at `minimization_steps`
- Treat unusually large energy magnitudes as a parameterization signal, not as tight binding
- Inspect the upstream pose. A physics-based energy computed on a wrong pose is a precise answer to the wrong question, and nothing in the output flags it — see [what the figure doesn't cover](/docs/mmgbsa/translatability)

## Read next
