SAVES Server Tutorial: ERRAT, Verify3D and PROCHECK

SAVES v6.1 checks a protein model with ERRAT, Verify3D, PROVE, PROCHECK and WHATCHECK from one PDB upload. Read three numbers first: an ERRAT overall quality factor close to 95% or higher, a Verify3D pass (at least 80% of residues with an averaged 3D-1D score of 0.1 or more), and over 90% of residues in PROCHECK’s most favoured Ramachandran regions.
Most students meet SAVES the same way: a supervisor says “validate the model”, the server returns five reports, and none of them come with an explanation. This guide from the StemSkills Lab team (10+ years in structural bioinformatics, drug design and molecular modeling) takes one upload end to end, explains every line you will be asked about, and shows how to turn a failing region into a concrete refinement target. It sits in the structure stage of our computational biology skills roadmap, right after you build a model and before you dock anything into it.
What is the SAVES server and what does it run?
SAVES (Structure Analysis and Verification Server) is a free metaserver run by the UCLA-DOE Institute at saves.mbi.ucla.edu. The current release is v6.1. You upload one coordinate file and can run any or all of five programs on it. The tool is popular: when we checked the server’s own usage page on 30 October 2026, it reported 1,127,782 jobs since v6.0 launched on 23 November 2020, and an average of about 634 jobs a day over the previous 91 days.
Each program asks a different question about the same model:
- ERRAT looks at the statistics of non-bonded contacts between carbon, nitrogen and oxygen atoms and compares them with highly refined crystal structures (Colovos and Yeates, Protein Science 2:1511-1519, 1993).
- Verify3D asks whether each residue sits in a 3D environment that suits its amino acid type, the “3D-1D profile” method (Bowie, Luthy and Eisenberg, Science 253:164-170, 1991; Luthy, Bowie and Eisenberg, Nature 356:83-85, 1992).
- PROVE compares atomic volumes with high-resolution structures and reports Z-score outliers (Pontius, Richelle and Wodak, 1996).
- PROCHECK checks stereochemistry: the Ramachandran plot, bond lengths, angles and side-chain geometry (Laskowski, MacArthur, Moss and Thornton, Journal of Applied Crystallography 26:283-291, 1993).
- WHATCHECK runs a long list of stereochemical checks derived from the WHAT IF program by Gert Vriend.
How do you prepare a model before uploading it to SAVES?
The upload form says it plainly: your structure must be “in PDB format only”. Five minutes of preparation saves most failed jobs.
- Get a PDB file, not mmCIF. SWISS-MODEL lets you download the model as PDB. The AlphaFold Protein Structure Database offers both mmCIF and PDB downloads for each entry, so pick PDB. If you only have a
.cif, convert it with gemmi:gemmi convert model.cif model.pdb. - Give every residue a chain ID. Some modelling tools write a blank chain column. With pdb-tools (
pip install pdb-tools) runpdb_chain -A model.pdb > model_A.pdb. Our guide to extracting a single chain from a PDB file covers multi-chain cases. - Validate the protein on its own. Ligands, waters and ions are not what these programs score. Remove HETATM records with
pdb_delhetatm model_A.pdb > protein.pdb, or in PyMOL withremove hetatmthensave protein.pdb. See how to remove water molecules from a PDB file for the reasoning. - Trim what you would never trust. For AlphaFold models, the B-factor column holds pLDDT. Long low-confidence tails (pLDDT below 50 is usually disordered) will drag every SAVES score down without telling you anything new. Read how to interpret AlphaFold pLDDT and PAE before deciding what to cut, and record what you removed.
How do you run a SAVES job, step by step?
- Open saves.mbi.ucla.edu and click the file box to choose
protein.pdb. - Give the job a name you will recognise later (the field fills with the filename by default).
- Start the job, then run each program tile (ERRAT, Verify3D, PROVE, PROCHECK, WHATCHECK), or run all of them.
- Wait for each tile to show its result. Small models usually finish quickly; the server queue sets the pace.
- Save everything immediately. The server states that it removes all jobs after one week. Download the plots and summaries rather than relying on the job link.
Each tile shows a quick status flag. Treat those flags as a triage signal, not a verdict. The numbers underneath are what a reviewer will ask about.
Want the guided, hands-on version?
Our live Molecular Modeling & MD Simulations cohort bootcamp takes you from zero to running real docking and MD workflows, with a portfolio project for your grad-school applications.
How do you read the ERRAT overall quality factor?
ERRAT slides a 9-residue window along the chain and computes an error value for each window from its non-bonded atom contacts. The plot has two lines: windows above the 95% line are drawn yellow, and windows above the 99% line are red. The UCLA ERRAT page sets the expectation clearly: “5% of a good protein structure is expected to have an error value above this level.”
The headline number is the overall quality factor, defined in the ERRAT output as the percentage of the protein for which the calculated error value falls below the 95% rejection limit. The same footnote gives the reference points: good high-resolution structures generally score around 95% or higher, and structures at lower resolution (2.5 to 3 Å) average around 91%.
How to use it in practice:
- Compare your model with those reference values, not with an arbitrary cut-off. A model in the low 90s is behaving like a medium-resolution crystal structure.
- Look at where the red bars are. A run of red windows in one loop is a local problem you can fix. Red bars spread evenly across the chain point to a wrong template or a bad alignment.
- Remember what ERRAT was built on: crystal structures. Termini and flexible loops in predicted models often score badly even when the core is sound.
What does the Verify3D 3D-1D score mean, and why did my model fail?
Verify3D gives each residue an environment class from its buried area, the fraction of it covered by polar atoms, and its secondary structure. It then scores how well that residue type fits that environment, and averages the score over a sliding window. A residue with a negative or near-zero average is sitting somewhere its amino acid type rarely sits in real proteins.
On the current SAVES report, the summary line gives the percentage of residues with an averaged 3D-1D score of 0.1 or more, and the model passes when at least 80% of residues reach it. Many older papers report a 0.2 cut-off from earlier versions of the server, so quote the exact line from your own report rather than copying a threshold from someone else’s methods section.
Reading the plot:
- A long stretch below the threshold usually maps to a misaligned segment: the backbone is in a plausible place but the wrong residues were threaded onto it. Check the target-template alignment in that region first.
- Exposed hydrophobic patches and buried charged residues both pull the score down. In a membrane protein model, the transmembrane helices can fail for this reason alone, because Verify3D’s statistics come from soluble proteins.
- Ask what you will do with the region. A dip far from your docking site matters less than a dip in the pocket lining.
How do you read the PROCHECK Ramachandran statistics?
PROCHECK splits the Ramachandran plot into four regions: most favoured, additional allowed, generously allowed and disallowed. It counts only non-glycine, non-proline residues in these percentages, because glycine and proline have their own backbone preferences. The summary in the PROCHECK output carries the benchmark: based on an analysis of 118 structures at 2.0 Å resolution or better with an R-factor no greater than 20%, a good quality model is expected to have over 90% of residues in the most favoured regions.
What to check, in order:
- Most favoured percentage. Over 90% is the textbook target.
- Disallowed residues. Note each one by number. A few in long surface loops are common in models. One in a helix, a strand or the binding site needs attention.
- Residue-by-residue plots. PROCHECK also flags unusual bond lengths, angles and side-chain chi angles, which helps you spot a single badly built residue.
PROCHECK’s regions are older and broader than the ones MolProbity uses, so the two numbers are not interchangeable. Our guide on how to validate a protein structure with Ramachandran plots and MolProbity explains the stricter MolProbity targets.
What do PROVE and WHATCHECK add?
PROVE reports how far atomic volumes in your model deviate from those in well-refined structures, as Z-scores, and lists buried outlier atoms. A high outlier count often points to the same over-packed or under-packed regions ERRAT flags. WHATCHECK produces a long report covering bond geometry, planarity, packing and side-chain flips (for example asparagine, glutamine and histidine orientations). Most students do not need to report every WHATCHECK line; use it to confirm or explain a problem the other programs found.
Which SAVES program answers which question?
| Program | What it checks | Number to read | Usual guideline | Primary reference |
|---|---|---|---|---|
| ERRAT | Non-bonded C, N, O contact statistics in 9-residue windows | Overall quality factor (%) | Around 95% or higher for high-resolution structures; about 91% at 2.5 to 3 Å | Colovos and Yeates, 1993 |
| Verify3D | Fit of each residue type to its 3D environment | % residues with averaged 3D-1D score of 0.1 or more | Pass at 80% or more | Bowie et al., 1991; Luthy et al., 1992 |
| PROVE | Atomic volumes against high-resolution structures | Z-scores and outlier count | Fewer buried outliers is better | Pontius et al., 1996 |
| PROCHECK | Backbone and side-chain stereochemistry | % residues in most favoured regions | Over 90% | Laskowski et al., 1993 |
| WHATCHECK | Broad geometry, packing and side-chain checks | Per-check warnings and errors | Use to explain problems flagged elsewhere | Vriend (WHAT IF) |
How do you turn a failing region into a refinement target?
The point of SAVES is not a pass mark. It tells you which residues to fix. Put the three main reports side by side and write down residue ranges.
- List the bad residues from each program. ERRAT red windows, Verify3D stretches below 0.1, PROCHECK disallowed residues.
- Look for overlap. A loop flagged by all three is your first target. A residue flagged by only one program may be an artefact of that method.
- Classify the cause. A wrong alignment calls for re-modelling with a corrected alignment or a better template; see how to refine a homology model for when refinement helps and when to re-model instead. A single bad loop can be rebuilt on its own (our guide to fixing missing residues and loops covers loop modelling). Clashing side chains often clear with a short energy minimisation.
- Re-run SAVES on the refined model and report the before and after numbers together. That comparison is what makes a methods section credible.
A worked reading, with illustrative residue numbers: suppose ERRAT shows red windows across residues 140 to 152, Verify3D drops below 0.1 over 138 to 150, and PROCHECK places two residues from that loop in disallowed regions. That is one problem, not three. Check the alignment over that loop, rebuild it, and validate again. If your docking pocket is elsewhere, say so in your report.
If you built the model with SWISS-MODEL, our SWISS-MODEL homology modelling tutorial shows how to read the server’s own quality estimates, so you can report both those and an independent check.
Troubleshooting: why does a SAVES job fail or give strange results?
- The upload does nothing or the programs return empty results. The file is probably mmCIF, or a PDB file with extra text from a modelling server. Convert with
gemmi convert model.cif model.pdband open the result in a text editor: every coordinate line should start withATOMorHETATM. - Residues seem missing or merged in the plots. Look for a blank chain ID or duplicated residue numbers. Assign a chain with
pdb_chain -Aand clean the file layout withpdb_tidyfrom the same pdb-tools package. - A docked complex gives confusing output. The ligand is in the file. Validate the protein without HETATM records, then judge the pose separately with an interaction analysis.
- Every score is poor on an AlphaFold model. Check the pLDDT of the failing regions. Low-confidence tails and linkers will fail; trim them, state that you did, and validate the confident domain.
- Your old job link says the job “has been purged from the system”. SAVES deletes jobs after one week. Re-run the file and keep local copies of every report this time.
- A membrane protein fails Verify3D. Expected for lipid-facing helices, as explained above. Say so in your report and lean on PROCHECK and ERRAT for those regions.
What should you write in your methods and results?
Give the server version, the programs and the actual numbers. A pattern that works: “Model quality was assessed with SAVES v6.1 (ERRAT, Verify3D and PROCHECK). The model had an ERRAT overall quality factor of X%, Y% of residues had an averaged 3D-1D score of at least 0.1, and Z% of non-glycine, non-proline residues fell in the most favoured Ramachandran regions.” Replace X, Y and Z with your own values, and add the before and after values if you refined. Cite the original papers listed above, not only the server.
Frequently asked questions
Is SAVES free, and do I need an account?
Yes, it is free, and the upload page needs no login. Jobs are deleted after one week, so download your results the same day.
What is a good ERRAT score for a homology model?
There is no single cut-off. The ERRAT output says good high-resolution structures score around 95% or higher and lower-resolution structures (2.5 to 3 Å) average about 91%. Compare your model against those values and look at where the errors cluster.
Why does my Verify3D threshold differ from a published paper?
The current SAVES report counts residues with an averaged 3D-1D score of 0.1 or more and passes at 80%. Many earlier papers quote 0.2 from older server versions. Report the line exactly as your own output gives it.
Can I upload an AlphaFold model directly?
Yes. Download the PDB version from the AlphaFold database or convert the mmCIF. Trim low-pLDDT regions first, or they will dominate the failures.
Is SAVES enough on its own, or do I also need MolProbity?
For most student projects, SAVES plus a MolProbity clashscore covers what reviewers ask. PROCHECK’s Ramachandran regions are broader than MolProbity’s, so reporting both gives a fuller picture.
Want the guided, hands-on version?
Our live Molecular Modeling & MD Simulations cohort bootcamp takes you from zero to running real docking and MD workflows, with a portfolio project for your grad-school applications.
