---
title: DiffDock quickstart
description: Run DiffDock-L in six steps — pick a protein, add SMILES or an SDF, keep 10 poses and 20 diffusion steps, and download ranked pose files in 5-15 minutes.
---

You want to predict how a ligand sits in a protein's pocket. [DiffDock](/docs/diffdock) does it in a few guided steps — set your protein target, add your ligand(s), and submit — no scoring function to tune, and no binding site to define (the platform always docks against the whole protein).

## Quick start with .bloom* platform

DiffDock is a diffusion-based molecular docking method. The .bloom* platform uses **DiffDock-L**, the latest version with state-of-the-art success rates on standard benchmarks. Unlike traditional docking methods that rely on scoring function optimization, DiffDock generates multiple binding poses per ligand through a learned diffusion process over the space of ligand poses. The model is released under the MIT license.

## Step-by-step docking workflow

### 1. Access the DiffDock tool

Navigate to the **Molecular Docking** tool in .bloom*'s interactive workspace.
The tool provides a guided interface for all input methods and validation.

### 2. Set up your protein target

**Option A: PDB ID (fastest)**

- Click **PDB ID** in the protein input section
- Type a PDB code (e.g., "6LU7" for SARS-CoV-2 main protease)
- .bloom* automatically loads and previews the structure
- Review the 3D preview to confirm the correct protein

**Option B: Upload custom structure**

- Click **Upload PDB File** in the protein input section
- Select your PDB or mmCIF file (supports .gz compression)
- .bloom* validates the format and loads a 3D preview
- Use the viewer to inspect the structure before proceeding

**Option C: From previous job**

- Click **From Previous Job** in the protein input section
- Select a completed job that produced protein structures (e.g., ESMFold
  results)
- If the job output contains multiple files, choose the specific PDB file
- .bloom* extracts and previews the selected structure

### 3. Specify your ligands

**Option A: Direct SMILES entry**

- Click **SMILES String** in the ligand input section
- Enter your SMILES string (e.g., "CC(=O)Oc1ccccc1C(=O)O" for aspirin)
- For multiple ligands, enter each SMILES on a new line
- .bloom* validates syntax and shows molecular previews

**Option B: Upload compound file**

- Click **Upload SDF File** or **Upload SMILES/CSV File**
- Select your compound file from your computer
- For CSV files, ensure SMILES are in the first column
- .bloom* parses the file and shows the number of compounds detected

**Option C: From chemistry tools**

- Click **From Previous Job** in the ligand input section
- Select outputs from AiZynthFinder, DeepPurpose, or other generative chemistry
  tools
- Choose specific compounds or use all generated molecules
- .bloom* handles format conversion automatically

### 4. Configure job settings

**Basic settings (recommended for first runs):**

- Leave **Job Name** blank for automatic naming, or enter a descriptive name
- Keep default parameters (10 poses, 20 diffusion steps)

**Advanced settings (via gear icon):**

- Increase **Number of Poses** (up to 40) for virtual screening
- Adjust **Diffusion Steps** higher (up to 40) for better quality (slower)

### 5. Submit and monitor the job

- Click **Run Molecular Docking** to start the job
- .bloom* shows real-time progress through diffusion phases
- Typical jobs complete in 5-15 minutes depending on protein size
- Receive notifications when complete (if enabled)

### 6. Review and download results

**View results in .bloom*:**

- Poses load automatically in the 3D viewer
- Compare different poses side-by-side
- Check confidence scores and rankings
- Export images or share results

**Download data:**

- Click **Download** to get results as ZIP archive
- Contains: `results.json`, individual pose PDB/SDF files
- Use for further analysis in external tools

## Common quick-start scenarios

### Virtual screening campaign

1. Use PDB ID for protein target
2. Upload CSV file with 100+ SMILES strings
3. Set poses to 20-30 per compound
4. Submit and let .bloom* process the library

### Hit optimization

1. Upload protein structure from previous work
2. Enter SMILES for compound series
3. Set higher pose count (30) for diversity
4. Compare poses across analogs

### Target validation

1. Use UniProt ID to fetch protein sequence
2. Enter known ligand SMILES
3. Compare predicted vs. experimental binding modes

## Quality control checklist

### Protein preparation

- [ ] Structure is complete (no missing backbone atoms)
- [ ] Appropriate protonation state
- [ ] Relevant chains only (remove unnecessary domains)

### Ligand preparation

- [ ] Valid SMILES syntax (use external validators if unsure)
- [ ] Reasonable molecular weight (&lt;1000 Da for typical screening)
- [ ] No unusual elements or query atoms
- [ ] Correct formal charges and stereochemistry

### Job configuration

- [ ] Appropriate number of poses for your use case
- [ ] Realistic runtime expectations
- [ ] Sufficient computational resources allocated

## Troubleshooting common issues

### Job fails immediately

- Check protein file format (valid PDB/mmCIF)
- Verify ligand SMILES syntax

### No poses generated

- Check for protein structure issues (missing atoms, invalid chains)
- Verify the ligand SMILES parses to a reasonable 3D conformer

### Poor pose quality

- Increase diffusion steps (`inference_steps`, up to 40) in advanced settings
- Consider protein preparation (protonation, cleaning)

### Slow performance

- Reduce number of poses requested
- Split large batches into smaller jobs

## Next steps after docking

**Pose validation:**

- Run molecular dynamics simulations
- Calculate binding free energies (MM/GBSA)
- Analyze protein-ligand interactions

**Compound optimization:**

- Use poses as input for generative chemistry (DeepPurpose)
- Design focused libraries around best poses
- Optimize synthetic accessibility (AiZynthFinder)

**Further analysis:**

- Export to visualization tools (PyMOL, Chimera)
- Share results with collaborators
- Integrate into larger drug discovery workflows

## Read next
