
Protein molecular weight calculator
Calculate the molecular weight of a protein or peptide sequence in Da and kDa.
Paste a protein or peptide sequence, a FASTA file, or a CSV table, and ProteinIQ returns the molecular weight of each chain in daltons (Da) and kilodaltons (kDa). The calculation sums residue masses and adds one water, so a 5-residue peptide and a 1,000-residue protein go through the same formula in the browser.
For a small molecule, enter its SMILES in Molecular descriptors instead, which reports the formula, molecular weight and exact mass.
Human ubiquitin, pasted as FASTA with the default settings:
>Human_ubiquitin
MQIFVKTLTGKTITLEVEPSDTIENVKAKIQDKEGIPPDQQRLIFAGKQLEDGRTLSDYNIQKESTLHLVLRLRGG| Protein ID | Amino acids | Molecular weight (Da) | Molecular weight (kDa) | Mass type | Disulfides assumed | Termini |
|---|---|---|---|---|---|---|
| Human_ubiquitin | 76 | 8564.845 | 8.564845 | average | 0 | H-…-OH |
The same calculator handles a peptide. Leu-enkephalin (YGGFL) comes out at 555.631 Da average, or 555.269 Da monoisotopic, which is the number to look for in a mass spectrum. Synthetic peptides with an acetylated N-terminus or an amidated C-terminus have their own settings, covered in peptide molecular weight.
| Input | What the calculator accepts |
|---|---|
| FASTA | One or more records; the first word of each header becomes the protein ID. |
| Raw sequence | One-letter amino acid codes without a header. Spaces and line breaks are ignored, and lowercase is accepted. |
| CSV | A header row with a column named like sequence, seq, or protein, plus an optional ID column. |
| Files | .txt, .csv, .fasta, .fa, or .fas, up to 50 MB. |
| Residues | The 20 standard amino acids plus U (selenocysteine) and O (pyrrolysine). B, Z, J, and X are accepted with a warning. |
Ambiguous codes use averaged masses (B between Asn and Asp, Z between Gln and Glu) and X uses 110 Da, so a sequence that contains them gives an approximate result. Any other character, including * stop symbols, is rejected with the offending letters named in the error.
A CSV table looks like this:
id,sequence
p1,MAG
p2,ACD| Setting | Options | Default | What it changes |
|---|---|---|---|
Mass type | Average, Monoisotopic | Average | Average uses natural isotope abundances; monoisotopic uses only the lightest isotope of each element. |
Remove initiator Met | No, Yes | No | Drops a leading methionine before the calculation. Sequences that do not start with M are left unchanged. |
Disulfide bonds | 0 to 200 | 0 | Subtracts two hydrogens (2.016 Da) per bond. Values above the number of cysteine pairs are clamped, and the clamp is reported. |
N-terminus | Free amine (H-), Acetylated (Ac-) | Free amine | Acetylated adds C2H2O: 42.011 Da monoisotopic or 42.037 Da average. |
C-terminus | Free acid (-OH), Amidated (-NH2) | Free acid | Amidated replaces OH with NH2: −0.984 Da monoisotopic or −0.985 Da average. |
Leave disulfide bonds at 0 for a reduced protein, which is what a reducing SDS-PAGE gel or a reduced LC-MS run measures. The terminus settings apply to every sequence in the input, so split a batch that mixes capped and free peptides into two runs.
Each sequence produces one row:
| Column | Meaning |
|---|---|
| Protein ID | The first word of the FASTA header, or the CSV ID column. |
| Amino acids | Sequence length after optional initiator Met removal. |
| Molecular weight (Da) | Calculated mass in daltons, to three decimal places. |
| Molecular weight (kDa) | The same value divided by 1,000, to six decimal places. |
| Mass type | Average or monoisotopic. |
| Disulfides assumed | Disulfide bonds applied after clamping to the available cysteine pairs. |
| Termini | H-…-OH for free termini, or Ac- and -NH2 when a cap was applied. |
One dalton per molecule equals one gram per mole, so 8564.845 Da also means 8564.845 g/mol when you weigh out ubiquitin for a molar solution.
Every peptide bond releases one water molecule. Join the five free amino acids of Leu-enkephalin and four waters leave, so the peptide weighs 72.061 Da less than its building blocks:
| Term | Mass (Da) |
|---|---|
| Tyr (free amino acid) | 181.1913 |
| Gly (free amino acid) × 2 | 150.1344 |
| Phe (free amino acid) | 165.1919 |
| Leu (free amino acid) | 131.1747 |
| 4 peptide bonds × 18.01528 Da | −72.0611 |
| Leu-enkephalin | 555.6311 |
Counting waters for amino acids is easy to get wrong, so the calculator uses residue masses instead. A residue mass is the amino acid minus one water, which leaves exactly one water to add back for the free N- and C-termini:
Here is the residue mass of each amino acid, is 18.01528 Da (average) or 18.01056 Da (monoisotopic), is the number of disulfide bonds, and and are the terminal cap shifts, zero for free termini. Both routes give 555.631 Da for Leu-enkephalin.
The average residue masses used by default:
| Amino acid | Mass (Da) | Amino acid | Mass (Da) |
|---|---|---|---|
| Ala (A) | 71.08 | Leu (L) | 113.16 |
| Arg (R) | 156.19 | Lys (K) | 128.17 |
| Asn (N) | 114.10 | Met (M) | 131.19 |
| Asp (D) | 115.09 | Phe (F) | 147.18 |
| Cys (C) | 103.14 | Pro (P) | 97.12 |
| Glu (E) | 129.12 | Ser (S) | 87.08 |
| Gln (Q) | 128.13 | Thr (T) | 101.11 |
| Gly (G) | 57.05 | Trp (W) | 186.21 |
| His (H) | 137.14 | Tyr (Y) | 163.18 |
| Ile (I) | 113.16 | Val (V) | 99.13 |
Average atomic masses follow the IUPAC standard atomic weights, and the residue convention matches the ExPASy protein analysis tools.
Carbon is about 1.1% carbon-13, so a protein with hundreds of carbons almost never consists of the lightest isotopes alone. Average mass weights every isotope by its natural abundance and describes the bulk material you weigh or load on a gel. Monoisotopic mass counts only 12C, 1H, 14N, 16O and 32S, which is the first peak of an isotope envelope.
| Molecule | Residues | Average (Da) | Monoisotopic (Da) | Difference |
|---|---|---|---|---|
| Leu-enkephalin | 5 | 555.631 | 555.269 | 0.36 Da |
| Ubiquitin | 76 | 8564.845 | 8559.617 | 5.23 Da |
The gap grows with size. For a peptide the 0.36 Da difference decides whether a high-resolution MS peak matches, so use monoisotopic mass for peptides and isotope-resolved spectra. For an intact protein the monoisotopic peak is small or invisible, and deconvoluted intact-mass results are usually compared with the average mass. Gel, concentration and buffer calculations always use average mass.
Oxytocin is nine residues long, and two parts of its structure change the mass its sequence alone would give. Its two cysteines close a ring through a disulfide bond, and its C-terminal glycine ends in an amide rather than a free acid. Paste CYIQNPCLG with the default settings and the calculator returns 1,010.191 Da. Set Disulfide bonds to 1 and C-terminus to Amidated (-NH2), as the Oxytocin peptide example does, and it returns 1,007.190 Da.
The values below were calculated here and checked against PubChem, which lists oxytocin at 1,007.2 g/mol with an exact mass of 1,006.4365 Da:
| Peptide | Sequence | Settings | Average (Da) | Monoisotopic (Da) | PubChem (g/mol) |
|---|---|---|---|---|---|
| Leu-enkephalin | YGGFL | Free termini | 555.631 | 555.269 | 555.6 |
| Ac-SDKP (goralatide) | SDKP | Acetylated N-terminus | 487.510 | 487.228 | 487.5 |
| Oxytocin | CYIQNPCLG | Amidated C-terminus, 1 S-S | 1,007.190 | 1,006.436 | 1,007.2 |
| BPC-157 | GEPPPGKPADDAGLV | Free termini | 1,419.554 | 1,418.704 | 1,419.5 |
A peptide certificate of analysis normally quotes the average molecular weight, which is the number for weighing out a solution. Peptide powder also carries counterions such as trifluoroacetate and some water, so a milligram of powder holds less than a milligram of peptide; vendors report the difference as net peptide content.
In a mass spectrum of a peptide this size the monoisotopic peak is the tallest, and a singly protonated ion appears at the monoisotopic mass plus 1.007 Da. To list the ion m/z values of every fragment in a protein digest instead, use the peptide mass calculator, which cuts a protein with a chosen protease and reports each peptide as [M+H]+, [M+2H]2+ or another ion.
A residue weighs about 110 Da on average, so multiplying the number of amino acids by 0.11 gives a quick estimate in kDa. In reverse, a protein has about 9 residues per kDa, which puts a 50 kDa band at roughly 455 amino acids.
| Protein | Residues | 110 Da × residues | Calculated (average) | Shortcut error |
|---|---|---|---|---|
| Human ubiquitin | 76 | 8.36 kDa | 8.565 kDa | −2.4% |
| Mature erythropoietin | 165 | 18.15 kDa | 18.240 kDa | −0.5% |
| GFP (UniProt P42212) | 238 | 26.18 kDa | 26.862 kDa | −2.5% |
The shortcut is good to a few percent, which is enough to pick a gel percentage or a size-exclusion column. It drifts when a sequence is rich in heavy residues such as Trp, Arg and Tyr, or light ones such as Gly and Ala, so use the sequence whenever you have it. The average protein size guide lists typical lengths and kDa values across proteomes.
Count everything that is in the expressed chain. A His6 tag adds 822.8 Da of residues and GFP adds about 27 kDa, but only when those residues are part of the pasted sequence, so paste the construct as expressed rather than the native protein.
Molecular weight turns a mass concentration into a molar one. Divide grams per litre by the molecular weight in g/mol: 1 mg/mL of ubiquitin is 1 g/L ÷ 8,564.845 g/mol, or 116.8 µM. For a 50 kDa protein the same 1 mg/mL is 20 µM.
Run it the other way to weigh out a stock: a 1 mM solution of oxytocin needs 1.007 mg per mL. When the concentration comes from absorbance rather than weighing, the extinction coefficient calculator gives the molar value from A280 directly.
Human erythropoietin (UniProt P01588) shows how far the protein in the tube can be from the sequence in a database. Each step below changes the number the calculator returns, and the last one is a mass no sequence tool can calculate.
| Step | Residues | Settings | Result |
|---|---|---|---|
| UniProt precursor, as downloaded | 193 | Average | 21,306.753 Da |
| Signal peptide (residues 1 to 27) removed | 166 | Average | 18,396.139 Da |
| C-terminal Arg166 removed | 165 | Average | 18,239.951 Da |
| Two disulfide bonds | 165 | Average, 2 disulfides | 18,235.919 Da |
| Measured glycoprotein | 165 | Sedimentation equilibrium | 30,400 Da |
Starting from the precursor overstates the secreted polypeptide by about 3 kDa. Paste the mature chain instead, which UniProt lists under "Chain" in the processing features; the Remove initiator Met setting only handles the first methionine, not signal peptides or propeptides.
The polypeptide still accounts for only 60% of the real molecule. Davis and colleagues measured recombinant erythropoietin at 30,400 Da with 39% carbohydrate, from three N-linked glycans and one O-linked glycan. That matches the calculation: 18,236 Da of protein is 60% of 30,400 Da, leaving about 40% sugar.
The calculator returns the mass of the unmodified chain. When you know which modifications are present, add their mass shifts to the result:
| Modification | Monoisotopic shift (Da) | Average shift (Da) |
|---|---|---|
| Phosphorylation (S, T, Y) | +79.966 | +79.980 |
| Acetylation (N-terminus, K) | +42.011 | +42.037 |
| Methylation | +14.016 | +14.027 |
| Methionine oxidation | +15.995 | +15.999 |
| Deamidation (N, Q) | +0.984 | +0.985 |
| C-terminal amidation | −0.984 | −0.985 |
| Pyroglutamate from N-terminal Q | −17.027 | −17.031 |
| HexNAc (GlcNAc, GalNAc) | +203.079 | +203.192 |
| Hexose (mannose, galactose) | +162.053 | +162.141 |
| Sialic acid (NeuAc) | +291.095 | +291.255 |
Synthetic peptides are where this matters most. A C-terminal amide and an N-terminal acetyl together shift a peptide by +41.027 Da monoisotopic, and a peptide ordered with both caps will not match an uncapped calculation. Those two caps have their own N-terminus and C-terminus settings; add the other shifts in this table by hand.
Glycans are harder because they are heterogeneous. A single N-linked site carries anything from the 892.317 Da (monoisotopic) Man3GlcNAc2 core to branched, sialylated structures of 2 to 3 kDa, and each copy of the protein can differ.
Find candidate sites with N-glycosylation site prediction, then treat the glycoprotein mass as a range rather than a single number. Antibodies are a common case, covered in antibody molecular weight.
A band that sits away from the calculated mass is common and does not by itself mean the protein is wrong. SDS-PAGE estimates mass by comparing mobility with a ladder, which assumes every protein binds the same amount of SDS per gram and unfolds into a similar shape. Several things break that assumption:
Gel filtration has its own trap. A size-exclusion column sorts by Stokes radius, not mass, as Erickson reviews. Glycosylated erythropoietin has a Stokes radius of 32 Å, much larger than the 20 Å expected for a compact sphere of its mass, so it elutes like a bigger protein.
When the band and the calculation disagree, check the sequence you calculated against the construct first (tags, signal peptide, initiator Met), then account for known modifications, then confirm by intact mass spectrometry if the difference still matters.
The calculator includes four examples that load the sequence and settings described here.
The 162-residue mature bovine chain published with the ExPASy Compute pI/Mw reference output. With Average mass, no initiator Met removal and no disulfide correction, ProteinIQ returns 18,281.208 Da (18.281208 kDa). ExPASy reports 18,281.00 Da; the 0.208 Da difference (about 0.0011%) comes from the precision of each mass table.
The canonical 76-residue sequence with Average mass and no corrections, returning 8,564.845 Da (8.564845 kDa). It is a compact check of raw FASTA input and the default residue table.
The 21-residue human A-chain with Monoisotopic mass and one intrachain disulfide bond, returning 2,379.984 Da (2.379984 kDa). This is the isolated A-chain only. Intact insulin also contains the B-chain and two interchain disulfides, as described in how many amino acids are in insulin.
The nine-residue hormone CYIQNPCLG with Average mass, one disulfide bond and an amidated C-terminus, returning 1,007.190 Da. PubChem lists oxytocin at 1,007.2 g/mol. Switch to Monoisotopic and the result, 1,006.436 Da, matches PubChem's exact mass of 1,006.4365 Da.
| You want to | Use |
|---|---|
| Mass of a whole protein or peptide chain in Da or kDa | Protein molecular weight calculator (this page) |
| Mass together with pI, extinction coefficient and stability | Protein Parameters |
| pI of a protein or peptide | Isoelectric point calculator |
| Masses of tryptic or other digest peptides, or ion m/z values | Peptide mass calculator |
| Protein sequence from a DNA or mRNA coding sequence | DNA to protein |
| Protein concentration from A280 | Extinction coefficient |
| Residue counts and percentages | Amino acid composition |
| Molecular weight of a small molecule from SMILES | Molecular descriptors |
| Mass of a DNA or RNA oligonucleotide | Oligo analyzer |
It is the sum of the masses of every atom in one molecule, given in daltons (Da) or kilodaltons (kDa). Most proteins fall between 10 and 100 kDa; human ubiquitin is 8.6 kDa and serum albumin about 66 kDa. Paste a sequence above to get the exact value for your protein.
Multiply the number of amino acids by 0.11 for an estimate, so 300 residues is about 33 kDa. For the exact value, paste the sequence into the calculator; the shortcut is typically within a few percent.
About 9, since an average residue weighs 110 Da. A 50 kDa protein therefore has roughly 455 amino acids. The real count depends on composition, and glycosylation or tags can make a smaller chain run at 50 kDa on a gel.
Add the residue masses and one water (18.015 Da), or equivalently add the free amino acid masses and subtract 18.015 Da for each peptide bond. Paste the peptide here, set N-terminus and C-terminus to match any acetyl or amide caps, enter the disulfide count, and choose Monoisotopic when you compare with a mass spectrum.
Divide the mass concentration in g/L (the same number as mg/mL) by the molecular weight in g/mol. A 50 kDa protein at 1 mg/mL is 1 ÷ 50,000 mol/L, or 20 µM.
Glycosylation, phosphorylation, uneven SDS binding, fusion tags and uncleaved signal peptides all move a band up. Membrane proteins can also run faster than expected. When the gap is larger than known modifications explain, intact mass spectrometry confirms what the chain really is.
Numerically, yes. A protein of 8,564.845 Da per molecule has a molar mass of 8,564.845 g/mol, which is the value to use for molarity and stoichiometry.
For a compact globular protein, Erickson gives a minimum radius of nm, with in daltons. A 100 kDa protein comes out at about 3.1 nm radius, or 6 nm across, and a 50 kDa protein at 2.4 nm radius. Elongated or glycosylated proteins are larger. For a structure file, radius of gyration measures the actual dimensions.
Only the ones it has settings for: initiator Met removal, disulfide bonds, N-terminal acetylation and C-terminal amidation. Add the shifts from the modification table above for phosphorylation, side-chain acetylation, glycans or other known changes.
Calculate the aliphatic index of protein sequences to assess thermostability
Calculate the molar extinction coefficient at 280 nm and convert an A280 reading into protein concentration.
Find potential N-linked glycosylation sites (NX[S/T] sequons) in protein sequences.
Calculate mean Kyte-Doolittle hydropathy and compare protein sequences.
Calculate dipeptide-based instability scores and predicted stability for protein sequences.
Calculate the theoretical isoelectric point (pI) - the pH at which a protein has no net charge.
Calculate the percentage and frequency of each amino acid in protein sequences
Scan protein sequences for glycosylation, phosphorylation, localization signals, and other biologically important motifs.
Analyze aggregation-prone regions in a protein structure.
Plot net charge vs pH to visualize protein charge behavior and identify the isoelectric point.