ProteinIQ
Get a demoSign inStart for free
ProteinIQ
Docking

What is a Vina score, and what counts as good

October 11, 2026·Matic Broz, PhD
Small molecule in a protein pocket with dotted contacts and a magnified contact detail.

The Vina score is the number AutoDock Vina reports for each docked pose, in kcal/mol. It is the value of Vina's empirical scoring function for that pose, and Vina presents it as a predicted binding affinity: more negative means Vina considers the pose more favorable.[1][2] It is not a measured binding free energy, and converting it to a Kd or IC50 gives numbers that can be off by orders of magnitude.

There is no universal good Vina score. The number depends on ligand size, pocket, receptor preparation and scoring function, and Vina's own error on complexes with known affinities is around 2 to 3 kcal/mol.[1][3] A useful cutoff has to come from your target: the score of a redocked native ligand, the scores of known actives against decoys, or the top fraction of a screen. The Vina authors recommend exactly that kind of target-specific check before ordering compounds.[2]

How Vina calculates the score

Vina scores a pose by summing simple terms over every pair of heavy atoms, one from the ligand and one from the receptor, within 8 Å. Each term depends on the surface distance between the two atoms, which is the distance between their centers minus both atomic radii. Hydrogens are not modeled explicitly, and Vina ignores partial charges, so electrostatics enter only through the hydrogen-bond and hydrophobic terms.[1][2]

TermWeightWhat it rewards or penalizes
gauss1−0.0356Atoms in contact, a narrow attraction centered at zero surface distance
gauss2−0.0052A broad attraction centered 3 Å apart
repulsion0.840Atoms that overlap
hydrophobic−0.0351Contacts between hydrophobic atoms
hydrogen bond−0.587Donor and acceptor pairs at hydrogen-bonding distance
N_rot0.0585Ligand flexibility, applied as a divisor
Table 1. Terms and weights in the Vina scoring function. The five pair terms are summed over ligand and receptor heavy-atom pairs within 8 Å, and N_rot divides that sum. The current source code uses the same weights to more decimal places. Sources: Trott and Olson (2010), AutoDock Vina source code (2026).[1][4]

The weighted sum of the five pair terms is the intermolecular energy. Vina then divides it by 1 + 0.0585 × N_rot, where N_rot is the number of rotatable bonds between heavy atoms in the ligand.[1] That last step is a rough penalty for the flexibility a ligand loses when it binds. A ligand with seven rotatable bonds has its intermolecular energy divided by about 1.41.

Two details are easy to miss. The weights were fitted to experimental binding affinities from the PDBbind database, which is why the result is on a kcal/mol scale and why Vina calls it an affinity, but five distance terms and a flexibility divisor cannot capture solvation, entropy or electrostatics in detail.[1] And the intramolecular energy of the ligand affects which pose Vina chooses but is removed from the reported score of the best pose. Lower-ranked poses are reported relative to the best pose's internal energy so the ranking is preserved.[1]

Reading the Vina output

Each docking run returns several poses, nine by default, within 3 kcal/mol of the best one.[2] The usual output table has these columns:

ColumnMeaning
ModeThe pose's rank, 1 being the best score
AffinityThe Vina score in kcal/mol
RMSD lower boundDistance from mode 1, matching each atom to the nearest atom of the same element in the other pose
RMSD upper boundDistance from mode 1, matching each atom to itself
Table 2. Columns in the Vina output table. Source: AutoDock Vina manual (2026).[2]

The two RMSD columns compare each pose with mode 1, not with any experimental structure.[2] A pose with an RMSD upper bound of 12 Å is a different binding mode; one with both bounds under about 2 Å is a near-copy of the top pose. Running Vina's score-only mode, or opening the data view of a ProteinIQ docking job, also shows the parts of the score: the intermolecular energy, the ligand's internal energy, the torsional penalty and the unbound-state energy, which combine as (1) + (2) + (3) − (4).[4]

The c-Abl batch example on ProteinIQ shows how these fit together. Its top imatinib pose has an intermolecular energy of −17.633 kcal/mol and a torsional term of 5.120 kcal/mol, and the reported score is their sum, −12.512 kcal/mol. Dividing −17.633 by −12.512 gives 1.409, which matches the 1 + 0.0585 × N_rot formula with seven rotatable bonds. For the second-ranked pose, the score is −11.290 kcal/mol even though the intermolecular energy alone is −16.680, because that pose's internal energy is less favorable than the top pose's.

What counts as a good Vina score

A Vina score is only meaningful relative to other scores from the same setup. Changing the receptor structure, protonation, search box, exhaustiveness or scoring function changes the scale. The Vina documentation warns that AutoDock4 and Vina scores are not comparable: the same imatinib and c-Abl tutorial system scores about −14 kcal/mol with AutoDock4 and about −13 kcal/mol with Vina.[5] Vinardo uses different terms and weights, so its scores belong on their own scale too.[6]

The more defensible ways to set a threshold all use reference points from your own target:

  1. Redock the co-crystallized ligand and use its score as a benchmark. A new compound scoring well below it deserves a closer look; one scoring far above it probably does not fit as well under this model.
  2. Dock known actives and property-matched decoys with the same protocol, then pick the cutoff that separates them. The Vina FAQ suggests decoys of similar size to the actives.[2]
  3. In a large screen, rank by score and take a top fraction, such as the top 1%, rather than a fixed kcal/mol value.
  4. Normalize by size. Ligand efficiency divides binding free energy by the number of heavy atoms, and about 0.3 kcal/mol per heavy atom is a commonly proposed floor for drug candidates.[7] Applied to docking scores, it flags large molecules that score well only because they are large.

Size matters because every extra heavy atom in contact with the receptor adds favorable pair terms. Experimentally, the binding free energy of the strongest ligands grows by about 1.5 kcal/mol per heavy atom up to about 15 atoms and then levels off.[8] Vina's sum over contacts has no such plateau, so bigger molecules tend to score better whether or not they bind better.

What a score would mean as a Kd

Vina reports kcal/mol, so it is tempting to turn the score into a dissociation constant with ΔG = RT ln Kd. At 25 °C every 1.36 kcal/mol is a factor of 10.

Vina scoreKd if the score were a true ΔG
−6 kcal/mol40 µM
−7 kcal/mol7.4 µM
−8 kcal/mol1.4 µM
−9 kcal/mol250 nM
−10 kcal/mol47 nM
−12 kcal/mol1.6 nM
Table 3. Vina scores converted to dissociation constants. We calculated each Kd with ΔG = RT ln Kd at 298.15 K, as if the score were a measured binding free energy.

The table is useful for intuition about scale, not for prediction. Trott and Olson reported a standard error of 2.85 kcal/mol between Vina scores and experimental binding free energies on a set of 190 complexes.[1] On the CASF-2016 benchmark of 285 complexes, Vina's scores correlated with measured affinities at R = 0.604 with a standard deviation of 1.73 log units, about 2.4 kcal/mol.[3] An error of 2.4 kcal/mol is a factor of about 50 in Kd, so a score that converts to 50 nM is consistent with anything from about 1 nM to 2.5 µM.

Worked example: three ABL1 inhibitors

The public c-Abl batch example docks imatinib, nilotinib and ponatinib into the same c-Abl kinase domain from PDB 1IEP, with one search box and one random seed. All three are approved drugs that bind the same ATP pocket, which makes them a fair test of whether the score ranks binders correctly.

Klaeger and colleagues measured all three against ABL1 in a single kinobeads competition assay in cell lysate. Their apparent Kd values put ponatinib first at 36 nM, imatinib second at 106 nM and nilotinib third at 301 nM.[9] Vina ranks them the other way round. The table data and sources are available to download.

LigandHeavy atomsVina scoreScore per heavy atomMeasured apparent KdMeasured ΔG
Nilotinib39−13.62 kcal/mol0.35301 nM−8.90 kcal/mol
Imatinib37−12.51 kcal/mol0.34106 nM−9.52 kcal/mol
Ponatinib39−12.44 kcal/mol0.3236 nM−10.16 kcal/mol
Table 4. Vina scores and measured ABL1 binding for three inhibitors. Vina scores are the top poses of the ProteinIQ c-Abl batch example (PDB 1IEP, Vina scoring, seed 42). Measured values are kinobeads apparent Kd values from cell lysate, converted with ΔG = RT ln Kd at 298.15 K. Source: Klaeger et al. (2017).[9]
Figure 1. Vina scores and measured binding for three ABL1 inhibitors. Bars show binding free energy with the sign reversed, so longer bars mean stronger binding. Vina scores come from the top poses of the ProteinIQ c-Abl batch example (PDB 1IEP, Vina scoring, seed 42). Measured values are kinobeads apparent Kd values from Klaeger et al. (2017), converted with ΔG = RT ln Kd at 298.15 K. Source: Klaeger et al. (2017). Reuse under CC BY 4.0.

Other measurements agree that ponatinib is the strongest of the three: it inhibited native ABL kinase with an IC50 of 0.37 nM in its original characterization.[10] An isolated-domain binding assay measured imatinib at 1.1 nM and nilotinib at 10 nM, again with imatinib ahead of nilotinib.[11]

Three lessons follow. The scores differ by at most 1.2 kcal/mol, well inside Vina's error, so the order among them is not evidence of anything. The absolute values say even less: converted, all three scores imply sub-nanomolar binding, while measured values for imatinib alone range from 1.1 nM for the isolated kinase domain to 106 nM in cell lysate.[9][11] What the scores do show is that all three fit this pocket well, with scores per heavy atom above 0.3 kcal/mol. That is what docking is good for: telling a plausible binder from an implausible one, not ordering potent binders by affinity.

Where Vina scores are reliable, and where they are not

Vina is better at finding poses than at predicting affinity. In CASF-2016, Vina picked a pose within 2 Å of the crystal structure as its top choice for 90.2% of complexes when the native pose was among the candidates, the best docking power of the scoring functions tested.[3] Its scoring power, the correlation with affinity, was moderate at R = 0.604, below the best machine-learning rescoring function at 0.816.[3] In its original release, Vina docked 78% of 190 test complexes within 2 Å.[1]

Real pose prediction is harder than those benchmarks, because the receptor is usually not the exact structure the ligand was crystallized with. In the GNINA benchmark, Vina's top pose was within 2 Å in 58% of redocking cases and 27% of cross-docking cases with a defined pocket.[12] On the DUD-E virtual screening set of 102 targets, Vina 1.2 reproduced the crystal pose as its top pose for 68% of complexes and averaged an area under the ROC curve of 0.72 for separating actives from decoys.[13]

A few situations make Vina scores especially unreliable:

  • Metal-binding ligands, because the default Vina function does not model coordination; Vina 1.2 can use the AutoDock4Zn force field for zinc sites[4]
  • Charged ligands and salt bridges, because Vina ignores partial charges
  • Large or very flexible ligands, where both the size bias and the search get worse
  • Pockets whose shape changes on binding, because the receptor is rigid by default
  • Covalent inhibitors, whose binding is not represented in the scoring function

Checking a good score before you trust it

A low score says the pose fits the model, not that it is physically right. The checks that catch most false positives are cheap.

Look at the pose. A plausible pose fills the pocket, makes the hydrogen bonds you would expect from known ligands, and does not leave polar groups buried without a partner. PLIP lists the interactions in a docked complex. Check the geometry with PoseBusters, which flags bond lengths, clashes and stereochemistry that a scoring function can tolerate.

Check stability across runs. Repeat the docking with different random seeds or higher exhaustiveness. A pose that comes back as mode 1 every time is more trustworthy than one that appears once. If you have a reference structure, measure the distance with RMSD Calculator; 2 Å is the usual cutoff for a correct pose.[1]

Get a second opinion from a different method. Rescoring the same poses with gnina, which uses convolutional neural networks to score poses, improved top-pose accuracy from 58% to 73% in redocking compared with Vina scoring.[12] smina supports custom scoring terms and Vinardo. For affinity, Boltz-2 predicts a log IC50 for ranking active molecules and a separate binder probability for separating binders from decoys.[14] Agreement between methods that fail in different ways is better evidence than any single score.

Vina scores on ProteinIQ

ToolWhat it reports
AutoDock VinaVina, Vinardo or AutoDock4 scores per pose, RMSD bounds and the native energy terms; score-only and local optimization modes
sminaVina-family docking with custom scoring and minimization
gninaVina-style docking with CNN pose and affinity scores
PoseBustersPhysical and chemical plausibility checks for docked poses
PLIPHydrogen bonds, hydrophobic contacts and other interactions in a complex
RMSD CalculatorPose RMSD against a reference ligand
Boltz-2Co-folded complexes with predicted affinity and binder probability
DiffDockDiffusion-based pose generation with its own confidence score
Table 5. Docking scores and pose checks on ProteinIQ.

A practical sequence for a docking result:

  1. Dock with AutoDock Vina and include the native ligand or a known active as a reference.
  2. Compare each compound's score with the reference rather than with a fixed number, and divide by heavy atoms to spot size effects.
  3. Inspect the top poses, run PoseBusters and list interactions with PLIP.
  4. Repeat promising runs with new seeds, and rescore with gnina or predict the complex with Boltz-2.
  5. Treat the shortlist as hypotheses for an experiment, not as measured affinities.

The AutoDock Vina guide covers preparing inputs and setting the search box, and the molecular docking and structure-based virtual screening use cases compare docking methods.

Frequently asked questions

Is a more negative Vina score better?

Yes, within one docking setup. More negative means Vina considers the pose more favorable.[2] Differences smaller than about 2 kcal/mol between different compounds are within the scoring function's typical error.[3]

Is −7 kcal/mol a good Vina score?

For a small fragment it can be strong; for a drug-sized molecule it is unremarkable. Compare it with a known ligand docked into the same receptor with the same settings, and check its score per heavy atom.

Is the Vina score the binding affinity?

Vina calls it a predicted binding affinity, and its weights were fitted to measured affinities, but it is a simple scoring function with errors of a few kcal/mol.[1][2] It correlates moderately with measured affinity, R = 0.604 on CASF-2016, and should not be reported as a Kd, Ki or IC50.[3]

Why did my ligand get a positive Vina score?

A positive score usually means the pose clashes with the receptor. Common causes are a search box that does not include the pocket, a receptor with a bound ligand or extra atoms left in the site, or a ligand too large for the pocket in this receptor conformation.

Can I compare Vina scores between different proteins?

Not reliably. Pocket size, shape and chemistry change the score scale, so the same ligand can score differently against two proteins without binding them differently. Compare compounds against one prepared receptor instead.

Are Vina, Vinardo and AutoDock4 scores comparable?

No. Each uses different terms and weights, and the AutoDock Vina documentation states that AutoDock4 and Vina scores are not comparable.[5][6] Pick one scoring function for a project and keep it.

Sources14
  1. AutoDock Vina: improving the speed and accuracy of docking with a new scoring function, efficient optimization, and multithreading

    Journal of Computational Chemistry · 2010

  2. AutoDock Vina manual and FAQ

    Scripps Research · October 11, 2026

  3. Comparative Assessment of Scoring Functions: The CASF-2016 Update

    Journal of Chemical Information and Modeling · 2019

  4. AutoDock Vina source code

    Center for Computational Structural Biology, Scripps Research, GitHub · October 11, 2026

  5. Basic docking

    AutoDock Vina documentation · October 11, 2026

  6. Vinardo: A Scoring Function Based on Autodock Vina Improves Scoring, Docking, and Virtual Screening

    PLoS ONE · 2016

  7. The role of ligand efficiency metrics in drug discovery

    Nature Reviews Drug Discovery · 2014

  8. The maximal affinity of ligands

    Proceedings of the National Academy of Sciences · 1999

  9. The target landscape of clinical kinase drugs

    Science · 2017

  10. AP24534, a pan-BCR-ABL inhibitor for chronic myeloid leukemia, potently inhibits the T315I mutant and overcomes mutation-based resistance

    Cancer Cell · 2009

  11. Comprehensive analysis of kinase inhibitor selectivity

    Nature Biotechnology · 2011

  12. GNINA 1.0: molecular docking with deep learning

    Journal of Cheminformatics · 2021

  13. AutoDock Vina 1.2.0: New Docking Methods, Expanded Force Field, and Python Bindings

    Journal of Chemical Information and Modeling · 2021

  14. Boltz prediction documentation

    GitHub · October 11, 2026

Cite this article

Broz, M. (2026, October 11). What is a Vina score, and what counts as good. ProteinIQ. https://proteiniq.io/guides/vina-score

Reuse the chartsCC BY 4.0

You can use the charts in this article in your own articles, slides and teaching materials, including commercial work, under the CC BY 4.0 license. Credit ProteinIQ and link to this page. The license covers the charts only, not the article text or illustrations.

Credit

Chart: “What is a Vina score, and what counts as good” by ProteinIQ, CC BY 4.0

About the author

Matic Broz, PhD

Founder and computational chemist, ProteinIQ

Dr. Matic Broz is the founder of ProteinIQ and a computational chemist. He completed a PhD focused on protein structure, molecular dynamics, and neural networks, and writes about structural biology and scientific software.

  • LinkedIn
  • Google Scholar
  • ORCID
Published
October 11, 2026

Related guides

Browse all guides
Small ligand positioned in a protein binding pocket within a docking search box.

Docking · August 17, 2026

How to use AutoDock Vina online

Learn how to run AutoDock Vina online, choose a binding box, set exhaustiveness and pose limits, interpret scores, and validate docking results.

Schematic candidate ligand poses around a protein, with a predicted pose in a surface pocket.

Docking · September 25, 2026

How to use DiffDock online

Run DiffDock-L online from a protein structure or sequence, choose settings and read the confidence scores. Compare DiffDock with AutoDock Vina and AlphaFold 3, and fix common errors.

Model and reference protein complexes overlaid for comparison of their interface.

Structures · October 11, 2026

DockQ score explained

DockQ scores how closely a predicted protein complex matches a reference interface, from 0 to 1, with CAPRI cutoffs at 0.23, 0.49 and 0.80. Learn how it combines fnat, iRMSD and LRMSD, and how pDockQ estimates it with no reference.

ProteinIQ

Published bioinformatics tools, ready to run in the browser.

Platform

  • Bioinformatics tools
  • Workflows
  • Batches
  • AI Assistant
  • PDB viewer

Developers

  • Examples
  • API
  • Python SDK
  • MCP server

Popular tools

  • Boltz-2
  • AlphaFold 2
  • ESMFold
  • AutoDock Vina
  • RFdiffusion
  • ProteinMPNN
  • All tools

Teams

  • For academia
  • For enterprise

Research areas

  • Small molecule
  • RNA discovery
  • Antibody engineering
  • Peptide discovery
  • Enzyme engineering
  • Protein engineering

Use cases

  • Virtual screening
  • Molecular docking
  • Protein structure prediction
  • Protein design
  • Molecular dynamics simulation
  • All use cases

Resources

  • Documentation
  • Guides
  • Datasets
  • Blog
  • Customers
  • Changelog
  • Sitemap

Company

  • About
  • Careers
  • Contact
  • Pricing
  • Author

Trust and legal

  • Security
  • Trust center
  • Terms
  • Privacy policy
  • All legal documents

© 2026 ProteinIQ

  • Pricing