| Step 1: Upload your file
Example    Format converter


Each of molecules uploaded will be standardized through all the following types. Usually, it is suitable for most cases. But not every kind of molecule can pass through this Standardization.

| Standardization types:


  • Nitro N=O: CN(=O)=O >> C[N+](=O)[O-] and C1=CC=CN(=O)=C1 >> C1=CC=C[N+]([O-])=C1
  • Nitro N#O: C-N=N#N >> C-N=[N+]=[N-]
  • Perchlorate: Cl(=O)(=O)(=O)[O-] >> [Cl+3]([O-])([O-])([O-])[O-]
  • Calculate explicit and implicit valence of all atoms. Fails when atoms have illegal valence.
  • Calculate symmetrized SSSR. Slowest step, fails in rare cases.
  • Kekulize. Fails if a Kekule form cannot be found or non-ring bonds are marked as aromatic.
  • Assign radicals if hydrogens set and bonds+hydrogens+charge < valence.
  • Set aromaticity, if none set in input. Go round rings, Huckel rule to set atoms+bonds as aromatic.
  • Set conjugated property on bonds where applicable.
  • Set hybridisation property on atoms.
  • Remove chirality markers from sp and sp2 hybridised centers.
  • Remove explicit H count from atoms.
  • Disconnect metals

  • Break covalent bonds between metals and organic atoms under certain conditions.
  • First, disconnect N, O, F from any metal. Then disconnect other non-metals from transition metals.
  • For every bond broken, adjust the charges of the begin and end atoms accordingly.
  • Apply normalization rules

  • Uncharge-separate sulfones
  • Charge-separate nitro groups
  • Charge-separate pyridine oxide
  • Charge-separate azide
  • Charge-separate diazo and azo groups
  • Charge-separate sulfoxides
  • Hydrazine-diazonium system
  • Reionize acids

  • Reionize acid groups, and keep the strongest acids ionize first.
  • Recalculate stereochemistry

  • Use built-in RDKit functionality to force a clean recalculation of stereochemistry.