Convert small-molecule SMILES string to pdb file for docking

Is there a good tool for converting a smiles string describing the structure of a small molecule ligand into a pdb file that will work in Haddock? I’m currently generating the pdb file from smiles using, but there’s a fair amount of manual manipulation that has to be done after that.

HADDOCK requires 3D biomolecules as input files. The SMILES format describes a compound in 2D, that is as a molecular graph with the atoms being the nodes and the bonds the edges. Depending on the exact flavour of SMILES that you are using it might include some 3D information such as cis/trans conformations or chiral centre definitions but not 3D coordinates.

What you would need is a program that can generate 3D coordinates from SMILES format and there are many options. When it comes to FOSS software both openbabel ( and rdkit ( are good options. You can also opt for commercial software such as CORINA ( or the OpenEye toolkits (

The functionality that would be most interesting to you is “Conformer Generation”. That means that since you are going from 2D -> 3D you would need to sample a few conformations in the hope that you would be sampling something close to the native structure of this compound. How many conformers you sample depends on the compound (essentially it comes down to the number of rotatable bonds) and the CPU time that you have at your disposal.