Blog
UCSF ChimeraX Tutorial for Beginners: Load, Inspect and Clean a Protein Structure
- August 21, 2026
- Posted by: Stemskills Lab
- Category: Molecular Modeling

UCSF ChimeraX is a free molecular visualization and analysis program that you drive from a command line built into its window. To start, install it from the UCSF RBVI site, type open 2gbp to fetch a structure straight from the Protein Data Bank, then use about a dozen commands (open, hide, show, color, select, surface, contacts, hbonds, distance, delete, addh, save) to inspect and clean it.
Most students meet structure visualization through PyMOL or a web viewer, click around for an afternoon, and never learn to drive the program with text. That is the wrong habit to build. A command line is reproducible: you can paste the same six lines into a methods section, a lab notebook, or a script six months later and get the identical figure. This walkthrough from the StemSkills Lab team, which has spent 10+ years in sequence and structural bioinformatics, drug discovery and design, and multiscale molecular modeling, gets you from a fresh install to a cleaned, docking-ready structure in one session.
What is UCSF ChimeraX, and why learn it instead of Chimera?
ChimeraX is the current visualization and analysis program from the UCSF Resource for Biocomputing, Visualization, and Informatics (RBVI). Its predecessor, UCSF Chimera, is finished. The RBVI states plainly that “UCSF Chimera is legacy software that is no longer being developed or supported”, and notes that the NIH grant behind it (P41-GM103311) ended in 2018. Any tutorial you follow that opens UCSF Chimera is teaching you a dead tool.
ChimeraX itself is documented in three papers in Protein Science, and the RBVI asks that you cite at least one of them in publications. The most recent is Meng EC, Goddard TD, Pettersen EF, Couch GS, Pearson ZJ, Morris JH, Ferrin TE, “UCSF ChimeraX: Tools for structure building and analysis,” Protein Science 2023 Nov;32(11):e4792. The earlier ones are Pettersen et al., Protein Science 2021;30(1):70-82, and Goddard et al., Protein Science 2018;27(1):14-25. Note the citation requirement now, before you write your dissertation, not after.
On cost, the UCSF download page says ChimeraX is “free for academic, government, nonprofit, and personal use,” with a separate commercial licence for everyone else. For a BSc or MSc student that means zero friction.
ChimeraX vs PyMOL vs UCSF Chimera
| UCSF ChimeraX | PyMOL | UCSF Chimera (legacy) | |
|---|---|---|---|
| Development status | Under active development | Maintained and distributed by Schrödinger | No longer developed or supported |
| Cost for students | Free for academic, government, nonprofit and personal use | Commercial product; most source code released under a permissive open-source licence | Free, but unsupported |
| Primary interface | Built-in command line plus GUI panels | Command line plus GUI; Python API | Command line plus GUI |
| Fetches structures by ID | Yes: PDB, PDBe, PDBj, AlphaFold, ESMFold, EMDB, PubChem, UniProt and more | Yes, PDB fetch | Yes |
| Best for a beginner in 2026 | Recommended starting point | Still widely used; worth learning second | Avoid for new work |
The practical answer: learn ChimeraX first because it is the tool being developed, then pick up PyMOL for the figure conventions your lab already uses. If you want the PyMOL side, we cover it in our guide to making publication-quality figures in PyMOL.
How do you install ChimeraX?
Go to the official ChimeraX download page and take the current production release for your operating system. Builds are provided for Windows, macOS and Linux. Avoid the daily builds until you know the program, since they change without notice and can break a workflow mid-project.
When ChimeraX opens you will see three things that matter: the graphics window, the Log panel on the right where results and warnings are printed, and the command line at the bottom of the window. If the command line is not visible, turn it on from the Tools menu under General. Everything below is typed there.
How do you open a protein structure in ChimeraX?
One command, one identifier:
open 2gbpChimeraX treats a four-character identifier as an RCSB Protein Data Bank entry and fetches it in mmCIF format by default. That single behaviour is why the command line beats the browser: no download folder, no unzipping, no file paths. The PDB now holds 258,616 released structures, and any of them is one command away.
If you specifically need the older PDB-format file, or you want all deposited coordinate sets rather than only the first, the documented form is:
open 1plx format pdb coord TTo open a file already on your disk, give the path: open /home/you/work/receptor.pdb. To pull a predicted model instead of an experimental one, name the database:
open P69905 from alphafoldThat fetches the AlphaFold DB model for a UniProt name or accession. ChimeraX also fetches from pdbe, pdbj, esmfold, emdb, pubchem, uniprot, ccd, and translators for smiles and iupac strings, so you can build a small ligand from a SMILES string without leaving the program. If you are choosing between a predicted and an experimental structure, read our comparison of AlphaFold, homology modelling and experimental structures first, and our guide to choosing the right entry on the RCSB PDB.
Which ChimeraX commands do you actually need on day one?
Roughly a dozen commands cover the large majority of day-to-day work. Learn these and stop reading command lists.
| Command | What it does | Example |
|---|---|---|
open | Fetch or load a structure | open 2gbp |
hide / show | Turn atoms, cartoons or surfaces off and on | hide solvent |
color | Recolour by chain, element or attribute | color bychain |
rainbow | Colour sequentially N-terminus to C-terminus | rainbow /A |
select | Select atoms, including by distance zone | select zone ligand 4.5 protein res t |
surface | Compute a molecular surface | surface /A |
contacts | List all direct interatomic interactions | contacts ligand restrict protein |
clashes | List only unfavourably close contacts | clashes ligand restrict protein |
hbonds | Find hydrogen bonds | hbonds ligand restrict cross |
distance | Measure and monitor a distance | distance /A:195@og /A:57@ne2 |
delete | Remove atoms from the model | delete solvent |
addh | Add hydrogens at physiological protonation states | addh |
save | Write an image, a structure or a session | save fig.png width 1600 supersample 3 |
A tilde undoes most of them. ~surface hides a surface, ~distance clears distance monitors, ~hbonds clears H-bond pseudobonds. If you learn one meta-rule today, learn that one.
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 point at a specific chain, residue or atom?
Every command above takes an atom specification, and the syntax is four symbols in a fixed hierarchy:
#model number, for example#1or the sub-model#1.3/chain identifier, for example/A:residue number or residue name, for example:51or:glu@atom name, for example@ca
They combine left to right. The official documentation gives these examples verbatim:
#1,2:50,70-85@ca
/A:195,221@n,ca,c,o
#1/B-D,FThe first takes the alpha carbons of residue 50 and residues 70 to 85 in models 1 and 2. The second takes backbone atoms of two residues in chain A. The third takes chains B, C, D and F of model 1.
ChimeraX also understands built-in category words, which is where most of your speed comes from: protein, nucleic, solvent, ions, ligand, sidechain, backbone, helix, strand, coil, disulfide and aromatic-ring. So hide solvent, color ligand yellow and show sidechain all work without you knowing a single residue number.
How do you inspect a ligand binding site?
This is the sequence that answers the question a docking or MD project actually asks: what is touching the ligand?
select zone ligand 4.5 protein residues true
show sel atoms
color sel byhetero
contacts ligand restrict protein
hbonds ligand restrict crossLine one selects every residue with any atom within 4.5 Å of the ligand. Lines two and three display those residues and colour them by element while keeping carbons as they are. Lines four and five list the interactions in the Log panel.
The defaults behind those last two commands matter, and students routinely misreport them. contacts uses an overlap cutoff of −0.4 Å with a hydrogen-bond allowance of 0.0 Å, so it catches favourable and unfavourable interactions alike. clashes uses an overlap cutoff of 0.6 Å with an allowance of 0.4 Å, so it reports only genuinely bad contacts. The hbonds command applies a distance tolerance of 0.4 Å and an angle tolerance of 20.0 degrees to idealised geometry criteria. Quote those numbers in your methods section rather than saying “default settings.”
For a single measurement, distance takes two atom specifications and prints the value to the Log, leaving a labelled pseudobond in the view. For a molecular surface, plain surface builds a solvent-excluded surface for each biopolymer chain, using what the documentation calls “the radius of the ‘rolling sphere’ probe (default 1.4 Å, the value often used to approximate a water molecule)” on a 0.5 Å grid.
If you need a flat 2D interaction diagram for a figure, ChimeraX is not the right tool. Use the workflow in our guide to protein-ligand interaction diagrams with LigPlot+ and PLIP. And if you do not yet know where the site is, start with finding a protein binding site for docking.
How do you clean a downloaded PDB structure for docking or MD?
A freshly fetched entry is a crystallography deposit, not a simulation input. It usually carries crystallographic waters, buffer molecules, ions, and often several copies of the same chain. Cleaning it is four decisions.
- Drop the solvent and crystallisation additives.
delete solventremoves waters. Inspect what else is present before deleting: a “ligand” in the PDB sense may be glycerol from the cryoprotectant or the actual cofactor you need. List them by eye withselect ligandand read the Log. - Keep one biological unit. If the asymmetric unit holds four copies of a monomeric protein, keep one:
delete #1/B-Dleaves chain A alone. - Decide about ions and cofactors. A catalytic zinc or a heme is part of the system and must stay. A sodium ion sitting on a surface loop is usually crystallisation salt.
delete ionsremoves all of them, so use it only after you have checked. - Add hydrogens.
addhadds them with hydrogen-bond geometry considered by default (hbond true), and suppresses hydrogens within 3.95 Å of metal ions under the documented conditions.
Protonation is where the science lives. The ChimeraX documentation states that addh assigns “protonation states reasonable at physiological pH, regardless of the local environment” for most residues, while “if amino acids have standard residue names, each histidine sidechain will be protonated based on its local environment.” If your system needs a specific histidine tautomer, rename the residue to HID, HIE or HIP before running addh, and the same naming trick works for Asp, Glu, Lys and Cys.
Then write the cleaned file out:
save receptor_clean.pdb format pdbThat file is a valid starting point for the docking preparation described in our protein and ligand preparation guide, or for the simulation setup in preparing a protein for molecular dynamics. Before either, run the structure through the checks in how to validate a protein structure.
How do you save a figure, a structure and a session?
Three different outputs, one command.
save figure.png width 1600 supersample 3
save receptor_clean.pdb format pdb
save project.cxs format sessionSupersampling renders the image larger in each dimension before downsampling, which is what removes jagged edges from a figure; the default is 3. Sessions are the underrated one. A .cxs file stores your models, colours, selections and camera position so you can resume exactly where you stopped, and ChimeraX compresses it with lz4 by default, producing files roughly 4 times smaller than uncompressed. Save a session at the end of every working block.
What goes wrong the first time, and how do you fix it?
| Symptom | Cause | Fix |
|---|---|---|
delete /a removes the wrong chain, or nothing | Chain identifiers are case-insensitive only until an entry contains both upper- and lowercase chain IDs, at which point case matters | Check the chain list in the Log after open and match the case exactly |
| Deleting a heavy atom silently removes hydrogens too | delete defaults to attachedHyds true | Intended in almost every case; set attachedHyds false if you truly need the orphaned hydrogens |
delete solvent leaves waters behind | The waters are in a different model than you assumed | Qualify the model: delete #1 & solvent |
| Your docking program reports missing or duplicated hydrogens | Most docking preparation tools add their own hydrogens and will not expect yours | Decide once where hydrogens come from, and do not add them twice |
| Histidine behaves oddly in MD | addh chose the tautomer from the local environment | Rename to HID, HIE or HIP before running addh |
| Surface generation is slow or looks blobby | The resolution option switches from a solvent-excluded surface to a Gaussian one | Omit resolution for the standard SES; use it deliberately for low-resolution cryo-EM work |
| A surface will not go away | Surfaces are hidden, not deleted | ~surface, which is the same as surface hidePatches |
Where does ChimeraX fit in a computational biology skill set?
Visualization is the connective tissue between every other step. You use it to check a downloaded entry before docking, to look at a pose after docking, to sanity-check a system before an MD run, and to build the figures that go into your thesis. It is a small skill with a large surface area, which is exactly why it is worth an afternoon. Where it sits relative to sequence analysis, docking and simulation is laid out in our computational biology skills roadmap, and the docking step it feeds is covered in our AutoDock Vina tutorial for beginners.
Frequently asked questions
Is ChimeraX free for students?
Yes. The UCSF download page states that ChimeraX is free for academic, government, nonprofit and personal use. Commercial users need a separate licence. There is no student registration step.
Should I learn ChimeraX or PyMOL?
Learn ChimeraX first, because it is under active development and its fetch-by-identifier workflow gets you productive faster. Add PyMOL second, since many labs and journals have existing PyMOL scripts and figure conventions you will be expected to work with.
Which ChimeraX paper should I cite?
Cite at least one of the three Protein Science papers listed by the RBVI. For work involving structure building, prediction-aware tools or map fitting, cite Meng et al. 2023, Protein Science 32(11):e4792. For general visualization, Pettersen et al. 2021, Protein Science 30(1):70-82 is the usual choice.
Can ChimeraX open AlphaFold models directly?
Yes. Use open uniprot-ID from alphafold, for example open P69905 from alphafold. ChimeraX also fetches from ESMFold, EMDB, PubChem, UniProt and the PDB Chemical Component Dictionary, and can build a structure from a SMILES or IUPAC string.
Does ChimeraX replace a dedicated preparation tool for docking or MD?
No. ChimeraX handles the visual triage: deleting solvent and extra chains, adding hydrogens, checking what is in the site. Force-field assignment, charge assignment and file-format conversion still belong to your docking or simulation preparation pipeline.
How do I undo something in ChimeraX?
Most display commands have a tilde form that reverses them, such as ~surface, ~hbonds and ~distance. Structural edits like delete are not reversed this way, which is the practical reason to save a session before you start cutting a structure apart.
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.