I have some PDB structures of small molecules with missing hydrogens. Is there a software available that places missing hydrogens and assigns a charge to the molecule that is reliable? I am looking for an automatic tool that returns a PDB with added Hydrogens and the overall charge (I can do some programming if I need to combine output from multiple programs to accomplish this or something.)

It is enough for me if you suggest a couple of FREE tools (I don't have resources to buy a commercial license, but I am academic, in case they offer free academic licenses), with associated papers that evaluate their performance that I can cite. For example, a free tool that calculates pKa values of ionizable groups would solve my problem, if you can also suggest a tool that automatically detects ionizable groups in molecules.

I have used Avogadro to add hydrogens (though I don't know how to compute the charge with it), but I've found that some hydrogens aren't well placed. Is there a better tool available for this task?

  • $\begingroup$ Could you give an example of Avogadro producing mis-assigned hydrogens, along with what you would expect to find? Different chemical toolkits may give different answers for some calculations depending on what algorithm they have implemented - but it's hard to recommend one that does it 'right' if we don't know what 'right' is here. $\endgroup$
    – gilleain
    Jun 8, 2015 at 15:16
  • $\begingroup$ Possible duplicate: chemistry.stackexchange.com/q/4105/5017 $\endgroup$ Jun 8, 2015 at 16:13
  • $\begingroup$ I'm not sure I understand what you mean by "compute the charge?" Do you mean that you want software that will automatically assign protonation (and charges) for arbitrary molecules at arbitrary pH? No program is a substitute for understanding protonation rules yourself. $\endgroup$ Jun 8, 2015 at 16:14
  • $\begingroup$ @GeoffHutchison A program is a good substitute when you have to evaluate the protonation state of thousands of molecules. On the other hand, I don't have a solid foundation in chemistry and understanding these rules would help me anyway. Can you point me to some references? Thanks. $\endgroup$
    – becko
    Jun 8, 2015 at 16:34
  • 1
    $\begingroup$ If I understand you question correctly, there isn't a tool which can take as input a chemical formula and then output accurate pK values for all the "active" groups in the molecule. You'd need to add the pK values of the active groups to the database for each compound, and then a program could predict how the molecules would behave as a function of pH. Take an amino acid as an example. The acid end has a pKa value and the amine group has a pKb value. With the two the molecule's protonation can be accurately modeled in solution as a function of pH. $\endgroup$
    – MaxW
    Nov 16, 2015 at 23:23

2 Answers 2


If you're looking for comprehensive protonation and evaluation of $pK_a$, I suggest my answer to a previous question. There is specialized software for evaluating protonation and $pK_a$ based on large databases.

Avogadro has some simple rules, mostly for amino acid residues, but is not intended for automated evaluation of thousands of molecules.

  • $\begingroup$ I'm just looking for a reliable, and quotable method to add hydrogens to small molecules. I wan't to be able to cite a paper where the method is evaluated. The method should allow me to determine where the Hydrogens are located in my small molecule. Can you suggest a tool to do this? $\endgroup$
    – becko
    Nov 16, 2015 at 22:36
  • $\begingroup$ There is currently no such method as others have commented here. You could, in principal, compute all tautomers and protonation states exhaustively for a small molecule, compute energies using a semiempirical method (e.g., PM7 with MOPAC) and pick the most stable one. $\endgroup$ Nov 17, 2015 at 2:20

If the molecule is a protein you can use the PDB2PQR webserver. It uses PROPKA to predict $pK_a$ values and optimizes the hydrogen bonding network

  • $\begingroup$ My molecules are small ligands. Sorry I didn't specify that in the original question. $\endgroup$
    – becko
    Jun 9, 2015 at 12:06

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.