I would like to download all the compounds from ChEMBL and PubChem. For ChEMBL this is easy using their webUI. Nevertheless, for PubChem, it isn't clear how to download all the compounds on the database including their SMILES representations.

I am also not sure how pubchem has 33,000,000 compounds where ChEMBL has "only" 2,000,000.


1 Answer 1


The best way to download bulk data from PubChem is actually FTP, as documented in their documentation.

For example, if you want the unfiltered SMILES of every CID in PubChem, the URL is ftp://ftp.ncbi.nlm.nih.gov/pubchem/Compound/Extras/CID-SMILES.gz

You can also download subsets using the PubChem Structure Download service

And as mentioned above, there are Python and other tools to access both PubChem and ChemSpider through their documented web APIs.

  • 4
    $\begingroup$ One thing to keep in mind.. PubChem intentionally has duplicates - there are SMILES with no stereochemical information and the same SMILES with correct stereo. So depending on your use, you may want to do some level of standardization, filtering and validation. $\endgroup$ Oct 6, 2019 at 15:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.