CovaSyn
All Articles
Guide8 min readJuly 15, 2026

Solvent Selection Under ICH Q3C: A Data Question

Solvent selection under ICH Q3C explained: what Class 1, 2 and 3 mean, the ppm limits, and how predicted solubility narrows the candidate list before lab.

OK

Oliver Kraft

CovaSyn

Solvent Selection Under ICH Q3C: A Data Question

Solvent choice looks like a chemistry decision and gets made like one: what dissolves the compound, what the last project used, what is in the drum store. Then the residual solvent spec arrives, and a Class 2 solvent that worked beautifully in the lab becomes a control strategy problem for the rest of the product's life. The cheaper order is to filter on ICH Q3C class first and let solubility rank what survives.

What ICH Q3C actually says

ICH Q3C(R8) sorts solvents into three classes by toxicological risk, not by how well they work. The class determines whether you may use the solvent at all, and if so, how much may remain in the drug substance or product.

ClassMeaningLimit basisExamples
Class 1Solvents to be avoided. Known human carcinogens, strong suspects, or environmental hazardsIndividual concentration limits, very lowBenzene 2 ppm, carbon tetrachloride 4 ppm, 1,2-dichloroethane 5 ppm, 1,1-dichloroethene 8 ppm, 1,1,1-trichloroethane 1500 ppm
Class 2Solvents to be limited. Non-genotoxic animal carcinogens or agents of irreversible toxicityPDE-derived, solvent-specificMethanol PDE 30 mg/day (3000 ppm), toluene 8.9 mg/day (890 ppm), dichloromethane 6.0 mg/day (600 ppm), THF 7.2 mg/day (720 ppm), acetonitrile 4.1 mg/day (410 ppm)
Class 3Low toxic potential. No health-based exposure limit needed at normal use levels50 mg/day, i.e. 5000 ppm, without further justificationEthanol, isopropanol (IPA), acetone, ethyl acetate, heptane, 2-MeTHF, MTBE

Two things practitioners misread.

The ppm figures are derived, not primary.

For Class 2, the guideline gives a PDE in mg/day. Option 1 converts it to ppm by assuming a maximum daily dose of 10 g of product: concentration (ppm) = 1000 x PDE / dose in g. If your actual daily dose is lower, Option 2 lets you justify a higher concentration, because the patient's exposure is what the PDE governs. A 200 mg tablet does not need the 10 g assumption.

Class 3 is not "unregulated".

It means no health-based limit is required below 50 mg/day. You still need a validated method, a specification, and a justification if you exceed that.

The practical consequence is simple. A Class 3 solvent costs you a routine GC test against a generous limit. A Class 2 solvent costs you a tighter limit, a purge argument, and more scrutiny at every change.

Turning that into a screen

So the selection question is: among the solvents I am allowed to use freely, which ones actually dissolve the compound? That is a data question, and you can answer a first pass of it before booking any lab time.

We ran this for ibuprofen (SMILES CC(C)Cc1ccc(C(C)C(=O)O)cc1) at 298.15 K using covasolve_predict, one call per solvent.

SolventICH Q3C classPredicted solubility (mg/mL)Model confidence
IPA36550.999
Ethanol36170.987
Acetone35390.990
Ethyl acetate35100.988
2-MeTHF34920.987
Toluene2911.000
Heptane3780.976
Water30.0230.982

All values are covasolve_predict output at 25 C, converted from log S (mol/L) using MW 206.28. All returned applicability_domain: true. These are model predictions, not measurements.

The shape of the answer is what matters. There is a plateau of Class 3 solvents between roughly 490 and 655 mg/mL, then a cliff to toluene and heptane, then water three orders of magnitude below everything. If the process needs a high-loading dissolution step, the plateau is your working set and none of its members forces you into Class 2. If the process needs an antisolvent, heptane and water are the candidates, and heptane is Class 3.

Bar chart of predicted ibuprofen solubility for ICH Q3C solvent selection: a Class 3 plateau from 492 to 655 mg/mL, toluene 91, heptane 78 and water 0.023 mg/mL.
Read the cliff, not the ranking. 655 vs 617 mg/mL is inside model uncertainty; 655 vs 78 is a real decision. Nothing in the plateau forces you into a Class 2 solvent. Source: Computed with covasolve_predict on ibuprofen (SMILES CC(C)Cc1ccc(C(C)C(=O)O)cc1) at 298.15 K, converted from log S (mol/L) using MW 206.28.

Note that the plateau members are within about 1.3x of each other. That gap is smaller than the honest uncertainty of any solubility model. Treating a 655 vs 617 difference as a decision is over-reading the number. Treating a 655 vs 78 difference as a decision is not.

Adding cost and class to the ranking

covasolve_recommend with scenario="green_chemistry" returns the same solubility predictions with a cost per litre, the ICH class, boiling point, and a composite score. The top of the ibuprofen list, verbatim from the tool:

RankSolventScorelog SICH classCost/L
1IPA1.100.5023$0.55
2Ethanol1.070.4763$0.60
3Methanol1.070.4682$0.50
4Acetone1.020.4173$0.40
5Ethyl acetate0.990.3933$0.45

IPA wins on the combination: Class 3, high solubility, $0.55/L, boiling point 355.65 K so it strips without cooking the product. That is a defensible starting point for a dissolution or recrystallisation solvent, available before the first bench experiment rather than after the fourth.

Read the caveat in rank 3.

Methanol is ICH Class 2 and it still lands third. The green_chemistry scenario is a preference weighting, not a compliance filter. Class 1 entries also remain in the returned list further down (1,2-dichloroethane appears at score 0.76). The ranking tells you what is attractive. It does not tell you what is permitted. You apply the class filter; the tool does not apply it for you.

Honest limits

Predictions, not measurements.

Every solubility number above is a model output on ibuprofen. covasolve_predict returns a 95% confidence interval and an applicability-domain flag, and you should read both. Heptane is the instructive case: the point estimate is 78 mg/mL, but the returned 95% interval on log S is [-0.703, -0.140], which back-converts to roughly 41 to 149 mg/mL. That is a factor of 3.6 between the bounds. The toluene call, by contrast, returned confidence 0.99997 with an interval spanning less than 0.001 log units. An interval that tight is a statement about the model's internal agreement, not about agreement with a flask. Do not quote it as accuracy.

The class field is a lookup table, not the guideline itself.

Ours is audited against ICH Q3C(R8) Appendix 1 and every entry is pinned by a regression test, so 1,4-dioxane comes back Class 2, which is what the annex says (PDE 3.8 mg/day, 380 ppm). Two solvents deliberately return no class at all: trifluoroacetic acid and diisopropyl ether sit in Q3C Table 4, solvents for which no adequate toxicological data was found, and an empty field is the honest answer there rather than an invented class. It is still a table, and tables age as the guideline is revised. Verify the class of your chosen solvent against the current Q3C annex before it goes into a document, and remember that the tool ranks; it does not filter.

What the model does not model.

Polymorph and solvate formation, metastable zone width, impurity rejection, water content in the incoming solvent, ICH Q3D elemental impurity carryover, flammability and plant compatibility, and whether your existing vessel train is even rated for the solvent. A solubility prediction narrows the shortlist. Crystallisation development still happens in glass.

Q3C is not the only constraint.

A Class 3 solvent can still be the wrong choice for occupational exposure, waste treatment, ATEX classification, or supply security. Class 3 means low toxicological concern in the residue, nothing more.

A workable order of operations

1. Filter on ICH Q3C class. Drop Class 1 unless there is no alternative and you are prepared to defend it. Treat Class 2 as a cost you must justify. 2. Predict solubility across the surviving Class 3 set in one batch (covasolve_predict, or covasolve_recommend for a ranked view with cost and boiling point). 3. Look for the cliff, not the ranking. Groups that differ by less than about 2x are one group. 4. Sanity-check boiling point and the intended unit operation. Removal matters as much as dissolution. 5. Confirm the top two or three experimentally. The model chose which experiments to run; it did not run them. 6. Set the residual solvent limit from the actual maximum daily dose, using Option 2 where the 10 g assumption is unnecessarily punitive.

Frequently asked questions

What is the difference between ICH Q3C Class 1, 2 and 3 solvents?

Class 1 solvents should be avoided: they are known or strongly suspected human carcinogens or environmental hazards, with individual limits such as benzene at 2 ppm and carbon tetrachloride at 4 ppm. Class 2 solvents must be limited to a solvent-specific permitted daily exposure, for example toluene at 8.9 mg/day. Class 3 solvents have low toxic potential and need no health-based limit below 50 mg/day, equivalent to 5000 ppm.

How is the ppm limit for a Class 2 solvent calculated?

ICH Q3C gives a permitted daily exposure (PDE) in mg/day. Option 1 converts it to a concentration by assuming a maximum daily dose of 10 g of product: concentration in ppm equals 1000 times the PDE in mg/day, divided by the dose in grams. Option 2 lets you use the actual maximum daily dose instead, which usually permits a higher concentration because the PDE governs patient exposure, not concentration.

Can a model choose a manufacturing solvent for me?

No. A solubility model narrows a long list to a short one and tells you where the meaningful differences are. In the ibuprofen example, covasolve_predict separates a Class 3 plateau near 500 to 655 mg/mL from toluene at 91 and heptane at 78. Which of the plateau solvents survives crystallisation, polymorph control, drying and plant fit is decided experimentally.

Which solvent did the tool rank best for ibuprofen, and why?

covasolve_recommend with the green chemistry scenario ranked IPA first, score 1.10, on predicted log S 0.502 (about 655 mg/mL), ICH Class 3, and $0.55 per litre. Ethanol followed at 1.07 and acetone at 1.02. Methanol also scored 1.07 despite being Class 2, which shows the ranking is a preference weighting and not a regulatory filter.

Are Class 3 solvents exempt from residual solvent testing?

No. Class 3 means no health-based exposure limit is required below 50 mg/day, which corresponds to 5000 ppm at a 10 g daily dose. You still need a suitable analytical method, a specification, and a justification if levels exceed 50 mg/day. Loss on drying may be acceptable as the test in some cases, which is one practical reason Class 3 solvents are cheaper to live with.

How reliable are predicted solubility values?

They are estimates with quantified uncertainty, and the uncertainty varies by solvent. For ibuprofen in heptane, the 95% interval on log S spans roughly 41 to 149 mg/mL, a factor of 3.6. For solvents where the model is confident, the interval is far narrower, but a narrow interval reflects internal model agreement, not verified agreement with experiment. Use predictions to rank and triage, and measure before committing.

Related reading

Run a solvent shortlist for your own compound on the CovaSyn free tier and see the class, the cost and the confidence interval next to every prediction. - Green Solvent Substitution Without Losing Solubility

Tools for this topic

Use these in your AI agent right away.

  • CovasolveSolubility, pH, crystallization, antisolvent.
Solvent Selection Under ICH Q3C: A Data Question | CovaSyn