Co-Folding vs Docking: Which Question Are You Asking?
Cofolding vs docking: what ipTM and a docking score each actually measure, with real CovaFold ipTM 0.99 and CovaDock -10.35 kcal/mol output on KRAS G12C.
Oliver Kraft
CovaSyn

Co-folding tools now produce protein-ligand complexes that look as good as a crystal structure, and people are quietly replacing docking with them. That is usually the wrong swap, because the two methods do not answer the same question. Co-folding asks "does this complex exist and where". Docking asks "of these 200 ligands, which ones sit best in this pocket". If you use one to answer the other's question you get a confident-looking number that means nothing.
The short version
Co-folding (covafold_cofold) | Docking (covadock_dock) | |
|---|---|---|
| Input | Sequence plus ligand SMILES. No structure needed. | A receptor structure plus ligands. |
| Receptor | Predicted together with the ligand, so it can adapt. | Fixed, usually rigid, from PDB or a model. |
| Output | One complex plus confidence scores (pLDDT, pTM, ipTM). | Ranked poses plus a scoring-function value in kcal/mol plus contacts. |
| Comparable across ligands? | Poorly. ipTM is a confidence, not an energy. | Yes, within one receptor and one protocol. |
| Throughput | Minutes per complex on GPU, plus a one-time MSA cost. | Cheap enough for a library. |
| Best question | "Is there a real binding mode, and where is the pocket?" | "Rank these analogues in this pocket." |
What ipTM actually is
ipTM is the predicted interface TM-score: the model's own estimate of how accurately it placed the two entities relative to each other, from 0 to 1. It is a self-assessed confidence, not an energy, not a Kd. A high ipTM means the model believes the interface geometry it drew. It says nothing about how tightly the ligand binds.
Rules of thumb from the AlphaFold-family literature that we apply in practice: above roughly 0.8 the interface is usually worth looking at, below roughly 0.6 you should assume the placement is wrong. In between, go and look at the structure yourself.
pLDDT is the number people conflate with it. pLDDT is per-residue local confidence for the fold. You can have an excellent pLDDT and a useless ipTM: a well-folded protein with the ligand parked in the wrong place.
What a docking score actually is
A docking score is the output of an empirical or knowledge-based scoring function evaluated on a pose. It is reported in kcal/mol because it is fitted against binding free energies, but it is not a measured free energy and it correlates with potency only loosely. Its value is comparative: within one receptor, one box, one protocol, it separates plausible binders from implausible ones. Across targets or protocols it is not comparable.
It also carries its assumptions. Most fast scoring functions model non-covalent interactions only. If your ligand forms a covalent bond, the score understates the true affinity, sometimes badly.
Worked example: KRAS G12C
Co-folding.
covafold_cofold (engine OpenDDE, self-hosted UniRef30 MSA) folded the 189-residue KRAS G12C construct together with the nucleotide analogue GNP. Measured output: MSA depth 7,513, complex pLDDT 89.44, ipTM 0.9902. From the same measurement batch, CDK2 (298 aa, MSA depth 9,523) returned complex pLDDT 89.70 and ipTM 0.9716. The corresponding monomer folds scored mean pLDDT 94.61 (KRAS G12C) and 94.79 (CDK2).
What that buys you: a complex you did not have, from sequence alone, with the pocket localised. That is the input to the next step, not the answer.
Docking.
covadock_dock then placed sotorasib (PubChem CID 137278711, C30H30F2N6O3, MW 560.6, InChIKey NXQKSXLFSAEQCZ-SFHVURJKSA-N, validated with covabasic_validate) into KRAS G12C. Best score -10.35 kcal/mol, flagged "very strong", with 61 interactions, contacting Gly24, Ala25, Gly74 and Gln75 in the switch-II pocket. covadock_results returned the same rank-1 pose.
Two caveats sit directly on those numbers, and both change how you read them:
- The receptor was the deposited crystal structure 6OIM, not the CovaFold model. Our gateway
covadock_dockcurrently ingests receptors by four-letter PDB ID; it fetches and preps from RCSB. It cannot yet take a CovaFold session handle. So this is co-folding and docking run side by side on the same target, not a fully chained handoff. We are explicit about that rather than implying an end-to-end pipeline we do not have yet. - The score is non-covalent. Sotorasib is a covalent KRAS G12C inhibitor: its acrylamide reacts with Cys12. The scoring function does not model that bond, so -10.35 kcal/mol describes the reversible recognition step only and understates the true potency. It is a ranking heuristic, not an affinity.
Read together, the pair tells a coherent story: co-folding says the switch-II complex geometry is confidently predicted (ipTM 0.99), docking says the ligand makes a dense, chemically sensible contact set in that same pocket (61 interactions, switch-II residues). Neither number is a potency prediction.
The most useful number we measured was the low one
In the same batch, ubiquitin co-folded with ATP returned ipTM 0.626, against a monomer fold pLDDT of 97.19 and a complex pLDDT of 92.02.
Ubiquitin has no ATP pocket. The test was chemically meaningless by construction. The model correctly refused to be confident about an interface that does not exist, while still folding the protein beautifully. That is exactly the behaviour you want from a confidence score, and it is the reason to read ipTM separately from pLDDT rather than trusting one global number. A co-fold with high pLDDT and low ipTM has told you the protein is fine and the binding is not supported. That is a result, not a failure.

Which one do you run
- No structure for the target at all. Co-fold. You cannot dock into a receptor you do not have.
- You want to know whether a ligand class binds at all, and where. Co-fold. ipTM plus the predicted pocket is the answer shape you need.
- A receptor and 50 to 5,000 analogues to rank. Dock. Co-folding gives no comparable cross-ligand quantity, and the per-complex cost adds up.
- Induced fit matters, or the apo pocket is closed. Co-fold: the receptor is predicted with the ligand present. Rigid docking into an apo structure will reject the true binder.
- The ligand is covalent. Use both for geometry and contacts, then get a covalent protocol or wet-lab data before ranking anything.
- A metal or ion is part of the site. Co-fold handles this: a zinc-finger peptide plus Zn2+ returned global pLDDT 95.0, pTM 0.796 and ipTM 0.845 through
covafold_cofold.
The cost you should plan for
Co-folding is not free, and the honest number is the cold one. On our measured runs, the first job against a new target sequence pays the MSA search: roughly 2,500 to 2,900 s of CPU, about 42 to 52 minutes wall clock. Every later job on that same sequence hits the cache in 0.2 to 0.5 s, so subsequent complexes land in about 4 minutes. Co-fold inference itself scaled 21.6 s / 37.1 s / 68.3 s for the 76, 189 and 298-residue targets. Practical consequence: a one-protein by N-ligand panel amortises a single MSA; a panel across many different proteins does not.

What neither method tells you
- Affinity. ipTM is a geometric confidence, a docking score is a fitted heuristic. Neither is a Kd, an IC50 or a free energy you can put in a report.
- Selectivity. Both are single-target calculations. Off-target risk needs its own assessment.
- Covalent chemistry. Warhead reactivity, residence time and the covalent bond itself are outside both scoring models.
- Protein-protein complexes, in our current setup. Our self-hosted MSA covers exactly one protein chain, so a protein-plus-protein co-fold runs unaligned and must be read that way. Reports in the AlphaFold3 issue tracker show a wrong paired MSA can collapse ipTM from the 0.5 to 0.8 range down to 0.11 to 0.14, which is worse than none.
- Physical plausibility of a pose. The PoseBusters work (Buttenschoen et al., 2024) showed deep-learning ligand poses frequently fail basic physical validity checks even when they look convincing. Check geometry and clashes before designing against a co-folded pose.
- Anything that replaces an experiment. This is triage: it tells you which ideas deserve bench time.
Frequently asked questions
What is the difference between co-folding and docking?
Docking places a ligand into a fixed, pre-existing receptor structure and scores the pose with a fitted scoring function, giving a value in kcal/mol that ranks ligands against each other. Co-folding predicts the protein and the ligand together from sequence, so no receptor structure is required and the protein can adapt to the ligand. Docking answers "which ligand ranks best"; co-folding answers "does this complex exist and where".
What does ipTM mean and what is a good value?
ipTM is the interface predicted TM-score: a model's self-assessed confidence in how accurately it positioned two entities relative to each other, on a 0 to 1 scale. In common practice, above about 0.8 is worth examining and below about 0.6 suggests the placement is wrong. It is a confidence in geometry, not a binding energy. A high ipTM does not mean a ligand binds tightly.
Can ipTM replace a docking score for ranking compounds?
No. ipTM is a confidence, not an energy, and it does not vary across a congeneric series in a way that tracks potency. Docking scores are comparable within one receptor and one protocol, which is what ranking needs. Use co-folding to establish that a binding mode exists and where the pocket is, then dock the series into a consistent receptor to rank it.
Is a docking score of -10.35 kcal/mol a binding affinity?
No. A docking score is a fitted scoring-function value reported in kcal/mol; it correlates only loosely with measured affinity and is not a free energy. In our KRAS G12C example the -10.35 kcal/mol from covadock_dock is also a non-covalent score, so it ignores the covalent bond sotorasib forms with Cys12 and understates the real potency. Treat it as a ranking heuristic.
Should I dock into a co-folded structure or a crystal structure?
Use the crystal structure when a good one exists for your construct and state. Co-folded or predicted receptors are the right choice when no experimental structure exists, when the relevant conformational state is not deposited, or when induced fit matters. In our KRAS G12C worked example the dock used the deposited 6OIM, because our gateway currently takes receptors by PDB ID rather than a CovaFold model handle.
How long does a co-fold take?
On our measured runs, the first job against a new protein sequence pays a multiple-sequence-alignment search of roughly 42 to 52 minutes. After that the MSA is cached and hits in under a second, so further complexes on the same protein finish in about 4 minutes. Co-fold inference alone ran 21.6 s to 68.3 s for targets from 76 to 298 residues.
Related reading
Both tools are on the free tier, so you can run one co-fold and one dock on your own target before deciding which question you were actually asking. - Docking Score Interpretation: What -10 kcal/mol Means - AlphaFold3 Alternatives in 2026: An Honest Comparison
Tools for this topic
Use these in your AI agent right away.
- CovafoldProtein folding and structure prediction.
- CovadockMolecular docking, binding energies.
