Jump to navigation Jump to search

Decoys are...

Decoys are important for judging the performance of molecular docking algorithms.

If you want decoys for a molecule in ZINC, say 556, use

If you want decoys in 2D:


Getting decoys for Aspirin (ZINC000000000053)

   2D Decoys (need to generate DB2 files and compute charge yourself)
   Visualize:  <>
   Download: <>
   3D Decoys (Can DOCK directly)
   Visualize: <>
   Download (SMILES & Explicit Charge): <>
   Download (DB2):  <>

Allowed args:

  • count: How many
  • resolve: Look up zinc_ids if possible
  • unique: Only return unique decoys (if you POST with "for" as a file instead)

You could also do decoys "by hand" to have more control:,.2=zinc55&mwt-between=270,330&logp-between=1.8,2.4&purchasability=for-sale

Getting Decoys for a SMILES (e.g. not in ZINC)

Getting Decoys for a SMILES string can be written as a general ZINC query on either the **substances** (2D) resource or the **protomers** resource (3D). Constraints can be added for further refinement. Currently you need to have a smiles string (e.g. `CN(C)C(=O)c1ccc(O)cc1`) as well as the physical properties you of that compound (i.e. molecular weight, logp, etc.). This requirement will soon be removed and replaced with a simple form.

Molecular Properties (Criteria) → URL Parameters:

   SMILES: CN(C)C(=O)c1ccc(O)cc1 (ECFP4-tanimoto < 0.25) → ~substance.ecfp4_fp-unsorted_tanimoto-25=CN(C)C(=O)c1ccc(O)cc1
   MWT: 165.2 (+/- 10%) → mwt-between=148.67,181.72
   LogP: 1.1 (+/- 0.30) → logp-between=0.8,1.4
   Donors: 1 (==) → hbd=1
   Acceptors: 2 (==) → hba=2
   Charge: 0 (==) → net_charge=0
   Rotatable Bonds: 1 (==)  → rb=1

As a ZINC query these constraints would be:


This query can be made faster by requesting only 50 and adding a few additional execution rules: count=50&parallelize=no&distinct=no


DUDE is a free directory of useful decoys for virtual screening.

For more information on preparation see