What is SMILES?
Learning objectives
After reading this article you will be able to:
- Read and write simple SMILES strings
- Explain canonical and isomeric SMILES
- Know when SMILES is the wrong format
SMILES (Simplified Molecular Input Line Entry System), introduced by David Weininger in 1988, describes a molecule’s structure as a single line of text. It is compact, human-readable once you know the rules, and supported by almost every chemistry tool.
The basic rules
| Rule | Example | Molecule |
|---|---|---|
| Atoms are element symbols; hydrogens are implied | CCO | Ethanol |
= double bond, # triple bond | C=O, C#N | Formaldehyde, hydrogen cyanide |
| Parentheses mark branches | CC(C)O | Isopropanol |
| Matching digits close rings | C1CCCCC1 | Cyclohexane |
| Lower-case letters are aromatic atoms | c1ccccc1 | Benzene |
| Square brackets for charges, isotopes and unusual atoms | [NH4+] | Ammonium |
Putting these together, aspirin is CC(=O)Oc1ccccc1C(=O)O.
Canonical SMILES
The same molecule can be written many ways — ethanol is CCO or OCC. A canonical SMILES algorithm always produces one standard string for a given structure, which allows exact matching and duplicate removal in databases. Canonical forms differ between toolkits, so compare strings generated by the same software (for example RDKit).
Stereochemistry: isomeric SMILES
Isomeric SMILES adds 3D configuration: @ and @@ mark tetrahedral stereocentres, and / and mark double-bond geometry. Stereoisomers can have very different biological activity, so exact-match searches should compare isomeric forms.
Limits of SMILES
- It carries no 3D coordinates; docking and modelling need a 3D conformer generated from it, or formats such as SDF/MOL.
- Tautomers and charge states can be written in several valid ways, so standardise molecules before comparing them.
- Very large biomolecules are better described with sequence or structure formats; see PDB and mmCIF.
Last updated October 31, 2026
Put it into practice
Screen, dock and order compounds in one place
Pyxis Discovery combines macrocycle and small-molecule libraries with similarity search, docking and structure prediction in the browser.