Molecular Weight Calculator — Chemicals, Proteins, DNA & RNA
Input & Actions
Result
Tip: Press Ctrl/Cmd + K to focus the input. Press Ctrl/Cmd + Enter to re-run the last calculation.
How This Molecular Weight Calculator Works
Chemical Formulas
When you input a formula like H2O or C12H22O11, the calculator parses each element, multiplies by its atomic weight (IUPAC averages), and sums the total. It supports simple parentheses such as Fe(OH)3.
Protein, DNA, and RNA Sequences
The tool detects sequence type from one-letter codes and ambiguity codes (IUPAC):
- Protein: A, R, N, D, C, Q, E, G, H, I, L, K, M, F, P, S, T, W, Y, V (+ B, Z, X, J)
- DNA: A, T, C, G (R, Y, S, W, K, M, B, D, H, V, N)
- RNA: A, U, C, G (R, Y, S, W, K, M, B, D, H, V, N)
Residue weights are average literature values and account for polymerization (loss of H2O per bond). One terminal H2O is added back to represent intact ends.
Example Molecular Weight Calculations
- C6H12O6 (glucose) → ~180.156 g/mol
- NaCl (sodium chloride) → ~58.44 g/mol
- Protein sequence:
AGYWCF
→ calculated from average amino-acid residue weights + terminal water - DNA sequence:
ATGCGT
→ calculated as a polymer from base-specific residue weights + terminal water
Common pitfalls & tips
- Capitalization matters: Co (cobalt) ≠ CO (carbon monoxide).
- Parentheses: Supported for simple groups like (OH)2; nested or complex brackets aren’t supported in this version.
- Isotopic/monoisotopic masses: Uses average atomic/residue weights; exact isotopologues and charge states are out of scope.
- Mixed sequences: Inputs containing both T and U are ambiguous and will return an error.
Frequently Asked Questions
Does this work for proteins and nucleic acids?
Yes. The calculator detects sequence type automatically and applies average residue weights for proteins, DNA, and RNA.
Are my inputs private?
All calculations happen in your browser. Nothing is uploaded or stored—ideal for proprietary or unpublished research.
Does it support formulas with parentheses?
Yes. It handles basic parentheses such as (OH)2, though nested parentheses are not supported in this version.