---
title: P2Rank troubleshooting
description: 'Resolve common P2Rank PDB parsing, model selection, and pocket quality issues.'
tags:
  - p2rank
  - troubleshooting
---

Use this page to diagnose the problems you hit while running [P2Rank](/docs/p2rank) — PDB parsing errors, no pockets detected, a top pocket that misses the known site, weak predictions on ESMFold/AlphaFold or low-resolution structures, too many pockets, and PyMOL rendering issues. Preparing the input structure correctly and picking the right model variant resolves most of them.

## Common issues and fixes

P2Rank uses random forest machine learning to predict binding pockets from protein 3D structure. Understanding common issues helps you prepare inputs correctly and interpret predictions appropriately.

## PDB parsing errors

- Ensure the PDB file contains valid ATOM records with correct formatting (columns must be properly aligned)
- Check that chain identifiers are present and consistent throughout the file
- Remove HETATM records for non-standard residues if they cause parsing failures (P2Rank ignores them anyway)
- For multi-model PDB files (NMR ensembles), only the first MODEL record is used; ensure it is complete
- Verify that the PDB ID is correct and exists in RCSB PDB; typos in accession codes are a common error

## No pockets detected

- Very small proteins (&lt;50 residues) may lack sufficient surface area for pocket detection; consider whether the protein realistically has binding pockets
- Check that the submitted structure isn't just a small fragment — there's no chain-filter parameter, so if you need to analyze one chain, submit `pdb_content` containing only that chain
- For predicted structures with large low-confidence regions, try the alphafold model variant which handles prediction uncertainty
- Verify that the protein is properly folded in the structure; unfolded or disordered structures do not have pockets

## Top pocket does not match known binding site

- P2Rank ranks pockets by probability score, not by biological importance. The known active site may rank second or third
- Check whether the known binding site is occupied by a ligand in the PDB; P2Rank removes ligands before prediction, and the apo pocket may score differently
- For multi-domain proteins, the top-scoring pocket may be on a different domain than expected; there's no chain-filter parameter, so submit a `pdb_content` trimmed to the domain of interest if you need to focus the analysis

## Poor predictions on ESMFold/AlphaFold structures

- Always use the **alphafold** model variant for predicted structures; the default model is calibrated on experimental structures
- Low-confidence regions (pLDDT &lt; 50) in predicted structures may create artificial pockets at the protein surface; check pLDDT scores for pocket-lining residues
- Predicted structures may have subtle geometric differences from true structures that affect pocket detection
- Consider trimming low-confidence tails or loops before running P2Rank to reduce false positives

## Low-resolution structure issues

- Structures with resolution &gt;3.0 angstroms may produce less accurate pocket predictions due to imprecise atomic coordinates
- Missing side chains in low-resolution structures reduce the accuracy of surface feature computation
- Consider rebuilding missing side chains with homology modeling or Rosetta before running P2Rank
- Use multiple structures of the same protein (if available) and compare pocket predictions for consensus

## Too many pockets detected

- Large multi-chain complexes naturally have many surface concavities; use the `max_pockets` parameter to limit output (1-50, default 10)
- There's no minimum-score threshold parameter — filter the returned pocket table by `pocket_score` yourself, or focus on pockets with druggability classified as "druggable" or "intermediate"
- For multi-chain structures, there's no chain-filter parameter — submit `pdb_content` trimmed to the chain(s) of interest for a focused analysis

## PyMOL script does not render correctly

- Ensure PyMOL is installed and the PDB file is accessible at the path referenced in the script
- The PyMOL script assumes the original PDB file is in the same directory; adjust paths if needed
- Color scheme may not display correctly in PyMOL versions prior to 2.0; update to the latest version
- If pockets overlap with crystallographic contacts, the visualization may be cluttered; hide symmetry mates in PyMOL

## Still stuck?

- Provide the job ID, PDB ID or filename, model variant, and any error messages
- Note the number of chains, total residue count, and structure source (experimental vs. predicted)
- Share whether the issue is with structure parsing, pocket detection, or result interpretation
- Include the known binding site residues (if available) for comparison with predictions

## Read next
