---
title: P2Rank
description: >-
  Predict protein binding sites with ML-based pocket detection and druggability
  scoring.
tags:
  - p2rank
---

P2Rank tells you **where a drug could bind** — it detects and ranks the druggable pockets on a protein structure so you know which site to target. It's the first step in the docking arc (pocket → pose → rescore): the entry step before you [dock a ligand with DiffDock](/docs/diffdock). See [what you can achieve](/docs/capabilities#binding-and-docking) for the full arc.

## Try it

**Try this prompt** — [open in a guest chat](/chat/new?guest=true&prompt=Get%20KRAS%20G12C%20sequence%20from%20UniProt%20(P01116)%2C%20fold%20with%20ESMFold%2C%20and%20use%20P2Rank%20to%20identify%20the%20switch%20II%20pocket%20that%20covalent%20inhibitors%20like%20sotorasib%20target%20%E2%80%94%20rank%20all%20identified%20pockets%20by%20druggability%20score%20and%20recommend%20which%20is%20most%20suitable%20for%20a%20covalent%20warhead%20screen.).

> Get KRAS G12C sequence from UniProt (P01116), fold with ESMFold, and use P2Rank to identify the switch II pocket that covalent inhibitors like sotorasib target — rank all identified pockets by druggability score and recommend which is most suitable for a covalent warhead screen.

_Folds the structure, then runs P2Rank to detect and rank druggable pockets by score._

## What P2Rank does

P2Rank is a machine learning-based tool for predicting ligand binding sites (pockets) on protein structures. It uses a **random forest classifier** trained on structural features extracted from protein surface points to identify regions likely to bind small molecules. Unlike geometry-only methods such as fpocket, P2Rank learns from known protein-ligand complexes. Its authors report **72.0% top-n and 78.3% top-(n+2)** success on COACH420, and **68.6% / 74.0%** on HOLO4K, counting a pocket correct when its centre is within **4 Å of any ligand atom** (DCA). Both sets are *holo* structures, where the pocket is already open in the coordinates — see [how P2Rank results compare to the bench](/docs/p2rank/translatability) for what that does and does not tell you.

## Citations

> Krivak R, Hoksza D. P2Rank: machine learning based tool for rapid and accurate prediction of ligand binding sites from protein structure. *Journal of Cheminformatics*. 2018;10:39. doi: [10.1186/s13321-018-0285-8](https://doi.org/10.1186/s13321-018-0285-8)

> Krivak R, Hoksza D. Improving protein-ligand binding site prediction accuracy by classification of inner pocket points using local features. *Journal of Cheminformatics*. 2015;7:12. doi: [10.1186/s13321-015-0059-5](https://doi.org/10.1186/s13321-015-0059-5)

## Key achievements

- **Machine learning advantage**: In its original benchmarks P2Rank outperformed Fpocket, SiteHound, MetaPocket 2.0 and DeepSite ([Krivák & Hoksza, 2018](https://doi.org/10.1186/s13321-018-0285-8))
- **No template dependence**: Does not require homologous structures or known binding sites; works directly from 3D coordinates
- **Speed**: Predicts all pockets on a protein in seconds, enabling high-throughput screening (6.8 s for a single protein cold, under 1 s per protein when amortised across a dataset)
- **Druggability assessment**: The platform adds a heuristic druggability class to each pocket, computed from the P2Rank score and the pocket's residue composition (not a P2Rank output)

## Core capabilities

- **Pocket detection**: Identify binding pockets from protein 3D structure using learned structural features
- **Pocket ranking**: Rank detected pockets by probability score (likelihood of being a true binding site)
- **Druggability scoring**: Classify each pocket as druggable, intermediate, difficult, or undruggable
- **Residue identification**: Report which amino acid residues line each predicted pocket
- **PyMOL visualization**: Generate PyMOL scripts for interactive pocket exploration

## Technical approach

P2Rank operates in three stages:

1. **Surface point generation**: The solvent-accessible surface of the protein is sampled with evenly distributed points (Connolly surface representation)
2. **Feature extraction**: For each surface point, structural features are computed including:
   - Amino acid composition in the local neighborhood
   - Hydrophobicity and charge distribution
   - Curvature and depth from the convex hull
   - Accessible surface area and secondary structure context
3. **Classification and clustering**: The random forest classifies each point as binding/non-binding, and nearby positive points are clustered into pockets

### Available model variants

| Model | Training Data | Features | Best For |
|-------|-------------|----------|----------|
| **default** | PDB experimental structures | Structural features only | General-purpose pocket prediction |
| **alphafold** | AlphaFold/ESMFold structures | Adapted for predicted structures | Models from ESMFold or AlphaFold (lower confidence regions) |

## When to use P2Rank

## Primary use cases

### Pre-docking site identification

- **Blind docking guidance**: Before running DiffDock, identify the most likely binding pockets to focus docking
- **Multi-site analysis**: For proteins with multiple potential binding sites, rank pockets by druggability to prioritize docking targets
- **Allosteric site discovery**: Find binding pockets beyond the known active site for allosteric drug design

### Target assessment and druggability

- **Target validation**: Assess whether a novel target has druggable binding pockets before committing to a drug discovery campaign
- **Pocket comparison**: Compare pocket properties across homologous proteins or between wild-type and mutant structures
- **Selectivity analysis**: Identify differences in binding pockets between on-target and off-target proteins

### Structural genomics

- **High-throughput screening**: Rapidly assess druggability of hundreds of protein structures
- **Target prioritization**: Rank novel targets by the quality and druggability of their predicted binding pockets
- **PDB mining**: Screen the PDB for structures with druggable pockets matching specific criteria

## Webapp integration and workflow

### Input methods in .bloom*

**PDB ID lookup (fastest):**
- Enter a PDB accession code (e.g., `6LU7`, `1M17`)
- .bloom* fetches the structure from RCSB PDB automatically
- All chains in the structure are analyzed together — there's no chain-filter parameter

**Structure upload:**
- Upload a PDB file from local storage or previous jobs
- Supports standard PDB format with ATOM records

**From previous jobs:**
- Import structures from ESMFold predictions
- Chain from AlphaFold database fetches
- Use structures from PDB search results

## Integration with .bloom* ecosystem

### Upstream data sources

**Structure sources:**
- ESMFold: Predicted structures for novel proteins
- AlphaFold DB: Pre-computed structure predictions
- PDB: Experimental crystal and cryo-EM structures

### Downstream applications

**Docking:**
- DiffDock: Target docking to specific predicted pockets
- [Automatic chaining](/docs/how-orchestration-works): ask for structure → pockets → docking in one request

**Target analysis:**
- Target Passport: Pocket druggability data feeds into target assessment
- Comparison tools: Compare pockets across protein variants

## Best paired with

- **ESMFold**: Predict the structure first, then identify binding pockets with P2Rank (use the alphafold model variant)
- **DiffDock**: Identify binding sites, then dock small molecules to the top-scoring pocket
- **PDB2PQR**: Prepare electrostatic surface for further binding site characterization
- **Target Passport**: Feed pocket druggability data into comprehensive target assessment

## Scope and limitations

## Supported inputs

### Structure requirements
- **Format**: PDB format with ATOM records
- **Resolution**: Best results with experimental structures at &lt;3.0 angstrom resolution
- **Completeness**: All heavy atoms in the protein should be present; missing atoms reduce prediction accuracy
- **Single chain or multi-chain**: Both supported; the full structure as submitted is analyzed (no chain-filter parameter)

### Structure sources
- RCSB PDB: Experimental crystal and cryo-EM structures
- ESMFold: Predicted structures (use the alphafold model variant)
- AlphaFold DB: Pre-computed structure predictions

## Prediction limitations

### Accuracy considerations
- **Experimental structures**: Best performance on high-resolution crystal structures
- **Predicted structures**: Lower accuracy on ESMFold/AlphaFold models, especially in low-confidence regions; use the alphafold model variant
- **Disordered regions**: Cannot predict pockets in intrinsically disordered regions
- **Ligand-induced pockets**: Cryptic binding sites that only form upon ligand binding may not be detected

### Druggability caveats
- Druggability classification is based on pocket properties (size, shape, hydrophobicity) and is approximate
- Small pockets may be classified as undruggable even if they bind fragment-sized molecules
- PPI (protein-protein interaction) sites are typically classified as difficult but may still be druggable with specialized compounds

## Performance characteristics

### Speed
- **Typical runtime**: 10-30 seconds per protein structure
- **Scaling**: Roughly linear with protein size
- **Batch processing**: Multiple structures processed sequentially

### Deterministic behavior
- Same structure and model always produce identical pocket predictions
- Results are stable across platform updates (model weights are fixed)

## Chat usage

### Example prompts

- "Run P2Rank on 1M17 to identify binding pockets"
- "Find binding sites on my ESMFold structure"
- "Predict druggable pockets on the EGFR kinase structure"
- "Compare binding pockets between wild-type and mutant structures"
- "Which pocket on 6LU7 is most druggable?"

### Workflow chaining

- **Feeds into**: DiffDock (targeted docking at predicted pockets), Target Passport
- **Accepts from**: ESMFold (predicted structures), PDB Search (experimental structures), AlphaFold DB

## FAQ

### How accurate is P2Rank?

  In its original paper P2Rank outperformed Fpocket, SiteHound, MetaPocket 2.0 and DeepSite, ([Krivák & Hoksza, 2018](https://doi.org/10.1186/s13321-018-0285-8)), which reports **6.8 ± 0.2 s** for a single protein and under a second only when amortised across a dataset. On **predicted** structures there is one independent figure: on 688 paired PDB/AlphaFold2 structures of the same proteins, top-1 DCA success was **0.81 on both** — unchanged — using this same `alphafold` config ([Carbery et al., 2024](https://doi.org/10.1186/s13321-024-00821-4)). But that set is unusually accurate: only 1.6% of its AlphaFold models exceed 2 Å backbone RMSD, against over 50% for CASP14 free-modelling targets. When the authors deliberately degraded structures, success fell to **~60% at 2 Å RMSD and ~40% at 4 Å**, with up to 15% lost at just 1 Å — P2Rank uses an all-atom representation, so side-chain error costs it where a backbone-only method is unaffected. **Nothing is published for ESMFold input.** See [how P2Rank results compare to the bench](/docs/p2rank/translatability).

### What inputs are needed?

  A PDB structure provided as content, a PDB ID from RCSB, or an S3 URI from a previous job.

### What druggability classes are reported?

  Druggable, intermediate, difficult, and undruggable. The class is a platform heuristic built from the P2Rank score and pocket residue composition, not a P2Rank output.

## Read next
