Docking with an AlphaFold Model: Prepare, Check, Validate
Skip to content

How to Dock a Ligand into an AlphaFold Model, Step by Step

How to Dock a Ligand into an AlphaFold Model, Step by Step

To dock a ligand into an AlphaFold model, download the model, trim the low-confidence regions (pLDDT below 50 to 70) that lie away from the site, superpose it on an experimental structure of a homolog with a ligand bound, and confirm the pocket is open and free of clashes. Then prepare it with Meeko, dock with AutoDock Vina, and redock the homolog’s ligand as a control.

This guide is the procedural follow-on to our post on reading AlphaFold pLDDT and PAE scores, which tells you whether a model is good. Here we take one model all the way to a docking run, using real numbers from a worked example, so you can see where the method breaks. It was written by the StemSkills Lab team, who have spent more than ten years on structural bioinformatics, drug design and molecular modeling.

Can you dock a ligand into an AlphaFold model at all?

Yes, but not naively. The largest benchmark so far comes from the Forli lab at Scripps. Holcomb and colleagues redocked ligands from PDBbind into both the experimental co-crystal receptors and the matching AlphaFold2 models with AutoDock-GPU, across 2,474 complexes (Holcomb et al., Protein Science, 2023). The top-ranked pose landed within 2 Å of the crystal pose for 41% of the experimental receptors and only 17% of the AlphaFold2 models. Their conclusion is direct: “fine structural details limit the naive application of AlphaFold2 models as docking targets.”

Two more findings matter for the steps below:

  • In the same study, the model’s own confidence score did not predict docking success, even though it tracked backbone accuracy well. Removing low-confidence regions and making side chains flexible improved the poses.
  • For GPCRs, Karelina, Noh and Dror (eLife, 2023) found AlphaFold2 binding pockets far closer to experiment than older template-based models (median pocket RMSD 1.3 Å against 3.3 Å). Docking accuracy still was not significantly better than with those older models, and was much lower than with experimental structures solved without the ligand.

So an AlphaFold model is a hypothesis about your receptor, not a replacement for a crystal structure. The steps below are designed to catch the cases where that hypothesis is wrong before you report a docking score.

When should you use an AlphaFold model instead of a PDB structure?

Use one only when no suitable experimental structure exists for your protein. Check the RCSB PDB first (our guide to downloading structures from RCSB shows how). An experimental structure of the same protein with a ligand in the same site beats any model. If you only have a structure of a close homolog, or an apo structure, or nothing at all, the decision looks like this:

Receptor sourceWhat the evidence saysUse it when
Experimental, ligand bound (holo), same protein41% top-pose success in the Holcomb benchmarkAlways, if it exists
Experimental, no ligand (apo)Better than AlphaFold2 for GPCR pose prediction (Karelina et al.)No holo structure, but an apo one exists
AlphaFold model, used as downloaded17% top-pose success in the Holcomb benchmarkNever as the only receptor
AlphaFold model, trimmed, superposed and pocket checkedTrimming and flexible side chains improved outcomes case by case (Holcomb et al.)No experimental structure; a homolog holo structure is available for checks
AlphaFold model plus MD or ensemble receptorsSamples side-chain and loop states the single model missesThe pocket check shows clashes or a closed site

If you are still deciding between prediction routes, our comparison of AlphaFold, homology modelling and experimental structures covers the wider trade-offs.

How do you download the right AlphaFold model?

Search your UniProt accession at the AlphaFold Protein Structure Database, which provides structure coverage for over 214 million protein sequences (Varadi et al., Nucleic Acids Research, 2024). Download the PDB file from the entry page. If your protein is not in the database, predict it with ColabFold as shown in our AlphaFold prediction tutorial.

Our worked example is human ABL1 kinase (UniProt P00519), the target of imatinib. The file is AF-P00519-F1-model_v6.pdb. The version suffix changes when the database is updated, and the API at https://alphafold.ebi.ac.uk/api/prediction/P00519 returns the current file URL. As a control we use PDB 1IEP, the 2.10 Å X-ray structure of the mouse Abl kinase domain with imatinib bound (ligand code STI). Both files use the same residue numbering, and the kinase-domain sequences differ at a single position (residue 336).

Two facts about the file shape every later step:

  • pLDDT lives in the B-factor column. Every atom of a residue carries that residue’s score, so you can select and colour by b in PyMOL or ChimeraX.
  • The model is the full-length chain, with no ligands, waters, ions or hydrogens. ABL1 is 1,130 residues, so the file contains far more than the kinase domain.

Which parts of the model should you trim before docking?

Trim low-confidence regions that sit away from the binding site, and keep everything that lines the site. The AlphaFold DB bands are: above 90 very high, 70 to 90 confident, 50 to 70 low, below 50 very low. Very low regions are usually disordered and appear as long loose ribbons. They can drape across a pocket or create surface grooves that score well in Vina but do not exist in the real protein.

Here are the per-region numbers we computed from the ABL1 model:

Region (residues)Mean pLDDTDecision
Whole chain (1 to 1130)63.4Misleading on its own
N-terminus (1 to 64)42.6Remove
SH3 and SH2 region (65 to 240)93.5 to 94.3Remove for site-specific docking (far from the ATP site)
Kinase domain (242 to 493)92.4Keep
C-terminal region (494 to 1130)45.5Remove

Of the 1,130 residues, 556 score below 50. A global average of 63.4 would suggest a poor model, yet the kinase domain is predicted with very high confidence. This is why you judge the region you dock into, not the whole file. In PyMOL:

load AF-P00519-F1-model_v6.pdb, af
remove af and not resi 229-500
spectrum b, red_white_blue, af, minimum=50, maximum=90

Keep a margin around the domain (229 to 500 here, roughly the range modelled in 1IEP). Trim termini freely. Delete an internal loop only if it physically blocks the site, and then check that receptor preparation still runs without errors.

How do you check that the binding pocket is actually formed?

Do two checks: the pLDDT of the pocket residues, and a superposition on an experimental structure with a ligand bound. The second one is what catches real failures.

Check 1: pocket pLDDT

Fetch the control structure, list the residues that touch its ligand, then read the model’s pLDDT for those residue numbers:

fetch 1iep, async=0
iterate 1iep and chain A and name CA and byres (1iep and chain A and polymer within 4 of (1iep and chain A and resn STI)), print(resi, resn)
iterate af and name CA and resi 248+253+256+269+271+286+289+290+299+313+315+317+318+321+360+361+362+370+380+381+382, print(resi, resn, b)

In our example, 21 residues lie within 4 Å of imatinib in 1IEP, and in the model they average a pLDDT of 88.9. The lowest are Tyr253 in the glycine-rich P-loop (60.1), Phe382 of the DFG motif (67.1) and Asp381 (77.0). On pLDDT alone, this pocket looks fine.

Check 2: superpose on a holo homolog and look for clashes

Find an experimental structure of your protein or a close homolog with a ligand in the same site. RCSB sequence search works, and AlphaFill transplants ligands from homologous PDB entries onto AlphaFold models for you (Hekkelman et al., Nature Methods, 2023). Then superpose and look for model atoms sitting on the crystal ligand:

align af, 1iep and chain A
select clash, af and (all within 2.0 of (1iep and chain A and resn STI))
save af_on_1iep.pdb, af

PyMOL’s align rejects outliers over several refinement cycles. We ran an equivalent fit with a 2 Å outlier cutoff: 224 of the 251 kinase-domain Cα atoms superpose at 0.55 Å RMSD. The fold is right. But the residues that do not fit are the ones that matter: the P-loop (residues 250 to 253, displaced 8.6 to 10.4 Å) and the activation loop (382 to 398, displaced by up to 33.5 Å). The ring tip (CZ atom) of Phe382 sits 8.9 Å from its crystal position, and 15 model heavy atoms from Phe382, Leu384, Ser385 and Arg386 lie within 2.0 Å of where imatinib binds.

Imatinib binds an inactive Abl conformation in which the DFG motif is flipped out, as shown in the 1IEP structure. The AlphaFold model places the DFG motif and activation loop differently, so the imatinib site is partly filled by protein. Vina would still return a score, but it would be a score for a pocket that cannot hold this ligand. A pocket pLDDT of 88.9 gave no warning. This is the Holcomb finding in miniature.

Want the guided, hands-on version?

Our live Molecular Modeling & MD Simulations cohort bootcamp takes you from zero to running real docking and MD workflows, with a portfolio project for your grad-school applications.

Join the waitlist (free) →

PDB 1IEP: PROTO-ONCOGENE TYROSINE-PROTEIN kinase abl (2 chains, A and B) with ligand code CL, STI-571 (ligand code STI) and 172 crystallographic water molecules, at 2.10 Å resolution.
PDB 1IEP: PROTO-ONCOGENE TYROSINE-PROTEIN kinase abl (2 chains, A and B) with ligand code CL, STI-571 (ligand code STI) and 172 crystallographic water molecules, at 2.10 Å resolution. Source: RCSB PDB entry 1IEP.

How do you prepare the AlphaFold receptor for AutoDock Vina?

Exactly as you would a crystal structure, with one advantage: AlphaFold models have no missing side chains, so Meeko rarely stops on incomplete residues. Saving the model after superposition (af_on_1iep.pdb) means it now shares the coordinate frame of 1IEP, so the crystal ligand gives you the box centre directly.

  1. Protonation. AlphaFold files have no hydrogens. Meeko adds them from residue templates, but for histidines and charged residues in the pocket, decide the states first with PROPKA, as in our guide to protonation states for docking and MD, and set them with Meeko’s -n option.
  2. Receptor PDBQT and box. Using the options from the AutoDock Vina basic docking tutorial, which also uses 1IEP:
    mk_prepare_receptor.py --read_pdb af_on_1iep.pdb -o af_receptor -p -v \
        --box_size 20 20 20 --box_center 15.190 53.903 16.917

    -p writes af_receptor.pdbqt and -v writes af_receptor.box.txt plus a box PDB you can view. Our Meeko tutorial explains every flag.

  3. Ligand. Prepare it from an SDF with explicit hydrogens and 3D coordinates: mk_prepare_ligand.py -i ligand.sdf -o ligand.pdbqt.
  4. Dock.
    vina --receptor af_receptor.pdbqt --ligand ligand.pdbqt \
         --config af_receptor.box.txt \
         --exhaustiveness=32 --out ligand_af_out.pdbqt

If your binding site is not known from a homolog, read finding the binding site for docking before you set a box. Blind docking on a model multiplies the problems above.

How do you validate docking into an AlphaFold model?

Redock a known ligand and compare. Take the ligand from the holo homolog you superposed on (STI from 1IEP here), dock it into the prepared model with the same box and settings, and measure the RMSD between the top pose and the crystal pose. Export the poses with mk_export.py ligand_af_out.pdbqt -s ligand_af_out.sdf, then compare them with Open Babel’s obrms. Use the convention from the Holcomb benchmark: a top pose within 2.0 Å counts as a success.

  • Control succeeds: the model reproduces a known binding mode, so docking your new ligands is defensible. Report the control RMSD in your methods.
  • Control fails, and the pocket check showed clashes: the model is in the wrong conformation for this ligand class. Do not dock into it as it is.
  • Control fails with no clashes: suspect side-chain rotamers. Make the key pocket side chains flexible (Meeko -f A:315, as in our flexible docking guide) and repeat. Holcomb et al. rescued several individual failures this way.

Also dock the same control into the experimental structure. If the control fails there too, the problem is your protocol, not the model.

What if the pocket is closed or in the wrong conformation?

You have four options, in rough order of effort:

  1. Use a different receptor source. If the homolog’s holo structure is close in sequence, dock into it, or build a template-based model from it with SWISS-MODEL so the model inherits the ligand-bound conformation.
  2. Flexible side chains for a few pocket residues, as above. This fixes rotamer problems, not misplaced loops.
  3. MD refinement. Run a short simulation and dock into frames where the pocket opens. Our guide to refining a model covers the setup.
  4. Ensemble docking across several conformations (MD frames, multiple models, experimental structures), described in our ensemble docking tutorial.

For ABL1 and imatinib, the realistic answer is option 1: an experimental inactive-state structure exists, so this AlphaFold model is the wrong receptor for imatinib, even though it is an excellent model of the fold.

Troubleshooting: common errors and their fixes

  • The best pose lies along a loose ribbon on the surface. A very-low-confidence region was left in. Trim it and redock.
  • Vina scores look excellent but the control RMSD is above 5 Å. The pocket is partly filled or reshaped. Run the clash check; if model atoms sit within 2 Å of the crystal ligand, change receptor.
  • The clash selection is empty but the ligand is far away. The objects were never superposed, or the ligand code is wrong. Run align first and confirm the code on the RCSB entry page.
  • align reports a large RMSD for a protein you know is homologous. Extra domains or long tails are dominating the fit. Trim to the domain first, or restrict the alignment to the catalytic domain residues.
  • Meeko stops on a residue with missing atoms. Rare for AlphaFold models, but it happens after manual editing. Rebuild the residue or remove it with -x.
  • AlphaFold DB and ColabFold models of the same protein give different results. Expected: models differ in loop and side-chain placement. Treat them as an ensemble and report which one you used.

For Vina-specific messages, see our list of AutoDock Vina errors and fixes. For the wider workflow, follow the molecular docking learning path and the computational biology skills roadmap.

Frequently asked questions

Is a high-pLDDT pocket safe to dock into?

Not by itself. In our ABL1 example the pocket residues averaged a pLDDT of 88.9, yet 15 model atoms occupied the imatinib site. Holcomb et al. found the confidence score does not predict docking performance. Always superpose on a holo structure and redock a control.

Should I remove all residues with pLDDT below 70?

No. Remove low-confidence regions away from the site, mainly disordered termini and linkers. If a pocket residue scores below 70, keep it and treat it as uncertain: make its side chain flexible or sample it with MD, rather than deleting part of the pocket.

Can I publish docking results based on an AlphaFold model?

Yes, if you justify it. State that no experimental structure was available, give the model ID and version, and report the pocket pLDDT, the superposition on a holo homolog and the control redocking RMSD. These are the checks a careful reviewer will look for.

Do AlphaFold models include ligands, metals or cofactors?

No. AlphaFold DB models contain protein atoms only. If your site needs a metal ion or cofactor, transplant it from a homologous PDB entry, for example with AlphaFill, and check its geometry before docking.

What RMSD counts as a successful redock?

A top-ranked pose within 2.0 Å of the crystal pose is the usual threshold, and the one the Holcomb benchmark used. Between 2 and 3 Å, inspect the pose by eye; above that, the receptor or protocol needs work.

Want the guided, hands-on version?

Our live Molecular Modeling & MD Simulations cohort bootcamp takes you from zero to running real docking and MD workflows, with a portfolio project for your grad-school applications.

Join the waitlist (free) →

Think you know Molecular Docking?
Take the free StemSkills assessment and earn a verifiable certificate you can download and add to your LinkedIn profile.
Start the free assessment

Keep going

Electrostatic Surface in PyMOL with APBS: Step by Step Colour a protein surface by electrostatic potential with PDB2PQR, APBS and PyMOL, or ChimeraX coulombic, and fix the… GROMACS Topology File Explained: topol.top and .itp Files Read topol.top line by line, place ligand .itp files in the right order and fix the grompp topology… Meeko Tutorial: Prepare Ligands and Receptors for Vina Prepare ligands and receptors for AutoDock Vina with Meeko. Learn mk_prepare_ligand, mk_prepare_receptor and mk_export with real commands and…
See live workshops