
PDB to SDF
Convert small-molecule PDB coordinates to SDF with RDKit bond perception.
How to convert a ligand PDB to SDF?
Upload a PDB containing a small-molecule ligand. RDKit reads its coordinates and connectivity, then writes an SDF and reports the perceived SMILES and atom count. Check the resulting chemistry before further use, because PDB does not reliably encode the original bond orders and formal charges.
- Extract the intended small-molecule ligand into a
.pdb. - Choose whether to infer bonds from proximity and remove hydrogens.
- Run the converter and check the reported SMILES.
- Download the SDF and verify its chemistry.
Worked example
Input .pdb:
COMPND ethanol
HETATM 1 C1 UNL 1 -0.953 0.048 0.042 1.00 0.00 C
HETATM 2 C2 UNL 1 0.488 -0.322 -0.189 1.00 0.00 C
HETATM 3 O1 UNL 1 1.277 0.325 0.738 1.00 0.00 O
HETATM 4 H1 UNL 1 -1.357 0.734 -0.733 1.00 0.00 H
HETATM 5 H2 UNL 1 -1.593 -0.863 0.022 1.00 0.00 H
HETATM 6 H3 UNL 1 -1.071 0.596 1.011 1.00 0.00 H
HETATM 7 H4 UNL 1 0.787 -0.141 -1.236 1.00 0.00 H
HETATM 8 H5 UNL 1 0.590 -1.426 -0.044 1.00 0.00 H
HETATM 9 H6 UNL 1 1.832 1.048 0.389 1.00 0.00 H
CONECT 1 2 4 5 6
CONECT 2 3 7 8
CONECT 3 9
ENDActual .sdf output:
ethanol
RDKit 3D
3 2 0 0 0 0 0 0 0 0999 V2000
-0.9530 0.0480 0.0420 C 0 0 0 0 0 0 0 0 0 0 0 0
0.4880 -0.3220 -0.1890 C 0 0 0 0 0 0 0 0 0 0 0 0
1.2770 0.3250 0.7380 O 0 0 0 0 0 0 0 0 0 0 0 0
1 2 1 0
2 3 1 0
M END
$$$$The blocks show the complete input and output for one ethanol molecule. Coordinates and chemistry shown here come from this conversion run.
Input
| Input | Accepted format | Requirements |
|---|---|---|
| Molecules | .pdb upload | Small-molecule ligand PDB, not a complete protein. Maximum file size: 50 MiB. |
Settings
| Setting | Default | What it does |
|---|---|---|
Infer bonds from proximity | On | Let RDKit infer additional bonds from atom distances. PDB does not reliably store bond orders, so inspect the resulting chemistry. |
Remove hydrogens | On | Remove explicit hydrogen atoms during PDB parsing. Turn off to retain the hydrogens present in the input. |
Results
| Output | Contents |
|---|---|
| Results table | Name, Atoms, SMILES, Output file. |
molecule_1.sdf | Converted structure with perceived connectivity and coordinates. |
results.tsv | Tab-separated table with the same rows and values. |
report.json | Result rows, resolved settings and warnings. |
run.log | Tool, settings, result count and warnings; failures include their error. |
Downloads are available from Files. Inspect both the structure preview and the chemical content of the downloaded file.
PDB coordinates do not fully define chemistry
PDB is primarily a coordinate format. CONECT records can provide connectivity; proximity bonding lets RDKit infer additional bonds from atom distances. Neither guarantees the intended bond orders, aromaticity or charges for an arbitrary ligand.
Prefer an original SDF or chemically complete SMILES when available. Successful conversion means a molecular file was written, not that perceived chemistry matches the intended ligand. Every result warns about this limitation. Compare the reported SMILES with a chemically complete reference.
By default, explicit hydrogens are removed during PDB reading. Turn Remove hydrogens off to retain input hydrogens. This does not add missing hydrogens, predict protonation or repair coordinates.
Extract a ligand before conversion
Supply the intended small molecule as its own PDB. Complete protein structures containing standard amino acid residues are rejected. Ensure an extracted file contains the intended atoms and connectivity; waters or unrelated molecules can otherwise enter the result.
For docking preparation from known chemistry, use SMILES to PDBQT. With a complete 3D SDF, SDF to PDBQT avoids interpreting chemistry from PDB.
FAQ
Can I convert a complete protein PDB to SDF?
This page handles small molecules. Standard protein residues are rejected rather than presented as a ligand.
Does PDB to SDF recover missing bond orders?
It writes RDKit's perceived chemistry. Missing bond-order or charge information cannot be guaranteed without a complete chemical reference.
Why are there fewer atoms in the SDF?
With Remove hydrogens on, explicit hydrogens are removed during reading. Heavy atoms remain in the parsed structure.
Related tools
InChI to SMILES
Generate SMILES strings from InChI identifiers for search, filtering, and modeling workflows.
MOL to SMILES
Extract canonical SMILES strings from MDL MOL ligand files for cheminformatics workflows.
MOL2 to SMILES
Extract canonical SMILES strings from MOL2 ligand files for cheminformatics workflows.
PDBQT to SDF
Export ligand poses from Meeko-prepared PDBQT to SDF while recovering chemical connectivity.
SDF to PDBQT
Convert SDF ligands to PDBQT with Meeko, preserving supplied coordinates.
SDF to SMILES
Extract canonical SMILES strings from SDF ligand files, one record at a time or in batch.
SMILES to InChI
Generate InChI identifiers from SMILES strings for registration and interoperability workflows.
SMILES to MOL2
Generate MOL2 files from SMILES strings for docking, scoring, and modeling workflows.
SMILES to PDB
Generate 3D PDB files from SMILES strings for visualization and small-molecule workflows.
SMILES to PDBQT
Generate 3D ligand coordinates from SMILES and prepare PDBQT files with Meeko.