AiZynthFinder troubleshooting
Fix empty results, early stops, unrealistic disconnections, and timeouts.
This page helps you diagnose the common AiZynthFinder job problems — no purchasable routes, searches that stop early, unrealistic disconnections, fast failures, and unwanted bond breaks — with the stock, policy, search-algorithm, and v4.0 filter settings to adjust for each. Most issues come down to two levers: the stocks you selected (which decide what counts as purchasable) and the search configuration (which decides how hard it looks).
Common issues
- No purchasable routes: ensure at least one stock is selected and up to date; try expanding stock or allowing one more search step. Note: AiZynthFinder typically achieves 80-86% success rates for finding purchasable routes, so some challenging molecules may require parameter adjustments.
- Search stops early: depth/iteration limits may be too low; modestly increase them and rerun. Consider switching search algorithms (e.g., from Greedy Best First to MCTS) for more thorough exploration.
- Unrealistic disconnections: tighten template policy or reduce breadth; review template IDs in the log. In v4.0+, enable filter policies to automatically reject chemically implausible reactions.
- Job fails fast: check log for invalid SMILES or missing stock configuration; correct and resubmit.
- Unwanted bond disconnections: use bonds-to-freeze constraints (v4.0+) to protect specific structural motifs from being disconnected during retrosynthesis.
Debug checklist
- Confirm stock set, policy, search algorithm, and search limits in job metadata.
- Compare target SMILES against previous successful runs to rule out sanitation differences.
- If results are still empty, run with a slightly larger breadth and depth, then prune manually.
- Try alternative search algorithms: MCTS (default), Nested Monte Carlo (deeper exploration), or Greedy Best First (faster screening).
- For v4.0+, check if filter policies are rejecting valid reactions; temporarily disable to diagnose.
- Share the job ID and target with support if repeated failures occur.
No routes vs. all routes non-purchasable
These two outcomes look similar but have different fixes:
- No routes found at all: the search could not disconnect the target within its constraints. Expand stock sources, loosen the policy, or increase search depth/limits; verify the input SMILES is valid.
- Routes found but none purchasable: the target is synthetically reachable, but at least one intermediate is not in your selected stocks. Add more comprehensive stock sources, or accept that a key intermediate needs custom synthesis. See outputs & interpretation.
Search timeout or slow runs
- Search time grows steeply with molecular size and complexity — a typical run is 5–30 minutes.
- Reduce search breadth, or switch from a heavier policy (
uspto_500k) to a lighter one (uspto_50k) for faster screening. - Use
greedy_best_firstfor quick passes over many molecules; reserve MCTS or nested MCTS for the targets that warrant deeper exploration. See configuration.
Prevent repeats
- Keep a small validation target set to benchmark configuration changes.
- Document stock and policy choices in job notes for reproducibility.
- Periodically refresh stocks to align with vendor availability.
Read next
Was this page helpful?
AiZynthFinder route review guide
Triage AiZynthFinder routes on is_purchasable and num_steps before score, spot protecting-group-heavy paths, and compare only runs with matching stocks.
Cheminformatics overview
Turn SMILES into descriptors with RDKit, standardize structures, and classify or fingerprint reactions before the heavier models run.